Anwendungen zur Turtlegrafik

[Back]    [Hilbertkurven]    [Sierpinksikurve]

Hilbertkurven



        


David Hilbert (23.1.1862 - 14.2.1943)

Ein weiteres Beispiel für rekursive Grafiken stellt die Hilbertkurve dar. Diese Kurve hat die besondere Eigenschaft, raumfüllend zu sein. In einem Quadrat kann die Rekursionstiefe so gewählt werden, das der Raum vollständig ausgefüllt wird, ohne das die Kurve sich selbst schneidet. Die Vorgehensweise zur Konstruktion der Hilbertkurve kann durch eine Grammatik beschrieben werden. Neben dem Initiator sind hier Generatoren zu finden, die das Rekusionsmuster der indirekten Rekursion widerspiegeln.

Eine gute Beschreibung zu den Hilbertkurven findet man bei N. Wirth. Legt man mehrere Kurven übereinander, erhält man nachstehendes Muster. Der Code für eine Implementierung wird für den Generator A angedeutet, der komplette Source steht zur Verfügung.


Der Code für die Kochfunktion gestaltet sich wie folgt.

        01  from  turtle  import *
        02
        03  class hilbert (turtle):
        04
        05  def __init__(self): 
        06        turtle.__init__(self, 640, 640, 600, 600, "Hilbertkurve")   
        07        self.u  = 500 
        07  
        07  ..... 
        07
        08  def A (self, zaehler): 
        10        if zaehler > 0:
        11              self.D (zaehler -1)
        12              self.init_winkel () 
        12              self.laufe (180, self.u)
        11              self.A (zaehler -1)
        12              self.init_winkel () 
        12              self.laufe (270, self.u)
        11              self.A (zaehler -1)
        12              self.init_winkel () 
        12              self.laufe (0, self.u)
        11              self.B (zaehler -1)
        24
        24  ....
	

[Source]

Sierpinski



        


Waclaw Sierpinski (14.3.1882 - 21.10.1969)

Das zweite Beispiel für diese Art von Kurven stellt die Sierpinskikurve dar. Gegenüber den Hilbertkurven weist diese Kurve trotz eines vergleichbaren Algorithmus einen höheren Komplexitätsgrad auf. Die Sierpinskikurve ist gegenüber der Hilbertkurve geschlossen. Die Verbindung der einzelnen Generatoren wird durch ein außerhalb der Rekursion liegendes Muster gewährleistet.



Darstellung der Sierpinski Kurven für den Grad 4

[Source]

[TOP]                [Protected]