|
Das Drachen-Fraktal mit LOGO Gerhard Otte
Aus: Computer und Unterricht 17/1995
Die Beschreibung des Drachen-Fraktals (1)
legt eine Erzeugung der Drachen-Kurve mit der Programmiersprache LOGO nahe. Die Abbildungsvorschrift läßt sich mit der Igelgrafik leicht umsetzen. Die Vorschrift hat außerdem eine
rekursive Struktur. Zur Erinnerung: 1. Das Drachen-Fraktal besitzt als Ausgangsmenge M0 die Einheitsstrecke auf der x-Achse. 2. Die Menge Mn+1 entsteht aus der Menge Mn durch
Vereinigung der Bildmenge der folgenden 2 Abbildungen: a) Mn wird um P(0;0) im Verhältnis 1: 2 zentrisch gestreckt und um P(0;0) mit 45 Grad gedreht. b) Mn wird nochmals im
Verhältnis 1: 2 gestreckt, aber nun um P(0;0) mit 135 Grad gedreht und um 1 parallel zur x-Achse verschoben Der Entwurf eines Algorithmus zu rekursiven Problemstellungen mit mehrfachem
Selbstaufruf fällt leichter, wenn man nicht den Programmablauf bis zur untersten Rekursionsebene nachvollzieht, sondern den
Zusammenhang zwischen zwei aufeinander folgenden Rekursionsebenen beschreibt. (2) Dazu geht man in zwei Schritten vor. Zuerst schreibt man das Programm für die Stufen 0 und 1.
PR Drachen :Länge :Stufe
In der Stufe 0 wird die Einheitsstrecke gezeichnet. Danach wird der Igel wieder in seine Ausgangsposition gebracht:
Wenn :Stufe = 0 Dann Vorwärts :Länge Rückwärts :Länge Rückkehr
In der Stufe 1 wird zuerst die Abbildung
1 erzeugt. Nach einer Drehung um 45 Grad wird die um 1/ 2 gestreckte Strecke gezeichnet. Auch hier ist es wichtig, alle Igelbewegungen wieder rückgängig zu machen. Links 45
Vorwärts ( :Länge / Qw 2 ) Rückwärts ( :Länge / Qw 2 ) Rechts 45
Die Abbildung 2 entsteht entsprechend. Die Verschiebung um +1 parallel zur x-Achse erreicht man durch eine
Vorwärtsbewegung des Igels mit angehobenem Stift.
Stifthoch Vorwärts :Länge Stiftab Links 135 Vorwärts ( :Länge / Qw 2 ) Rückwärts (:Länge / Qw 2) Stifthoch
Rechts 135 Rückwärts :Länge Stiftab
Damit die Drachen-Kurve in x-Richtung entsteht, zeichnet man zuerst ein Koordinatenssystem, dreht den Igel um 90 Grad nach rechts und
ruft das Programm Drachen auf. Dies leistet das Programm Zeichne_Drachen.
PR Zeichne_Drachen :Länge :Stufe Bild Vorwärts :Länge Rückwärts 2*:Länge Vorwärts :Länge
Rechts 90 Vorwärts :Länge Rückwärts 2*:Länge Vorwärts :Länge Drachen :Länge :Stufe ENDE
Der Aufruf von Zeichne_Drachen 200 0
erzeugt die Ausgangsmenge Mo. Eine Einheit entspricht dabei 200 Igelschritte Der Aufruf von Zeichne_Drachen 200 1 erzeugt die Menge M1 (Figur 1).
Figur 1
Das Programm zum Zeichnen der Drachenfigur der n-ten Stufe entsteht im 2.Schritt. Dazu ersetzt man in
dem Programm Drachen diejenigen Befehle durch einen rekursiven Aufruf, die zu eine Figur von gleicher Struktur in der nächst niedrigeren Stufe führen.
Bei der 1.Abbildung wird in der n-ten Stufe statt Vorwärts (:Länge / QW 2) Rückwärts (:Länge / Qw 2) die Drachenfigur der nächst niedrigeren Stufe gezeichnet. Drachen ruft sich also mit
Drachen (:Länge / Qw 2) :Stufe - 1
selbst auf.
Die gleiche Ersetzung wird bei der 2.Abbildung vorgenommen. Die endgültige Version des Programms Drachen sieht damit so aus:
PR Drachen :Länge :Stufe Wenn :Stufe = 0 Dann Vorwärts :Länge Rückwärts :Länge Rückkehr Links 45 Drachen ( :Länge / Qw 2 ) :Stufe -1 Rechts 45 Stifthoch
Vorwärts :Länge Stiftab Links 135 Drachen ( :Länge / Qw 2 ) :Stufe - 1 Stifthoch Rechts 135 Rückwärts :Länge Stiftab ENDE
Der Aufruf von Zeichne_Drachen 200 15 erzeugt das folgende Drachen-Fraktal.
 (1) Behr, Reinhard: Fraktale und Chaos. Computer und Unterricht 14/1994. S.4
(2) Otte, Gerhard: Handbuch LOGO für den PC. Dümmler Verlag 1992. S.100 ff Anschrift des Verfassers: Gerhard Otte, Konrad-Adenauer-Allee 10, 64569 Nauheim
|