Hilfeanleitung fuer lgrammar ----------------------------------------------------------------- 2D-Turtle-Symbole: F Turtle bewegt sich in Richtung des Orientierungsvektors (head) um eine Laenge nach vorn und zeichnet dabei eine Linie f Turtle bewegt sich in Richtung des Orientierungsvektors (head) um eine Laenge nach vorn, zeichnet aber keine Linie (vgl. 'F') + Turtle dreht sich um 'Angle' nach links - Turtle dreht sich um 'Angle' nach rechts [ Eine Verzweigung faengt an ] Eine Verzweigung wird beendet | Turtle dreht sich um die eigene Achse (d.h. um 180 Grad) ' Farbwert wird incrementiert ` Farbwert wird decrementiert ----------------------------------------------------------------- 3D-Turtle-Symbole: F Turtle bewegt sich in Richtung des Orientierungsvektors (head) um eine Laenge nach vorn und zeichnet dabei eine Linie. Innerhalb von '{ }' (siehe dort) keine Wirkung f Turtle bewegt sich in Richtung des Orientierungsvektors (head) um eine Laenge nach vorn, zeichnet aber keine Linie (vgl.'F'). Innerhalb von '{ }' (siehe dort) wird ein Eckpunkt registriert + Turtle dreht sich um aktuelle Achse 'up' mit Winkel 'Angle' - Turtle dreht sich um aktuelle Achse 'up' mit Winkel -'Angle' & Turtle dreht sich um aktuelle Achse 'left' mit Winkel 'Angle' ^ Turtle dreht sich um aktuelle Achse 'left' mit Winkel -'Angle' \ Turtle dreht sich um aktuelle Achse 'head' mit Winkel 'Angle' / Turtle dreht sich um aktuelle Achse 'head' mit Winkel -'Angle' | entspricht + oder - mit Winkel 180 [ Eine Verzweigung faengt an ] Eine Verzweigung wird beendet { Beginn eines gefuellten Polygons (z.B. ein Blatt) } Ende eines gefuellten Polygons (z.B. ein Blatt) . Innerhalb von '{ }' wird ein Polygoneckpunkt wird registriert G entspricht F, aber innerhalb von '{ }' ' Farbwert wird incrementiert ` Farbwert wird decrementiert ----------------------------------------------------------------- Grammatikeingabe: 1.Zeile: Eingabe des Axioms, d.h. Folge von Turtle-Symbolen. Abschluss mit weitere Zeilen: Eingabe der Produktionen. Produktionen haben die folgende Form: = mit .. 1 Turtle-Symbol .. mehrere Turtle-Symbole Grammatik wird mit Druecken des O.K.-Buttons uebernommen. Druecken auf den NEXT-Button erzeugt die jeweils naechste Ableitung der Grammatik. Als Grammatikzeichen koennen beliebige Buchstaben verwendet werden. Alle Zeichen OHNE eine festgelegte Grafikbedeutung (z.B. "F" hat eine, "E" hat keine) werden wie alle anderen in der Ableitung vewendet, jedoch erzeugen diese direkt keine Grafikausgabe. Die globalen Werte fuer LENGTH und ANGLE werden auf alle "F", "+", "-", usw. einer Grammatik angewendet. Um innerhalb einer Grammatik verschiedene Werte angeben zu koennen, duerfen diese einem Symbol in spitzen Klammern folgen, z.B. +<45> bezeichnet eine Drehung nach links um 45 Grad, unabhaengig vom globalen Wert fuer ANGLE F[500] bezeichnet eine Linie der Laenge 500, unabhaengig vom globalen Wert fuer LENGTH ----------------------------------------------------------------- Stochastische Grammatiken Bei der Verwendung von Wahrscheinlichkeitswerten beim Gleichheitssymbol einer Zuweisung entstehen stochastische Grammatiken. Hier sind mehrere Regeln fuer das gleiche Symbol erlaubt, jedoch muss die Summe der Wahrscheinlichkeiten fuer dieses Symbol 1 ergeben. Beispiel: F=<0.3> F+F F=<0.7> F-F ----------------------------------------------------------------- Literatur P. Prusinkiewicz, A. Lindenmayer: The SAlgorithmic Beauty of Plants Springer-Verlag, New York, 1990 Chr. Drabek Implementierung von L-Grammatiken zur Erzeugung von Graftalen Diplomarbeit Nr. 986, Univ. Stuttgart, Fakultaet Informatik, 1993 ----------------------------------------------------------------- Contact Christine Drabek Thomas Braunl Univ. Stuttgart IPVR Breitwiesenstr. 20-22, D-70565 Stuttgart, Germany