       Re: Simple fractal

• To: mathgroup at smc.vnet.net
• Subject: [mg121807] Re: Simple fractal
• From: Ulrich Arndt <ulrich.arndt at data2knowledge.de>
• Date: Mon, 3 Oct 2011 04:22:27 -0400 (EDT)
• Delivered-to: l-mathgroup@mail-archive0.wolfram.com
• References: <201110020636.CAA28033@smc.vnet.net>

```Hi,

might be not the most elegant solution but will produce some nice pictures.

Clear[fPoint, fGraph]
maxit = 10;
fPoint[{x_?NumericQ, y_?NumericQ}, sides_Integer, scale_,
level_?IntegerQ] :=
Table[{x, y} +
scale^level*{Cos[i*360/sides*Degree],
Sin[i*360/sides*Degree]}, {i, 1, sides + 1}];
fGraph[sides_, scale_, n_, m_] := Module[{result},
result = ConstantArray[0, m];
For[c = 1, c <= n, c++,
Which[c == 1,
result[[c]] = {fPoint[{0, 0}, sides, scale, (c - 1)]};,
True,
result[[c]] =
fPoint[#, sides, scale, (c - 1)] & /@
Union[Flatten[result[[c - 1]], 1]];
]
];
Show[Graphics[Line[#]] & /@ result[[1 ;; n]]]
];

Manipulate[
fGraph[sides, scale, n, maxit],
{{n, 5}, 1, maxit, 1}, {{scale, 1/2}, 0.1, 0.9}, {{sides, 3}, 3, 10,
1}]

Ulrich

Am 02.10.2011 um 08:36 schrieb Tom De Vries:

> I am trying to create a very simple fractal, but I am not having any success.
>
> I'd like to learn how to do this recursively, and hoping someone can
> give me a bit of a push in the right direction.
>
> It's a simple triangle with triangles at each corner, with triangles
> at each corner, etc.
>
> Below,  a simple "level 1" graphic.
>
> scale = 0.5;
>
> list1 = Table[{0, 0} + {Cos[i*120*Degree], Sin[i*120*Degree]}, {i, 1,
> sides + 1}];
>
> list2 = (Table[#1 + scale*{Cos[i*120*Degree], Sin[i*120*Degree]}, {i,
> 1, sides + 1}] & ) /@  list1;
>
> Graphics[{Line[list1], Line[list2]}]
>
>
> Ideally I'd like to have a Manipulate with a slider for the level of
> the fractal,  the scale applied to each level, and the distance each
> corner triangle is from the centre triangle.
>
> Sorry,  I know this is simple programming,  but I don't have any ideas
> how to start.
>
> Tom De Vries
>

--
Ulrich Arndt
Mobile: +49 172 287 6630
ulrich.arndt at data2knowledge.de
www.data2knowledge.de

data2knowledge GmbH
Fahrenheitstr. 1
D-28359 Bremen

Gesch=E4ftsf=FChrung: Ulrich Arndt
Sitz der Gesellschaft: Bremen, Amtsgericht Bremen, HRB 26480 HB

```

• References:
• Prev by Date: Re: A fast way to compare two vectors
• Next by Date: Re: DynamicModule Pure Function
• Previous by thread: Simple fractal
• Next by thread: Re: Simple fractal