Python科勒曲线及科勒雪花
科赫曲线是一种分形。其形态似雪花,又称科赫雪花、雪花曲线,而科赫雪花是以等边三角形三边生成的科赫曲线组成的。
1.科勒曲线的Python代码实现:
import turtle as t
def koch(size,n): #科勒曲线绘制函数
if n == 0:
t.fd(size)
else:
for angle in [0,60,-120,60]:
t.left(angle) #按照0,60,-120,60逆时针旋转画笔
koch(size/3,n-1) #递归绘制图形
t.speed(1000)
def main():
t.setup(800, 400) #设置画布大小
t.color("blue") #设置画笔颜色
t.penup() #提起画笔
t.goto(-300,-50) #设置画笔的起始位置
t.pendown() #落下画笔
t.pensize(1) #画笔大小
koch(600,3) #向绘制函数传参(大小为600,阶数为3的科勒曲线)
t.hideturtle() #隐藏画笔
t.done() #turtle结束语句,使绘制图形持续显示
main()
图形如下:
2.科勒雪花的Python代码实现:
import turtle as t
def koch(size,n):
if n == 0:
t.fd(size)
else:
for angle in [0,60,-120,60]:
t.left(angle)
koch(size/3,n-1)
t.speed(10000000)
def main():
t.setup(800, 400)
t.color("blue")
t.penup()
t.goto(-300,-50)
t.pendown()
t.pensize(1)
koch(200,3)
t.right(120) #将画笔顺时针旋转120,再次绘制科勒曲线
koch(200,3) #共绘制3次,即可绘制出科勒雪花
t.right(120)
koch(200,3)
t.right(120)
t.hideturtle()
t.done()
main()
图形如下:
敲一遍就可以懂了。