baumZF[stammVektor_, zweigWinkelLinks_,stauchungLinks_,
zweigWinkelRechts_,stauchungRechts_,
stammDicke_,stauchungDicke_,
iterationsTiefe_, options___] :=
Module[{drehe,zweigZ, macheZweigeZ,alleZweigeZ},
drehe[vec_,theta_]:={{Cos[theta],-Sin[theta]},{Sin[theta],Cos[theta]}}.vec;
zweigZ[Line[{start_,ende_}]]:= {
Line[{ende, ende+stauchungLinks
drehe[ende-start,zweigWinkelLinks Random[Real,{0.5,1.5}]]}],
Line[{ende,ende+stauchungRechts
drehe[ende-start,zweigWinkelRechts Random[Real,{0.5,1.5}]]}] };
zweigZ[Thickness[dicke_]] := Thickness [ stauchungDicke dicke] ;
zweigZ[RGBColor[r_,g_,b_]] :=
Module[ {}, zweigFarbe= RotateLeft[zweigFarbe];
First[zweigFarbe] ];
macheZweigeZ[äste_]:=Flatten[ Map[ zweigZ,äste]];
alleZweigeZ=NestList[ macheZweigeZ,{
Thickness[ stammDicke], First[zweigFarbe],
Line[{{0,0},stammVektor}]},iterationsTiefe];
Show[Graphics[alleZweigeZ ], options, AspectRatio->Automatic,PlotRange->All]
]
Mathematica-Datei auf Anfrage
|