科赫曲线是一种分形,其形态非常像雪花,因此又被称作科赫雪花、雪花曲线。

下面是用python的turtle包让我们来实时画一个

import turtledef koch(t,n): #定义一个函数 科赫曲线,完成绘画功能 if n < 5 : t.fd(n) return m = n/3 koch(t,m) t.lt(60) koch(t,m) t.rt(120) koch(t,m) t.lt(60) koch(t,m) def snowflake(t, n): # 画一朵雪花,每一边都是一个科赫曲线 for i in range(3): koch(t,n) t.rt(120) bob = turtle.Turtle()bob.color('black')bob.penup() # 画笔提起(不能画)bob.goto(-150,90) #去到这个点bob.pendown() # 画笔落下(开始画)snowflake(bob,300) # 调用函数开始画雪花turtle.mainloop()

效果图:

别看这么简短的代码,其实它内含的数学知识可不简单,科赫曲线的生成其实是一个递归的过程,通过不断地递归调用koch,我们可以形成一个不断由等边三角形组成的雪花。如文首所示的那样。维基百科更专业的解释是这样的:

给定线段AB,科赫曲线可以由以下步骤生成:

1. 将线段分成三等份(AC,CD,DB)

2. 以CD为底,向外(内外随意)画一个等边三角形DMC

用python画雪花-python画图——雪花(科赫曲线)相关推荐

  1. Python 与神奇的数学之科赫曲线

    切入正题之前,先让我们了解一下分形和分形几何. 分形(Fractal)一词,是 芒德勃罗 于1973年创造出来的,为不规则.支离破碎之意.其具有以非整数维形式充填空间的形态特征,通常被定义为" ...

  2. 【C语言】——C语言实现科赫雪花及科赫曲线

    1.题目描述: (1) 科赫雪花和科赫曲线 科赫曲线(Koch curve)是一个简单的分形(fractal)图形 给定一直线线段,把它等分三段,加入一个等边三角形,以三段的中间一段为底对齐,再去除该 ...

  3. python海龟图画koch雪花曲线_python画图——雪花(科赫曲线)

    科赫曲线是一种分形,其形态非常像雪花,因此又被称作科赫雪花.雪花曲线. 下面是用python的turtle包让我们来实时画一个 import turtle def koch(t,n): #定义一个函数 ...

  4. 用python画雪花 科赫曲线递归_【TCE的编程小讲堂】【Python】【第三期】如何画出科赫雪花?(下)...

    大家还记得上期讲的科赫雪花吗?我们上次讲过画出一条边的方法,大家看看代码复习一下 import turtle#包含turtle库 def koch(l): turtle.forward(l / 4)# ...

  5. python科赫曲线树叶_python画图——雪花(科赫曲线)

    科赫曲线是一种分形,其形态非常像雪花,因此又被称作科赫雪花.雪花曲线. 下面是用python的turtle包让我们来实时画一个 import turtle def koch(t,n): #定义一个函数 ...

  6. 用python画雪花 科赫曲线递归_python 画雪花 —科赫曲线的实现-Python 实用宝典

    漂亮的科赫曲线 科赫曲线是一种分形,其形态非常像雪花,因此又被称作科赫雪花.雪花曲线. 下面是用python的turtle包让我们来实时画一个如上图所示的雪花. import turtle def k ...

  7. python学习笔记 第五章(科赫雪花与科赫曲线)

    科赫曲线,也叫做雪花曲线.是一种分形几何,分形几何是一种迭代的几何图形,广泛存在于自然界中. 科赫曲线是一种迭代的图形,所以我们是可以利用python中的迭代法来绘制. 我们先考虑如何实现迭代. 首先 ...

  8. python算法分析与设计实验:科赫雪花实验

    算法分析与设计实验:科赫雪花实验 一.实验目的 1.熟悉python编程环境,包括程序安装 2.熟悉python基本语法 3.递归算法程序分析与调试 二.实验工具 Win10操作系统.python3. ...

  9. python绘制n阶科赫曲线线段_分形几何中科赫雪花的绘制

    目录分形几何在自然界中广泛存在(康托尔集.谢尔滨斯基三角形.门格海绵.龙形曲线.科赫曲线...),实际上分形几何是一种迭代的几何图形.本文主要讨论科赫曲线. 科赫曲线的绘制: import turtl ...

最新文章

  1. 未解决计算机主机与打印机,电脑无法与打印机连接 计算机网考题目2(12)
  2. python中的缩进问题_Python中的缩进问题
  3. 【LeetCode从零单排】No121 Best Time to Buy and Sell Stock
  4. 第15章 SpringBoot集成logging日志
  5. leetcode 90. 子集 II 思考分析
  6. Java面向对象基础接口和抽象的理解
  7. pico park无法连接至远程服务器,pico park怎么联机玩?pico park怎么邀请朋友一起玩?[多图]...
  8. [Buzz.Today]2012.04.29
  9. hdu 2191 (多重背包二进制优化)
  10. Google Calendar Sync_ 把 Microsoft Outlook 同步到 G...
  11. [转] PHP开发通用型标题图片功能
  12. Nginx专题:nginx+tomcat实现动静分离
  13. Autosar Configuration(五) Security之Csm配置
  14. 仿掌阅实现书籍打开动画
  15. 如何在命令行窗口运行某个文件夹下的exe程序
  16. 应聘经历-百度华为移动
  17. Arduino结合ESP8266 Serial WIFI模块访问远程服务器
  18. 【最全面详细解释】背包问题详解
  19. arm蜂鸣器程序 linux_Linux 下控制蜂鸣器发声的程序
  20. 计算机如何安装cpu风扇,cpu风扇怎么装(台式电脑安装步骤图)

热门文章

  1. 骨传导耳机的原理是什么,骨传导是智商税吗
  2. 树莓派python机器人程序_树莓派打造对话机器人 Python(转)
  3. matlab给xlabel/ylabel设置上标下标
  4. (1)敏捷方法之scrum
  5. 编译原理学习笔记(十二)
  6. 网易云音乐Android开源项目
  7. [ CTF ] WriteUp-2022 College Security Competition Byte Capture The Flag(字节跳动安全范儿高校挑战赛)
  8. SheetJS js-xlsx简介
  9. mybatis源码之执行insert代码分析
  10. 人人都是产品经理02-07章摘要