Umschreiben (L-Systeme)
Der Text wird mehrmals umgeschrieben, dann wird jeder Buchstabe zu einem Strich oder einer Drehung.
Die Regel
Ein L-System beginnt mit einer Zeichenkette, dem Axiom, und einer Regel, die sagt, wodurch jeder Buchstabe ersetzt wird. Die Regel wird auf alle Buchstaben gleichzeitig angewendet, dann noch einmal auf das Ergebnis. Jede Runde ist eine Generation.
F → F-F++F-F
Dann liest eine Schildkröte die Zeichenkette. F heißt: vorwärts gehen und dabei einen Strich ziehen. + dreht nach links um einen festen Winkel, - dreht nach rechts um denselben Winkel. Die eckigen Klammern [ und ] legen die Position beiseite und holen sie wieder zurück: So entstehen Äste. Die anderen Buchstaben, etwa X, zeichnen nichts, sie dienen nur dem Umschreiben.
Hier ist das Axiom F++F++F, ein Dreieck, und der Winkel beträgt 60°. Bei jeder Generation wird jeder Strich durch vier kleinere Striche ersetzt. Der Text wächst sehr schnell, aber die Zeichnung behält dasselbe Aussehen.
Sie sind dran
Wählen Sie eine Regel und erhöhen Sie dann die Generationen eine nach der anderen. Die Zeichenkette erscheint neben der Zeichnung: Wird sie zu lang, wird nur ihr Anfang gezeigt, mit ihrer wirklichen Länge direkt darunter. Die Schildkröte läuft sie ab, und die Zeichnung wird bei jeder Generation neu eingepasst, damit sie in den Rahmen passt.
Der Drache und die Pflanze haben ihre eigene Obergrenze an Generationen, damit die Seite flüssig bleibt.
Umgeschriebene Zeichenkette
F++F++F
7 Zeichen
F → F-F++F-F
Die Zeichnung oben ist ein didaktisches Schema, nicht das Kunstwerk: Sie zeigt die Regel, gibt aber weder die Farben noch die Punktgröße noch die Körnung des Drucks wieder.
Was sich von Algorithmus zu Algorithmus ändert
Fast alles steckt in den Daten: dem Axiom, der Regel und dem Winkel. Die Maschine, die die Zeichenkette liest, ist für fast alle dieselbe.
- Drachenkurve
- Der Heighway-Drache: ein Papierstreifen, immer wieder in der Mitte gefaltet und dann im rechten Winkel aufgefaltet. Das Werk schreibt keine Ersetzungsregel: Es baut die Folge der Abbiegungen, links oder rechts, direkt durch Papierfalten auf. Die Skizze oben nimmt eine Regel, die sich leichter zeigen lässt.
- Terdragon
- Der ternäre Drache, in einem einzigen Zug gezeichnet. Die Regel ist F → F+F-F, mit Drehungen von 120°.
- Lévy-C-Kurve
- Die Lévy-C-Kurve. Jeder Strich wird durch zwei Striche im rechten Winkel ersetzt: F → +F--F+, mit Drehungen von 45°.
- Koch-Schneeflocke
- Die Koch-Schneeflocke: ein Dreieck (F++F++F), dessen Seiten sich nach F → F-F++F-F verzacken, mit Drehungen von 60°. Die Kurve ist geschlossen.
- Quadratische Koch-Kurve
- Die Variante mit rechten Winkeln: F → F+F-F-F+F, mit Drehungen von 90°. Jeder Strich wird zu einer Zinne. Anders als die Schneeflocke ist die Kurve offen.
- Sierpiński-Pfeilspitzenkurve
- Die Sierpiński-Pfeilspitze: ein einziger Zug, der am Ende das Sierpiński-Dreieck zeichnet. Zwei Buchstaben, F und G, zeichnen beide: F → G-F-G und G → F+G+F, mit Drehungen von 60°.
- Sierpiński (L-System)
- Das Sierpiński-Dreieck auf anderem Weg: Das Axiom ist F-G-G, die Regeln sind F → F-G+F+G-F und G → GG, mit Drehungen von 120°.
- Gosper-Schneeflocke
- Die Gosper-Flocke, oder Flowsnake: eine sechseckige Kurve, die die Fläche füllt. Zwei Buchstaben zeichnen, F → F-G--G+F++FF+G- und G → +F-GG--G-F++F+G, mit Drehungen von 60°.
- Hilbert-Kurve
- Die Hilbert-Kurve, die das Quadrat füllt. Die Buchstaben X und Y zeichnen nicht, sie dienen nur dem Umschreiben: X → +YF-XFX-FY+ und Y → -XF+YFY+FX-, mit Drehungen von 90°.
- Peano-Kurve
- Die Peano-Kurve, eine weitere Kurve, die das Quadrat füllt. Die Zeichenkette wird bei jeder Generation mit neun multipliziert, bei Hilbert mit vier: Man kann also nicht so weit gehen. Drehungen von 90°, Regeln mit X und Y geschrieben.
- Moore-Kurve
- Die Moore-Kurve, die geschlossene Fassung der Hilbert-Kurve: Das Axiom LFL+F+LFL setzt vier Hilbert-Stücke zu einer Schleife zusammen. Die Buchstaben L und R zeichnen nicht, Drehungen von 90°.
- Fraktale Pflanze
- Lindenmayers Pflanze, die einzige der Familie mit Ästen: Die eckigen Klammern [ und ] legen die Position beiseite. X → F+[[X]-X]-F[-FX]+X und F → FF, mit Drehungen von 25°. Sie ist auch die einzige, deren Winkel bei jeder Drehung leicht zufällig gezogen sein kann.
Was der Zufall entscheidet
Für jedes Werk lost das Programm diese Einstellungen aus, innerhalb vorher festgelegter Grenzen.
- Anzahl der Umschreibungen Drachenkurve von 11 bis 16
- Drehwinkel (°) Drachenkurve von 88 bis 92
- Winkel (°) Koch-Schneeflocke von 58 bis 62
Die Algorithmen dieser Familie
- Drachenkurve
- Terdragon
- Lévy-C-Kurve
- Koch-Schneeflocke
- Quadratische Koch-Kurve
- Sierpiński-Pfeilspitzenkurve
- Sierpiński (L-System)
- Gosper-Schneeflocke
- Hilbert-Kurve
- Peano-Kurve
- Moore-Kurve
- Fraktale Pflanze