MaxScript zum zeichnen von L-Systemen
Sunday, 25. October 2009 22:23
MaxScript: lsystems1.txt
Das Script kann einfachere L-Systeme mit den Zeichenoperationen A,B,F, Rotationsoperatioinen y,p,r und einem Stack zeichnen.
Bevor drawLSystem aufgerufen wird, müssen erst die Produktion, das Axiom, die Startposition und die Startrichtung festgelegt werden.
Die fraktale Pflanze wie hier im Wiki beschrieben kann z.B. auf folgende Weise gezeichnet werden:
prod = #(#("X", "F-yr[[X]+ryX]+ryF[+ryFX]-ryX"), #("F", "FF"))
start="X"
lAngle = 25
startpos = [0,0,0]
startdir = [0,0,1]
drawLSystem prod start 3 startpos startdir lAngle 1
Bei der Produktion ist zu beachten, dass + und - nicht ganz dieselbe Funktion wie im Wiki haben. + Legt fest, dass die nächste Rotation mit positivem Winkel und - mit negativem Winkel durchgeführt wird. Die eigentliche Rotation geschieht mit y(=Yaw), p(=Pitch) oder r(=Roll).
Im Script sind bereits 4 L-Systeme drin:
- Sierpinski Triangle
- Koch Curve 2
- Koch Curve 3
Lässt sich auch in ein Polygon umwandeln: - Fraktal Plant
Thema: Projekte | Kommentare (0)


