Raspberry Pi-Projekt: Python Turtle

Anfänger
30 Min
160,40 €

In diesem Projekt werden wir mit Python Turtle programmieren. Schildkrötenbilder sind eine beliebte Möglichkeit, Kinder an das Programmieren heranzuführen. Es war Teil der ursprünglichen Programmiersprache Logo, die 1967 von Wally Feurzeig, Seymour Papert und Cynthia Solomon entwickelt wurde. Diese Python-Bibliothek ist auf Ihrem Raspberry Pi vorinstalliert.

Dieses Handbuch behandelt:    

Schildkrötenmerkmale

Wie jede Python-Bibliothek verfügt auch die Turtle-Bibliothek über eigene Funktionen. In diesem Projekt verwenden wir nicht alle Funktionen der Turtle-Bibliothek. Die von uns verwendeten Funktionen sind unten aufgeführt:

Programmierung

Wir programmieren mit Python in der Python IDE. Sie können die folgenden Schritte befolgen, um mithilfe der Turtle-Bibliothek verschiedene Dinge zu zeichnen.


Oben im Code importieren wir zuerst die Turtle-Bibliothek.

Als nächstes nehmen wir die Einstellungen für die Schildkröte und den Hintergrund vor.

In def snowflake() schreiben wir die Programmzeilen, wie wir die Schneeflocke zeichnen wollen. Wenn snowflake() aufgerufen wird, wird dies gezeichnet.

In der Definition „bal()“ schreiben wir den Code, wie wir den Ball zeichnen. Dazu zeichnen wir einen Kreis und färben ihn dann ein. Durch den Aufruf von ball() wird der Ball gezeichnet.

Der Code selbst beginnt mit dem Verschieben der Schildkröte an einen anderen Ort. Eine Unterschrift ist nicht erforderlich. Wenn sich die Schildkröte an der richtigen Stelle befindet, rufen wir snowflake() auf und eine Schneeflocke wird gezeichnet. Das wiederholen wir dann noch einmal. Beim dritten Mal rufen wir nicht mehr snowflake() auf, sondern ball().

Schließlich bewegen wir die Schildkröte zum Heimatstandort und ändern anschließend die Farbe der Schildkröte in Grün.

#eerst wordt de turtle bibliotheek geimporteerd
import turtle

#de turtle (de pen) wordt gekoppeld aan variabele t

t = turtle.Turtle()
#de achtergrondskleur van tet turtle-scherm wordt ingesteld op kleur ‘DeepSkyBlue’
turtle.bgcolor(“DeepSkyBlue”)

#wanneer dit wordt aangeroepen, wordt er een sneeuwvlok getekend
def sneeuwvlok():
    # – de turtle schrijft de kleur wit (pencolor)
    # – de turtle is ingesteld op de snelheid 10, schaal van 1 t/m 10 (speed)
    t.pen(pencolor=“white”, speed=10)
    #dit stukje code wordt 8x herhaald, omdat de sneeuwvlok acht takken heeft
    for i in range (8):
        #met elke tak wordt de turte 45 graden gedraait
        t.left(45)
        #de zijtakken van de sneeuwvlok worden getekent
        for i in range(3):
            for i in range(3):
                t.forward(10)
                t.backward(10)
                t.right(45)
            t.left(90)
            t.backward(10)
        t.left(45)
    t.right(90)
    t.forward(30)

#wanneer dit wordt aangeroepen, wordt er een bal getekend
def bal():
    #de vorm van de turlte wordt aangepast naar de vorm ‘turtle’
    t.shape(“turtle”)
    # – de turtle schrijft de kleur zwart (pencolor)
    # – de opvulling van de turtle krijgt de kleur rood (fillcolor)
    # – de grootte van de lijn wordt aangepast naar 5 pixels (pensize)
    # – de turtle is ingesteld op de snelheid 5, schaal van 1 t/m 10 (speed)
    t.pen(pencolor=“black”, fillcolor=“red”, pensize=5, speed=5)
    t.begin_fill()
    t.circle(50)
    t.end_fill()

#def sneeuwvlok wordt getekend op locatie x=200 y=200
t.penup()
t.goto(200,200)
t.pendown()
sneeuwvlok()

#def sneeuwvlok wordt getekend op locatie x=100 y=300
t.penup()
t.goto(100,300)
t.pendown()
sneeuwvlok()

#def bal wordt getekend op locatie x=10 y=-350
t.penup()
t.goto(10,-350)
t.pendown()
bal()

#de turtle gaat weer terug naar de home positie (x=0 y=0)
t.penup()
t.home()

#de turtle krijg een groene opvulling
t.pen(fillcolor=“green”)
t.pendown()

Ergebnis

Nachdem Sie den Code korrekt eingegeben haben, können Sie auf „Ausführen“ klicken. Als nächstes wird die Python Turtle Graphics geöffnet und die Figuren werden gezeichnet. Wenn alles gezeichnet ist, sieht es wie unten gezeigt aus:

Sobald Sie dieses Projekt abgeschlossen haben, wissen Sie, wie Sie mit der Python Turtle-Bibliothek beginnen. Auch hiermit lassen sich viele lustige Figuren zeichnen.

Fußnoten

Hier sind die Turtle-Funktionen, die im Projekt weiter ausgearbeitet und verarbeitet werden.

bgcolor():
Damit können Sie die Hintergrundfarbe des Turtle-Bildschirms ändern. Diese Farbe setzen Sie zwischen die Klammern.

Stift():
Dadurch ändern sich die Eigenschaften des Stiftes. Zwischen die Klammern trägst du ein, was du am Stift ändern möchtest. Um die Schreibfarbe des Stifts zu ändern, verwenden Sie t.pen(pencolor=""). Verwenden Sie t.pen(fillcolor=””), um die Farbe der Schildkröte zu ändern. Sie können dies auch verwenden, um einer Figur eine Füllfarbe zu geben. Verwenden Sie t.pen(pensize=), um die Breite der Linie zu ändern. Mit t.pen(speed=) können Sie die Geschwindigkeit einstellen, mit der sich die Schildkröte bewegt. Die Geschwindigkeit lässt sich auf einer Skala von 1 (sehr langsam) bis 10 (sehr schnell) einstellen.

vorwärts():
Mit forward() kannst du der Schildkröte sagen, wie weit sie nach vorne gehen soll. Sie können dies auch mit der verkürzten Version tun: fd().

rückwärts():
Mit backward() kannst du der Schildkröte sagen, wie weit sie zurückgehen soll. Dies ist auch mit der verkürzten Variante möglich: bk().

rechts():
Verwenden Sie right(), um den Winkel anzugeben, um den sich die Schildkröte im Uhrzeigersinn drehen soll. Sie können dies auch mit der verkürzten Version tun: rt().

links():
Verwenden Sie left(), um den Winkel anzugeben, um den sich die Schildkröte gegen den Uhrzeigersinn drehen soll. Sie können dies auch mit der verkürzten Version tun: lt().

Kreis():
Mit circle() können Sie ganz einfach einen schönen Kreis zeichnen. Geben Sie den Radius des Kreises zwischen den Klammern ein.

penup():
Normalerweise zieht die Schildkröte eine Linie, wenn sie ihre Position ändert. Mit penup() können Sie dies deaktivieren, sodass Sie die Schildkröte neu positionieren können, ohne eine Linie zu zeichnen.

pendown():
Pendown() macht das Gegenteil von penup(). Hier stellst du ein, dass wenn du die Position der Schildkröte änderst, erneut eine Linie gezeichnet wird.

begin_fill():
Mit bigin_fill() legen Sie einen Startpunkt fest, wenn Sie eine Figur füllen möchten.

end_fill():
Verwenden Sie end_fill(), um das Ende festzulegen, bis zu dem Sie eine Figur füllen möchten. Nach dem Aufruf dieser Funktion wird die Figur mit der von Ihnen eingestellten Farbe gefüllt.

gehe zu(x,y):
Verwenden Sie goto(x,y), um die Schildkröte schnell zu einer Koordinate zu leiten. Diese Koordinate legen Sie zwischen den Klammern fest. Zuerst erwähnen Sie die x-Achse und dann die y-Achse.

heim():
Mit home() dirigieren Sie die Schildkröte schnell zu Ihrer Ausgangsposition. Dies ist die Koordinate (0,0).

Benötigte Produkte