目录一、”科赫雪花小包裹”问题分析1.1 科赫雪花1.2 用Python绘制科赫曲线二、”科赫雪花小包裹”实例讲解(上)2.1 科赫曲线的绘制2.2 科赫雪花的绘制三、”科赫雪花小包裹”实例讲解(下)四、”科赫雪花小包裹”举一反三4.1 绘制条件的扩展4.2 分形几何千千万
一、"科赫雪花小包裹"问题分析
1.1 科赫雪花
高大上的分形几何
分形几何是一种迭代的几何图形,广泛存在于自然界中
科赫曲线,也叫雪花曲线
1.2 用Python绘制科赫曲线
二、"科赫雪花小包裹"实例讲解(上)
2.1 科赫曲线的绘制
递归思想:函数+分支
递归链条:线段的组合
递归基例:初识线段
# KochDrawV1.py
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()
2.2 科赫雪花的绘制
# KochDrawV1.py
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)
urtle.penup()
turtle.goto(-200, 100)
turtle.pendown()
turtle.pensize(2)
level = 3 # 3阶科赫雪花,阶数
koch(400, level)
turtle.right(120)
koch(400, level)
turtle.right(120)
koch(400, level)
turtle.hideturtle()
main()
三、"科赫雪花小包裹"实例讲解(下)
打包才能上路…
pyinstaller –i curve.ico –F KochDrawV2.py
对编写后的科赫雪花代码进行打包处理
四、"科赫雪花小包裹"举一反三
4.1 绘制条件的扩展
修改分形几何绘制阶数
修改科赫曲线的基本定义及旋转角度
修改绘制科赫雪花的基础框架图形
4.2 分形几何千千万
康托尔集、谢尔宾斯基三角形、门格海绵…
龙形曲线、空间填充曲线、科赫曲线…
函数递归的深入应用…