Sirpinski-Dreieck und Cantor Staub gehören - wie schon erwähnt - zu den Fraktalen. Fraktale sind sowohl in der freien Natur vorhanden (vgl. Romanesco), als auch in der Mathematik sehr interessant (vgl. Julia-Mengen, Mandelbrot-Menge). Am interessantesten ist es aber, sich selbst welche auszudenken. Das Handwerk dazu haben Sie, es fehlt Ihnen noch an Übung zur Eigenkreation.
Wir setzen uns deshalb erstmal noch mit einigen vorgegebenen Fraktalen auseinander:
Das Bild oben zeigt ein Fraktal aus Kreisen, man könnte es auch mit Quadraten oder Dreiecken gestalten. Man muss sich Gedanken darüber machen, ob sie überhaupt noch iterativ gestaltet werden können, sollen sich die primitiven Grafiken berühren oder nicht, gibt es Fraktale, die sich gleichzeitig über verschiedene Rekursionstiefen bewegen?
Betrachten wir zuerst die einzelnen Schritte:
Es wird die vorherige Figur um 90° gedreht links von einem Kreis, um -90° rechts von davon und einmal darüber platziert. Lesen Sie unterhalb des Code-Fensters was im Fenster zu tun ist:
Keine Angst, sollte es nicht auf Anhieb geklappt haben, ist das nicht verwunderlich. Die Überlegungen, die zusätzlich gemacht werden müssen, damit genau die Figur angezeigt wird, sind umfangreich. Vergleichen Sie Ihren Code nun mit dem unten abgebildeten.
def fraktal_it(tiefe: int, groesse: float, farbe: Color) -> Graphic:
result = empty_graphic()
for i in range(tiefe+1):
result = above(
result,
beside(
rotate(90,result),
beside(
circular_sector(groesse*(2/5)**(tiefe-(i-1)), 360, farbe),
rotate(-90,result)
)
)
)
return result
show_graphic(fraktal_it(5, 1000, red))
Die Überlegungen, die Sie hier gesehen haben, aber vielleicht noch nicht selbst machen konnten, sind Übungssache. Jetzt haben Sie sie das erste Mal gesehen, und nach einigen Malen können Sie sie dann auch reproduzieren.
Allenfalls ist es einfacher, die Funktion rekursiv zu schreiben um so die ganzen Überlegungen zu der Anzahl der Iterationsschritte zu umgehen.
Die Vorschrift kann aus dem obigen Code gut abgeleitet werden. Wichtig ist, dass Sie erkannt haben, dass es zwei verschiedene Grössen von Kreisen pro Rekursionsschritt gibt und die Abbruchbedingungung der einfache Kreis ist.
Schreiben Sie nun den Code für die rekurisive Funktion:
This activity has been created by Caroline Farner and is licensed under CC BY-SA 4.0.
Verschiedene Fraktale
PyTamaro is a project created by the Lugano Computing Education Research Lab at the Software Institute of USI
Privacy Policy • Platform Version 72fad4a (Wed, 18 Jun 2025 07:18:27 GMT)