Abschnittsübersicht

  • Hervorgehoben
    • Spirale vom Titelbild zeichnen

      Wir werden die Spirale vom Titelbild programmieren. Diese Spirale sieht aus wie ein 6-Eck. In Wirklichkeit ist es ein Strich der nach jedem Abbiegen größer wird und die Farbe wechselt. Den Bewegungsablauf der Turtle kennst du durch die Programmierung des n-Ecks bereits. Folgende Befehle werden benötigt:

      forward(WertSeitenlaenge) und left(WertWinkel) oder right(WertWinkel)

      In einem 6-Eck ist der WertWinkel, den die Turtle sich dreht 60 (da die Turtle den Außenwinkel nimmt). Die Seitenlänge soll sich stetig erhöhen, so dass hier eine for-Schleife genutzt werden sollte.

      Regenbogenspirale_Schritt2 

      Regenbogenspirale_Schritt2_Ausgabe

    • Im nächsten Schritt fügen wir eine Liste mit Farben ein. Zum Beispiel:

      farben = ["red", "orange", "yellow", "green", "blue", "purple"]

      Diese Liste soll in der for-Schleife der Stiftfarbe übergeben werden und bei jedem Schleifendurchlauf wechseln. Da die Schleife in meinem Beispiel 300 mal durchlaufen wird und wir nur 6 Farben haben, müssen wir das Element aus der Liste berechnen. Das funktioniert wunderbar mit einer Rechnung mit Rest. Zum Beispiel: 

      1 durch 6 = 0 Rest 1
      2 durch 6 = 0 Rest 2
      3 durch 6 = 0 Rest 3
      4 durch 6 = 0 Rest 4
      5 durch 6 = 0 Rest 5
      6 durch 6 = 1 Rest 0
      7 durch 6 = 1 Rest 1
      8 durch 6 = 1 Rest 2
      9 durch 6 = 1 Rest 3
      10 durch 6 = 1 Rest 4
      11 durch 6 = 1 Rest 5
      12 durch 6 = 2 Rest 0

      Beim Programmieren nennt man es Modulo-Rechnen und wird in Python mit einem Prozent-Zeichen geschrieben %. Als Ergebnis kommt dann nur der Rest raus. Für unser Programm verwenden wir also folgenden Code, damit wir die Farbe bei jedem Strich wechseln.

      pencolor(farben[x%6])

      x ist dabei die Zählvariable der Schleife.

      Regenbogenspirale_Schritt3

      Regenbogenspirale_Schritt3_Ausgabe


    • Die Farben kommen auf einem dunklen Hintergrund besser zur Geltung, den du mit dem Befehl bgcolor('black') einstellen kannst.

      Noch sieht es nicht so aus wie auf dem Titelbild. Dafür brauchst du jedoch nur den Wert des Winkels in der Links- oder Rechtsdrehung auf 59 setzen.

      Fertig!