Informatik

Weitere Funktionen der Turtle

Um vielfältigere Zeichnungen zu erstellen, sehen wir uns ein paar weitere Funktionen der Turtle an.

Befehl Wirkung
speed(0) schaltet die Animation aus – die Zeichnung erscheint sofort. Kleine Werte wie speed(1) sind langsam, größere wie speed(10) sind schnell.
pencolor("red") setzt die Stiftfarbe auf Rot.
pensize(10) setzt die Strichstärke auf 10 Pixel.
penup() hebt den Stift an – die Turtle läuft, ohne zu zeichnen.
pendown() setzt den Stift wieder ab.
hideturtle() versteckt die Turtle. Die Zeichnung bleibt sichtbar.

Eine Übersicht über alle Farbnamen findest du auf w3schools.com.

Aufgabe 1: Erst denken, dann testen

Gegeben ist das folgende Programm.

a) Skizziere zunächst ohne Rechner auf Papier die Zeichnung, die sich ergibt.

b) Führe das Programm danach aus und vergleiche. Erkläre gegebenenfalls Abweichungen.


      
    
from turtle import * shape("turtle") screensize(500, 200) speed(5) pensize(10) forward(40) pencolor("red") pensize(20) forward(40) pencolor("green") pensize(40) forward(40) pencolor("yellow") pensize(80) forward(40) penup() forward(80) pencolor("magenta") pendown() dot(50)
Tipp: Worauf muss ich achten?

Zwei Dinge sind leicht zu übersehen:

  1. Die Turtle startet in der Mitte der Zeichenfläche, nicht am linken Rand.
  2. Zwischen dem gelben Balken und dem magentafarbenen Punkt ist der Stift angehoben – dort entsteht eine Lücke.

Aufgabe 2: Vier Zeichnungen

Entwickle für jede der folgenden vier Zeichnungen ein eigenes Programm.

a) Ein Baum

Ein Baum aus einem dicken braunen Stamm und einer grünen Krone


      
    
from turtle import * shape("turtle") screensize(400, 400) # Dein Code hier
Tipp 1: Woraus besteht der Baum?

Der Baum besteht aus nur zwei Teilen:

  • der Stamm ist eine einzelne, sehr dicke Linie,
  • die Krone ist ein einzelner großer Punkt.
Tipp 2: Konkrete Werte

Stamm: pensize(40) und pencolor("brown"), dann 100 Pixel nach oben.

Krone: pencolor("green") und dann dot(100).

Denke daran, die Turtle vorher nach oben zu drehen und ans untere Ende zu setzen.

Lösung. Erfrage das Passwort bei deiner Lehrkraft.

b) Eine Kerze

Eine gelbe Kerze mit Docht und oranger Flamme


      
    
from turtle import * shape("turtle") screensize(400, 400) # Dein Code hier
Tipp: Der Aufbau

Die Kerze funktioniert wie der Baum, hat aber drei Teile: einen dicken gelben Körper, einen dünnen schwarzen Docht und eine orange Flamme als Punkt.

Vergiss nicht, zwischendurch die pensize wieder zu verkleinern.

Lösung. Erfrage das Passwort bei deiner Lehrkraft.

c) Ein Säulendiagramm

Fünf direkt nebeneinander stehende Säulen unterschiedlicher Höhe


      
    
from turtle import * shape("turtle") screensize(500, 400) # Dein Code hier
Tipp 1: Wie zeichne ich eine Säule?

Eine Säule ist eine dicke Linie nach oben. Damit die nächste Säule wieder unten beginnt, muss die Turtle denselben Weg rückwärts zurücklaufen – am besten mit backward.

Tipp 2: Der Weg zur nächsten Säule

Nach jeder Säule gilt: Stift anheben, nach rechts drehen, um die Säulenbreite vorlaufen, wieder nach oben drehen, Stift absetzen.

penup()
right(90)
forward(20)
left(90)
pendown()

Die Höhen sind 40, 60, 20, 100 und 80.

Lösung. Erfrage das Passwort bei deiner Lehrkraft.

d) Ein Säulendiagramm mit Abstand

Fünf Säulen mit deutlichem Abstand zueinander

Verändere dein Programm aus Teil c) so, dass zwischen den Säulen ein Abstand entsteht.


      
    
from turtle import * shape("turtle") screensize(500, 400) # Dein Code hier
Tipp

