- 积分
- 6
- 注册时间
- 2008-9-25
- 仿真币
-
- 最后登录
- 1970-1-1
|
tree[set_, m_] :=
Module[{\[Theta], mz, my, temp, k, i, p1, p2, n, a, b, c, d, e, f},
\[Theta] = Pi/6;
mz = {{Cos[\[Theta]], -Sin[\[Theta]]}, {Sin[\[Theta]],
Cos[\[Theta]]}};
my = {{Cos[-\[Theta]], -Sin[-\[Theta]]}, {Sin[-\[Theta]],
Cos[-\[Theta]]}};;
temp = set;
p1 = {};(*存放树干*)
p2 = {};(*存放树枝*)
For[k = 1, k <= m, k++,
n = Length[temp];
p2 = {};
For[i = 1, i <= n, i++,
L = Part[temp, i];
a = Part[L, 2];
b = Part[L, 1];
c = 1/3*a + 2/3*b;
d = c + mz.(a - b)*(1/3);
e = c + my.(a - b)*(1/3);
AppendTo[p1, {Brown, Thickness[0.035/k], Line[{b, c}]}];
AppendTo[p2, {c, a}];
AppendTo[p2, {c, d}];
AppendTo[p2, {c, e}];
];
temp = p2;
];
Show[Graphics[{
p1,
{RGBColor[0.109804, 0.423529, 0.172549], Line[p2]}
}]
]
];
tree[{{{0., 0.}, {0., 1.}}}, 7] |
|