Python使用Turtle绘制分形树

2020/02/25

Python使用Turtle绘制分形树

效果如下:

Code:

 1 '''
 2     作者:清扬
 3     功能:利用递归绘制分型树
 4     版本:1.0
 5     日期:2020/02/25
 6 '''
 7 
 8 import turtle
 9 
10 def draw_branch(branch_length):
11     '''
12         绘制分型树
13         :param branch_length:
14         :return:
15     '''
16     if branch_length > 5:
17         if branch_length > 10:
18             turtle.pensize(10)
19             turtle.color('brown')
20         else:
21             turtle.pensize(5)
22             turtle.color('green')
23 
24         # 绘制右侧树枝
25         turtle.forward(branch_length)
26 
27 
28         print('向前',branch_length)
29         turtle.right(20)
30         print('右转 20')
31         draw_branch(branch_length-15)
32 
33         # 绘制左侧树枝
34         turtle.left(40)
35         print('左转 40')
36         draw_branch(branch_length-15)
37 
38         #返回之前的树枝上
39         print('右转 20')
40         turtle.right(20)
41 
42         turtle.penup()
43         turtle.backward(branch_length)
44         turtle.pendown()
45 
46         print('向后',branch_length)
47 
48 def main():
49     '''
50         主函数
51     '''
52     turtle.left(90)
53     turtle.penup()
54     turtle.backward(200)
55     turtle.pendown()
56     turtle.color('brown')
57     print('左转 90')
58     turtle.speed(5000)
59     draw_branch(100);
60     turtle.exitonclick() 
61 
62 if __name__ == '__main__':
63     main()

 

posted @ 2020-02-25 13:14  厸清扬  阅读(1414)  评论(0编辑  收藏  举报