目录
- 一、"科赫雪花小包裹"问题分析
- 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 分形几何千千万
- 康托尔集、谢尔宾斯基三角形、门格海绵…
- 龙形曲线、空间填充曲线、科赫曲线…
- 函数递归的深入应用…