-
Notifications
You must be signed in to change notification settings - Fork 0
/
Copy pathturtleTree.py
68 lines (47 loc) · 1.02 KB
/
turtleTree.py
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
#用turtle画一棵漂亮的小树。github更名失败
import turtle
window = turtle.Screen()
window.colormode(255)
myTurtle = turtle.Turtle(shape='turtle')
myTurtle.left(90)
lv = 13
l = 120
s = 45
myTurtle.width(lv)
r = 0
g = 0
b = 0
myTurtle.pencolor('black')
myTurtle.penup()
myTurtle.backward(l)
myTurtle.pendown()
myTurtle.forward(l)
def draw_tree(l, level):
global r, g, b
# save the current pen width
w = myTurtle.width()
# narrow the pen width
myTurtle.width(w * 3.0 / 4.0)
# set color:
r += 1
g += 2
b += 3
myTurtle.pencolor(r % 200, g % 200, b % 200)
l = 3.0 / 4.0 * l
myTurtle.left(s)
myTurtle.forward(l)
if level < lv:
draw_tree(l, level + 1)
myTurtle.backward(l)
myTurtle.right(2 * s)
myTurtle.forward(l)
if level < lv:
draw_tree(l, level + 1)
myTurtle.backward(l)
myTurtle.left(s)
# restore the previous pen width
myTurtle.width(w)
myTurtle.pencolor()
myTurtle.speed(0)
draw_tree(l, 4)
turtle.done()