大家看看这个程序运行的结果是否漂亮?
tree :=Module[{\, mz, my, temp, k, i, p1, p2, n, a, b, c, d, e, f},
\ = Pi/6;
mz = {{Cos[\], -Sin[\]}, {Sin[\],
Cos[\]}};
my = {{Cos[-\], -Sin[-\]}, {Sin[-\],
Cos[-\]}};;
temp = set;
p1 = {};(*存放树干*)
p2 = {};(*存放树枝*)
For[k = 1, k <= m, k++,
n = Length;
p2 = {};
For[i = 1, i <= n, i++,
L = Part;
a = Part;
b = Part;
c = 1/3*a + 2/3*b;
d = c + mz.(a - b)*(1/3);
e = c + my.(a - b)*(1/3);
AppendTo, Line[{b, c}]}];
AppendTo;
AppendTo;
AppendTo;
];
temp = p2;
];
Show[Graphics[{
p1,
{RGBColor, Line}
}]
]
];
tree[{{{0., 0.}, {0., 1.}}}, 7] 本帖最后由 HyperGroups 于 2012-12-27 15:39 编辑
多了一个封号,
漂亮,楼主再接再励,弄个三维的漂亮的树
怎么弄的啊,不明白。 本帖最后由 chyanog 于 2013-4-23 21:36 编辑
ctree = Compile[{{ls, _Real, 2}},
Module[{a, b},
{a, b} = ls;
{{a, (a + b)/2}, {(a + b)/2, b},
{(a + b)/2, {{1, 1}, {-1, 1}} . (b - a)/2.82 + (a + b)/2}, {(3*a + b)/4,
({{1.73, -1}, {1, 1.73}}.(a + 3 b) + {{.26, 1}, {-1, .26}}.(3 a + b))/8}}],
RuntimeAttributes -> {Listable}];
With[{p = Flatten, #] &},
Graphics[Line[#,
VertexColors -> (ColorData["AvocadoColors", #] & /@ #[])] & /@ Rescale]
]
http://mymma.googlecode.com/files/tree.gif
页:
[1]