MathePrisma Logo

Lindenmayersysteme

Lindenmayersysteme

L-Systeme und Krötengrafik

Uns fehlen noch Produktionsregeln. Diese sollen ja angeben, wie man aus einem Objekt, also einer Zeichenfolge aus F,+,, eine neues solches Objekt erhält.

  • Welches der Zeichen F,+, ergibt eine Linie?  
  • Für welche Zeichen brauchen wir also eine Ersetzungsvorschrift?  

ein Beispiel

Die Produktionsregel heißt F \(\Rightarrow\) F+FF+F

  • F wird also ersetzt durch F+FF+F
  • Wendet man die Regel auf F+FF+F nochmals an, so ergibt sich (jedes F wird ersetzt):
    F+FF+F+F+FF+FF+FF+F+F+FF+FF+FF+F
  • usw.
Als Krötengrafik sieht das dann so aus:

die berühmte Kochsche Kurve
α = 60o
F \(\Rightarrow\)F+FF+F



Dank

linker Mausklick: nächster Ersetzungsschritt wird durchgeführt
rechter Mausklick: letzter Ersetzungsschritt wird zurückgenommen


Skalierung

Hast Du es bemerkt? Bei Einführung der Krötengrafik sagten wir: Jedes F wird als Strecke einer festen Länge d interpretiert. Tatsächlich verkleinern wir d aber nach jedem Ersetzungsschritt, damit die Bilder nicht immer größer werden.

L-System für die Kochsche Kurve

Für die Kochsche Kurve haben wir also das folgende L-System:

  • Die Zeichen sind F,+,
  • Einzige Produktionsregel ist

       F \(\Rightarrow\) F+FF+F

  • Start ist F

Noch schöner wird die Kochsche Kurve, wenn man sie schließt. Man erhält die Kochsche Schneeflocke.

Kochsche Schneeflocke

Dank

linker Mausklick: nächster Ersetzungsschritt wird durchgeführt
rechter Mausklick: letzter Ersetzungsschritt wird zurückgenommen

Die Schneeflocke erhält man mit derselben Produktionsregel wie die Kochsche Kurve. Man muss als Start statt F aber eine ganze Zeichenfolge wählen.
Welche?    
(Beachte: die Kröte blickt zum Start wieder nach Osten!)

Fazit

L-Systeme sollten so "mächtig" sein, dass möglichst viele interessante Krötengrafiken resultieren.
Bei der Schneeflocke haben wir dies erreicht durch

  • Zulassung einer ganzen Zeichenfolge als Start.
Noch viel weiterreichende Möglichkeiten eröffnen sich, wenn man
  • weitere Zeichen zulässt
und
  • für diese ebenfalls Produktionsregeln sowie
  • eine Interpretation als Anweisung für die Zeichenkröte
formuliert.

 

 

 

 

 

 

 

Du kannst Start und Regeln sogar selbst eingeben ("eigenes Beispiel" "übernehmen")

 

 

Wie sieht die Kochsche Kurve für α = 90o aus?

Hier kannst Du mit einem so erweiterten L-System experimentieren.

  • Zusätzliches Zeichen: X
  • Interpretation von X als Anweisung für die Kröte: nichts tun.

    Ein X wird von der Kröte also einfach ignoriert.


Und: Statt "\(\Rightarrow\)" steht in den Regeln "=".