Turtle 08.09
This commit is contained in:
+35
-2
@@ -3,7 +3,7 @@ import turtle
|
|||||||
def draw_square(t, size):
|
def draw_square(t, size):
|
||||||
for i in range(4):
|
for i in range(4):
|
||||||
t.forward(size)
|
t.forward(size)
|
||||||
t.right(90)
|
t.left(90)
|
||||||
|
|
||||||
# draw_square(turtle, 100)
|
# draw_square(turtle, 100)
|
||||||
|
|
||||||
@@ -29,4 +29,37 @@ def draw_recursive_tree(t, size, größe):
|
|||||||
t.left(30)
|
t.left(30)
|
||||||
t.backward(size)
|
t.backward(size)
|
||||||
turtle.left(90)
|
turtle.left(90)
|
||||||
draw_recursive_tree(turtle, 100, 5)
|
#draw_recursive_tree(turtle, 100, 5)
|
||||||
|
# Ich möchte einen Code schreiben der erst ein 64 Quadrat zeichnet
|
||||||
|
# und dann rekursiv immer zwei halb so große Quadrate oben links und rechts über das ursprüngliche Quadrat zeichnet.
|
||||||
|
# Bis die Seitenlänge = 1 ist.
|
||||||
|
def draw_recursive_squares(t, length):
|
||||||
|
if length < 1:
|
||||||
|
return
|
||||||
|
|
||||||
|
draw_square(t, length)
|
||||||
|
|
||||||
|
# Position des aktuellen Quadrats
|
||||||
|
x = t.xcor()
|
||||||
|
y = t.ycor()
|
||||||
|
|
||||||
|
# Turtle für oben links
|
||||||
|
left_turtle = t.clone()
|
||||||
|
left_turtle.penup()
|
||||||
|
left_turtle.goto(x - length * 1.5, y + length)
|
||||||
|
left_turtle.pendown()
|
||||||
|
|
||||||
|
# Turtle für oben rechts
|
||||||
|
right_turtle = t.clone()
|
||||||
|
right_turtle.penup()
|
||||||
|
right_turtle.goto(x + length , y + length)
|
||||||
|
right_turtle.pendown()
|
||||||
|
|
||||||
|
# Beide Äste rekursiv weiterführen
|
||||||
|
draw_recursive_squares(left_turtle, length / 2)
|
||||||
|
draw_recursive_squares(right_turtle, length / 2)
|
||||||
|
|
||||||
|
turtle.speed(10)
|
||||||
|
draw_recursive_squares(turtle, 64)
|
||||||
|
|
||||||
|
turtle.done()
|
||||||
Reference in New Issue
Block a user