Fraktale Rekursion Fraktale Folie 2 Dimension Java bung
Fraktale Rekursion: Fraktale • Folie 2 – Dimension – Java – Übung • Binärbaum • Übungen – Sierpinskidreieck – Baum des Pythagoras 1
Fraktale 1 2 Anzahl der Teile a Reduktionsfaktor s Umkehrung 1/s a= (1/s)D Dimen sion 4 1/3 3 4=3 D 3 D = ln 4 / ln 3 ≈ 1. 2619 16 1 1 2 2 3 3 4 4 5 6 7 8 1 9 2 1/9 9 16=9 D D=1, 26… 4 k = 3 kd D = ln 4 k / ln 3 k = (k*ln 4) / (k ln 3) ≈ 1. 2619 a s 1/s=t 4 16 1/2 2 4 a=t. D D=1, 26. . 4=2 D D=2 2
Rekursive Struktur einer endlich langen Kochkurve Fraktale • Eine Kochkurve der Breite ≤ 1 besteht lediglich aus einer Strecke der Länge einer Einheit • Eine Kochkurve der Breite n > 1 besteht aus vier Kochkurven der Breite n/3. – Die erste liegt in der aktuellen Richtung, – die zweite bildet mit der ersten einen Winkel von 60°, – die dritte trifft sich mit der zweiten in einem Winkel von 120° • die vierte liegt wieder in der ursprünglichen Richtung (60° zur dritten) 3
Fraktale public void zeichne. Kochkurve(Turtle t, double breite, double eine. Einheit){ if (breite <= eine. Einheit) { t. vor( eine. Einheit); } else { zeichne. Kochkurve(t, breite/3, eine. Einheit); t. drehe(-60); zeichne. Kochkurve(t, breite/3, eine. Einheit); t. drehe(120); zeichne. Kochkurve(t, breite/3, eine. Einheit); t. drehe(-60); zeichne. Kochkurve(t, breite/3, eine. Einheit); }//else }//zeichne. Kochkurve Abbruchbedingung 1. Selbstaufruf 2. Selbstaufruf 3. Selbstaufruf 4
Fraktale Übungen • Experimente mit unterschiedlichen Größen der Kochkurve und Anzahlen der rekursiven Aufrufe (Rekursionstiefe) während der Laufzeit • Drei Kochkurven bilden einen geschlossenen Polygonzug, der eine Schneeflockenform hat. • Das Bildungsgesetz einer weiteren Kurve zeigt die folgende Skizze: 5
Fraktale Lösung von Übung 3 6
Fraktale Unser Baum besitzt einen Stamm, verzweigt sich in einem bestimmten Winkel in zwei kleinere Teilbäume und schmückt sich mit Früchten, wenn die Äste klein genug sind. Bis auf die Früchte liegt Selbstähnlichkeit vor. Der Zeichenweg führt zum Anfang zurück. Die „Turtle“ hat die folgenden Eigenschaften zu beachten: • • Turtle t Die Stammgröße stamm. Höhe Der Winkel der Äste bezüglich des Stamms winkel Der Verkleinerungsfaktor (<1) von Teilbaum zu Teilbaum faktor Die kleinste Stammgröße (z. B. < 10) Die Größen der Kreisflächen (z. B. = 6) Die Farben von Zweigen und Früchten (z. B. blau, rot) Ein Baum der Größe < 10 verzweigt sich nicht mehr. Der Zweig trägt eine Frucht Der Stift muss zum Ausgangspunkt unter Wiederherstellung der Richtung zurückfahren: t. vor(-stamm. Höhe), und dies nach jedem Teilbaum! 7
Fraktale Übung: Das Sierpinskidreieck (Vorgestellt 1916 von Waclaw Sierpinski: Polnischer Mathematiker, 1882 -1969) 3 1 2 8
Fraktale Sierpinski Zeichne ein Sierpinskidreieck der Breite b • Falls die Breite kleiner ist als z. B. 10, – zeichne man ein Dreieck und achte darauf, danach die Anfangsposition wieder exakt einzunehmen 3 • andernfalls 1 2 – zeichne man ein Sierpinskidreieck der halben Breite (Dreieck 1) – gehe die halbe Breite vor zur vorgesehenen linken unteren Ecke des zweiten Dreiecks – zeichne das zweite Sierpinskidreieck (Seitenlänge = halbe Breite) – gehe zur vorgesehenen Position der linken unteren Ecke des dritten Dreiecks – zeichne das dritte Sierpinskidreieck so groß, wie die beiden anderen – gehe zur Startposition zurück und achte auf die Startrichtung 9
Fraktale Baum des Pythagoras 10
Fraktale Baum des Pythagoras 3 2 • • Jedes Dreieck ist rechtwinklig und hat die Basiswinkel alpha (α) und 90 -alpha. Die Katheten und die Hypotenuse stehen im Verhältnis 8: 6: 10 Satz des Pythagoras: 8*8 + 6*6 = 10*10 rechtwinklig 1 α breite • Weitere Daten: double alpha = 36. 96989765 Kathete k 1 bei alpha: 0. 8 * breite Kathete k 2 gegenüber von alpha: 0. 6*breite • Die Zahlen 1, 2 und 3 weisen auf die aufeinander folgenden Anfangspositionen und Richtungen zum Zeichnen eines Quadrates (Pos. 1) und die Positionsbestimmungen vor dem Aufruf zweier rekursiver Aufrufe (Pos. 2 und 3) hin. Die Start- und die Endpositionen (Pos. 1) müssen übereinstimmen. • Ein Pythagorasbaum kleiner Breite (z. B. < 10) ist lediglich ein Quadrat. 11
- Slides: 11