Du musst nur eine einzige Zahl ändern: die Strecke, die die Turtle bei angehobenem Stift zur Seite läuft.

Das Koordinatensystem

Die Zeichenfläche der Turtle hat ein Koordinatensystem, das du aus dem Mathematikunterricht kennst. Der Ursprung (0 | 0) liegt genau in der Mitte, die y-Achse zeigt nach oben.

Koordinatensystem der Turtle mit Ursprung in der Mitte

Befehl Wirkung
goto(150, 120) setzt die Turtle direkt auf den Punkt (150 | 120).
home() setzt die Turtle zurück auf (0 | 0) und dreht sie nach rechts.
screensize(640, 480) legt die Größe der Zeichenfläche fest. Bei dieser Größe reicht sie von -320 bis 320 (x) und von -240 bis 240 (y).

Achtung: goto zeichnet eine Linie, wenn der Stift unten ist. Möchtest du nur springen, hebe ihn vorher mit penup() an.

Aufgabe 3: Mit Koordinaten arbeiten

Analysiere das folgende Programm durch wiederholtes Testen. Erkläre dann, was die neu eingeführten Funktionen bewirken.

Verändere anschließend die Koordinaten und beobachte, wohin die Punkte wandern.


      
    
from turtle import * shape("turtle") screensize(600, 400) speed(0) penup() goto(-200, 150) dot(20) goto(200, 150) dot(20) goto(0, 0) pencolor("gray") dot(20) goto(-200, -150) pencolor("red") dot(20) goto(200, -150) dot(20)

Flächen füllen

Bisher haben wir nur Linien gezeichnet. Die Turtle kann Flächen auch ausfüllen:


      
    
from turtle import * shape("turtle") screensize(400, 400) pencolor("green") fillcolor("yellow") pensize(10) begin_fill() right(45) forward(100) right(45) forward(200) right(45) forward(100) end_fill()
  • begin_fill() markiert den Anfang einer Fläche.
  • end_fill() markiert das Ende. Die umschlossene Fläche wird automatisch gefüllt.
  • fillcolor("yellow") legt die Füllfarbe fest.
  • Ist der Weg nicht geschlossen, verbindet Python Start- und Endpunkt automatisch mit einer geraden Linie.

Aufgabe 4: Rotes Dach

Modifiziere deine Zeichnung vom Haus vom Nikolaus so, dass das Dach rot ausgefüllt wird.

Das Haus vom Nikolaus mit rot gefülltem Dach


      
    
from turtle import * shape("turtle") screensize(400, 400) # Deine Lösung aus der letzten Lektion, ergänzt um die Füllung
Tipp 1: Wo setze ich begin_fill?

Das Dach besteht aus genau zwei Strecken: dem linken und dem rechten Dachschenkel. begin_fill() gehört direkt davor, end_fill() direkt danach.

Tipp 2: Warum wird trotzdem ein Dreieck gefüllt?

Weil Python den Weg automatisch schließt: Vom Ende des rechten Dachschenkels zieht es eine unsichtbare Linie zurück zum Anfang des linken. Genau das ergibt das Dreieck.

Lösung. Erfrage das Passwort bei deiner Lehrkraft.

Aufgabe 5: Regelmäßige Vielecke

Ein regelmäßiges Vieleck hat gleich lange Seiten und gleich große Winkel.

Ein Dreieck, ein Viereck, ein Fünfeck und ein Sechseck

Zeichne die vier abgebildeten regelmäßigen Vielecke. Alle Seiten sind 70 Pixel lang.


      
    
from turtle import * shape("turtle") screensize(400, 400) # Dein Code hier
Tipp 1: Wie groß ist der Drehwinkel?

Die Turtle läuft einmal komplett um die Figur herum und schaut am Ende wieder in die Startrichtung. Insgesamt hat sie sich also um 360 Grad gedreht.

Bei einem Vieleck mit n n Ecken verteilt sich diese volle Drehung gleichmäßig auf n n Drehungen.

Tipp 2: Die Formel

Drehwinkel = 360 ° Anzahl der Ecken \text{Drehwinkel} = \frac{360°}{\text{Anzahl der Ecken}}

Also: Dreieck 120°, Viereck 90°, Fünfeck 72°, Sechseck 60°.

Lösung. Erfrage das Passwort bei deiner Lehrkraft.

Selbsttest

Weitere Funktionen der Turtle

Teilbare URL erstellen

Abschnitte auswählen