先上科赫雪花代码:
from turtle import *
def koch(size,n):if n==0:fd(size)else:for angle in [0,60,-120,60]:left(angle)koch(size/3,n-1)
def main():setup(600,600)penup()goto(-200,100)pendown()speed(50)pensize(2)level=3 #雪花的阶数,这里为三阶koch(400,level) #控制雪花边的精细程度right(120) koch(400,level)right(120)koch(400,level)hideturtle()done()
main()
运行结果如下:
接着我们根据以上代码进行角度上和阶数上的更改,即可得出:
from turtle import *
def koch(size, n):if n == 0:fd(size)else:for angle in [0, 90, 90, 270, -90, 90, 270, -90, 90, 270, -90, 90, 90]:left(angle)koch(size/4, n-1)
def main():setup(600, 600)penup()goto(-50,100)pendown()pensize(5)speed(50)level = 1 koch(100, level)right(45) koch(100, level)right(45)koch(100, level)right(45)koch(100, level)right(45)koch(100, level)right(45)koch(100, level)right(45)koch(100, level)right(45)koch(100, level)hideturtle()
main()
运行结果如下: