Eine Python-Version von Turtle Graphics, mit der Sie eine Schildkröte mit einem Stift bearbeiten können, um ein Bild zu zeichnen. Scratch ist berühmt für Kinder, aber es scheint ein gutes Unterrichtsmaterial zu sein, je nachdem, wie Sie es verwenden. Ich fand diese Zeichnung fantastisch und versuchte sie zu verwenden ...
――Sie können eine solche Strichzeichnung zeichnen (wie einen Wald oder einen Wald)
Hier ist der Beispielcode. Erstellen wir eine Funktion namens Gesamtstruktur.
turtlePicture.py
#
#Importiere Schildkröte und zeichne eine Linie
# 2020.06.15 ProOJI
#
import turtle
#kameSan-Objekterstellung
kameSan = turtle.Turtle()
#Erstellen Sie eine Methode (rekursive Verwendung)
def forest(n, length:int=1000)->None:
if n <= 0:
kameSan.forward(length)
return
'''Rekursiv 1 Länge= 1000 * 0.5 '''
forest(n-1, length * 0.5)
#85 Grad nach rechts drehen
#Von sanft bis scharf
kameSan.right(85)
'''Rekursive 2 Länge= 1000 ÷ 3 '''
forest(n-1, length / 3)
#170 Grad nach links drehen
#Zeichnen Sie eine scharfe Nadel in einer scharfen Kurve
kameSan.left(170)
'''Rekursive 3 Länge= 1000 ÷ 3 '''
forest(n-1, length / 3)
#85 Grad nach rechts drehen
#Lande wieder in einer sanften Richtung
kameSan.right(85)
'''Rekursive 4 Länge= 1000 ÷ 0.38 '''
forest(n-1, length * 0.38)
if __name__ == '__main__':
kameSan.penup()
kameSan.setpos(270, -20)
kameSan.pendown()
kameSan.left(180)
kameSan.speed(0)
forest(5)
kameSan.done()
Auf diese Weise können Sie eine Linie zeichnen. Wenn Sie einige Änderungen vornehmen und eine Farbänderung im rekursiven Teil festlegen ...
turtlePictureWithColor.py
#
#Importiere Schildkröte und zeichne eine Linie
#kameSan zeichnet beim Bewegen Linien
# 2020.06.15 ProOJI
#
import turtle
#kameSan-Objekterstellung
kameSan = turtle.Turtle()
#Erstellen Sie eine Methode (rekursive Verwendung)
def forest(n, length:int=1000)->None:
if n <= 0:
kameSan.forward(length)
return
'''Rekursiv 1 Länge= 1000 * 0.5 '''
kameSan.pencolor("red")
forest(n-1, length * 0.5)
#85 Grad nach rechts drehen
#Von sanft bis scharf
kameSan.right(85)
'''Rekursive 2 Länge= 1000 ÷ 3 '''
kameSan.pencolor("blue")
forest(n-1, length / 3)
#170 Grad nach links drehen
#Zeichnen Sie eine scharfe Nadel in einer scharfen Kurve
kameSan.left(170)
'''Rekursive 3 Länge= 1000 ÷ 3 '''
kameSan.pencolor("green")
forest(n-1, length / 3)
#85 Grad nach rechts drehen
#Lande wieder in einer sanften Richtung
kameSan.right(85)
'''Rekursive 4 Länge= 1000 ÷ 0.38 '''
forest(n-1, length * 0.38)
if __name__ == '__main__':
#penup Keine Zeichnung, da der Stift angehoben ist
kameSan.penup()
#In Position bewegen
kameSan.setpos(270, -20)
#pendown Der Stift wird abgesenkt, sodass er von hier aus gezeichnet wird
kameSan.pendown()
#180 Grad nach links drehen
kameSan.left(180)
kameSan.speed(0)
forest(5)
kameSan.done()
Sie können sehen, welcher Code die Linie zeichnet und wie.
Recommended Posts