Beiträge vom October, 2009

MaxScript zum zeichnen von L-Systemen

Sunday, 25. October 2009 22:23

koch3.png

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:

Thema: Projekte | Kommentare (0) | Autor: admin