科赫曲线
原创
©著作权归作者所有:来自51CTO博客作者算法与编程之美的原创作品,请联系作者获取转载授权,否则将追究法律责任
0 引言
日常生活中你是否留意过一些图案,就比如说雪花形状等,你是否想过利用python中某种方法去画出一朵精美的雪花图案呢?
1 问题
如何运用python中你所学到的知识,去画出一些日常生活中你所看到的图案,就比如说画出一朵精美的雪花图案。
2 方法
我们这里使用python中的第三方库turtle库,以及利用科赫曲线(科赫曲线是一种雪花的几何曲线,所有称雪花曲线)去画出一朵精美的雪花图案。
3 实验结果与讨论
通过实验、实践等证明提出的方法是有效的,是能够解决开头提出的问题。
代码清单 1
import turtle
def koch(size,n):
if n == 0:
turtle.fd(size)
else:
for angle in [0,60,-120,60]:
turtle.left(angle)
koch(size/3,n-1)
def main():
turtle.setup(600,600)
turtle.speed()
turtle.penup()
turtle.goto(-200,100)
turtle.pendown()
turtle.pensize(2)
level = 5
koch(400,level)
turtle.right(120)
koch(400,level)
turtle.right(120)
koch(400,level)
turtle.hideturtle()
turtle.done()
main()
4 结语
针对绘制雪花图案问题,提出是用turtle库方法,利用科赫曲线证明该方法是有效的,我们还可以进一步拓展,比如把三边改为四边,再去绘制一些其他图形。