Sierpinski triangle/Graphical: Difference between revisions

Content deleted Content added
Objeck (talk | contribs)
Line 1,254: Line 1,254:


Show[Graphics[{Opacity[1], Black, Map[Polygon, Sierpinski[8], 1]}, AspectRatio -> 1]]</lang>
Show[Graphics[{Opacity[1], Black, Map[Polygon, Sierpinski[8], 1]}, AspectRatio -> 1]]</lang>
Another faster version
<lang Mathematica>cf=Compile[{{A,_Real,2}},
With[{a=A[[1]],b=A[[2]],c=A[[3]]},
With[{ab=(a+b)/2,bc=(b+c)/2,ca=(a+c)/2},
{{a,ab,ca},{ab,b,bc},{ca,bc,c}}]],
RuntimeAttributes->{Listable}
];


n=3;
<lang Mathematica>sierpinski[v_, 0] := Polygon@v;
pts=Flatten[Nest[cf,N@{{{0,0},{1,0},{1/2,√3/2}}},n],n];
sierpinski[v_, n_] := sierpinski[#, n - 1] & /@ (Mean /@ # & /@ v~Tuples~2~Partition~3);
Graphics@sierpinski[N@{{0, 0}, {1, 0}, {.5, .8}}, 3]</lang>
Graphics[Polygon/@pts]</lang>

<lang Mathematica>sierpinski = Map[Mean, Partition[Tuples[#, 2], 3], {2}] &;
p = Nest[Join @@ sierpinski /@ # &, {{{0, 0}, {1, 0}, {.5, .8}}}, 3];
Graphics[Polygon@p]</lang>


[[File:MmaSierpinski.png]]
[[File:MmaSierpinski.png]]