Sierpinski-Kurve

Sierpinski-Kurve

Die Sierpinski-Kurve

Die Sierpinski-Kurven sind eine Familie von Kurven in der Ebene, die immer besser das Einheitsquadrat ausfüllen. Als "Grenzwert" erhält man eine sogenannte raumfüllende Kurve. Sie wurden 1912 vom polnischen Mathematiker W. Sierpinski definiert.

Neben dem theoretischen Interesse hat sie auch praktische Anwendungen. Zum Beispiel kann man damit Annäherungslösungen für das Traveling-Salesman-Problem konstruieren.

Referenz: Wikipedia

Dieses Igel-Programm zeichnet eine Sierpinski-Kurve eines gegebenen Niveaus und einer gegebenen Größe.

Damit bei einem Neustart zuerst die alte Zeichnung gelöscht wird, beginnen wir mit bildschirmleer().

bildschirmleer()

Setze die Geschwindigkeit hoch.

geschwindigkeit 100

halbe_sierpinski_kurve = (größe, level) ->
  wenn level ist 0
    vor größe
  sonst
    halbe_sierpinski_kurve größe, level - 1
    links 45
    vor größe * Math.sqrt(2)
    links 45
    halbe_sierpinski_kurve größe, level - 1
    rechts 90
    vor größe
    rechts 90
    halbe_sierpinski_kurve größe, level - 1
    links 45
    vor größe * Math.sqrt(2)
    links 45
    halbe_sierpinski_kurve größe, level - 1

sierpinski = (größe, level) ->
  wiederhole 2, ->
    halbe_sierpinski_kurve größe, level
    rechts 90
    vor größe
    rechts 90

stifthoch()
zurück 150; rechts 90; vor 150; links 135
stiftrunter()

sierpinski 6, 4

versteckeigel()