科赫曲线
一个过程进行不断地迭代
使用递归和海龟
科赫曲线的绘制(做一条直线,将中间的一段去掉,然后做一个凸起,形成科赫曲线)
递归思想:函数+分支
递归链条:线段的组合
递归基例:初识线段
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(800,400)
turtle.penup()
turtle.goto(-300,-50)
turtle.pendown()
turtle.pensize(2)
koch(600,3) #3阶科赫曲线,阶数
turtle.hideturtle()
main()
科赫雪花就是在科赫曲线的基础上添加
对三角形的每个边进行分形
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(6000)
turtle.penup()
turtle.goto(-200,100)
turtle.pendown()
turtle.pensize(2)
koch(400,level)
turtle.right(120)
koch(400,level)
turtle.right(120)
koch(400,level)
turtle.right(120)
turtle.hideturtle(0
main()
举一反三