Wie die Rekursion funktioniert
Das Sierpinski-Dreieck entsteht durch eine einfache Regel die sich selbst aufruft - das nennt man Rekursion.
Stufe 0: Zeichne ein gefülltes Dreieck mit drei Eckpunkten.
Stufe 1: Finde die Mittelpunkte aller drei Seiten. Verbinde sie. Das ergibt ein Dreieck in der Mitte. Entferne es (male es in der Hintergrundfarbe). Übrig bleiben 3 Dreiecke - oben, links unten, rechts unten.
Stufe 2: Mach das Gleiche mit jedem der 3 übrigen Dreiecke. Jedes verliert sein mittleres Viertel. Übrig bleiben 9 Dreiecke.
Stufe n: Wiederhole für alle Dreiecke. Nach n Stufen hast du 3^n Dreiecke.
| Stufe | Dreiecke | Seitenlänge | Gesamtfläche |
|---|---|---|---|
| 0 | 1 | 1 | 100% |
| 1 | 3 | 1/2 | 75% |
| 2 | 9 | 1/4 | 56,25% |
| 3 | 27 | 1/8 | 42,19% |
| 4 | 81 | 1/16 | 31,64% |
| 5 | 243 | 1/32 | 23,73% |
| 8 | 6.561 | 1/256 | 10,01% |
| ∞ | ∞ | 0 | 0% |
Das ist das Faszinierende: Nach unendlich vielen Stufen hat das Sierpinski-Dreieck die Fläche 0 - aber unendlich viele Punkte. Es ist mehr als eine Linie (Dimension 1) aber weniger als eine Fläche (Dimension 2).
Bei jeder Stufe entstehen 3 Kopien, jede um Faktor 2 verkleinert. Also D = log(3) / log(2) ≈ 1,585.
Der Algorithmus im Detail
Der Generator oben nutzt folgenden Algorithmus:
1. Zeichne ein gefülltes Dreieck mit den drei Eckpunkten (Spitze oben, links unten, rechts unten).
2. Finde die Mittelpunkte: Mittelpunkt von Seite AB ist ((Ax+Bx)/2, (Ay+By)/2). Das machst du für alle drei Seiten.
3. Die drei Mittelpunkte bilden ein inneres Dreieck. Fülle es mit der Hintergrundfarbe - das "entfernt" es visuell.
4. Jetzt hast du drei kleinere Dreiecke. Wiederhole Schritt 2-4 für jedes davon.
5. Stoppe bei der gewünschten Rekursionstiefe (hier maximal 8).
Andere Wege zum Sierpinski-Dreieck
Das Chaos-Spiel erzeugt das gleiche Ergebnis auf völlig andere Weise: Wähle einen zufälligen Punkt. Wähle zufällig eine der drei Ecken. Gehe zur Hälfte dorthin. Markiere den Punkt. Wiederhole tausende Male. Es entsteht ein Sierpinski-Dreieck - aus purem Zufall.
Auch das Pascalsche Dreieck enthält das Sierpinski-Muster: Male alle ungeraden Zahlen im Pascalschen Dreieck an. Das Ergebnis ist ein Sierpinski-Dreieck.
Häufige Fragen
Was ist ein Sierpinski-Dreieck?
Ein Sierpinski-Dreieck ist ein Fraktal, das entsteht, wenn du aus einem Dreieck immer wieder das mittlere Viertel entfernst. Nach unendlich vielen Schritten hat es die Fläche 0 aber eine fraktale Dimension von 1,585.
Wer hat das Sierpinski-Dreieck erfunden?
Der polnische Mathematiker Waclaw Sierpinski beschrieb es 1915. Das Muster tauchte aber schon Jahrhunderte früher in Kunst und Architektur auf - zum Beispiel in mittelalterlichen Bodenmosaiken.
Was bedeutet die Rekursionstiefe?
Die Rekursionstiefe (Stufe) sagt, wie oft die Unterteilung wiederholt wird. Stufe 0 ist ein einfaches Dreieck. Stufe 1 hat 3 Teildreiecke. Mit jeder Stufe verdreifacht sich die Anzahl. Je höher die Stufe, desto detaillierter das Fraktal.
Warum hat das Sierpinski-Dreieck die Dimension 1,585?
Bei jeder Stufe entstehen 3 Kopien, jede um den Faktor 2 verkleinert. Die fraktale Dimension ist log(3) / log(2) = 1,585. Das bedeutet: Es füllt mehr Raum als eine Linie (1) aber weniger als eine Fläche (2).
Ich habe gerade ein Sierpinski-Dreieck mit einem Generator gezeichnet und verstehe die Rekursion. Jetzt möchte ich es selbst programmieren. Erkläre mir Schritt für Schritt, wie ich das Sierpinski-Dreieck in JavaScript mit Canvas zeichne. Zeige mir den Code und erkläre jede Funktion. Dann zeige mir, wie ich es mit dem Chaos-Spiel-Algorithmus machen kann.
Erkläre mir 5 verschiedene Methoden, wie man ein Sierpinski-Dreieck erzeugen kann: 1) Rekursive Unterteilung, 2) Chaos-Spiel, 3) Pascalsches Dreieck, 4) Zellulärer Automat (Regel 90), 5) L-System. Zeige für jede Methode den Algorithmus in Pseudocode und erkläre warum alle das gleiche Ergebnis liefern.