Python小例子——利用递归绘制分形树
# -*- coding: utf-8 -*-
"""作者:宇轩亚40功能:利用递归绘制分形树
"""
import turtledef draw_branch(branch_length):"""绘制分型树"""if branch_length > 5:#绘制右侧树枝turtle.forward(branch_length)print('向前', branch_length)turtle.right(20)print('右转 20')draw_branch(branch_length - 15)#绘制左侧树枝turtle.left(40)print('左转 40')draw_branch(branch_length - 15)#返回之前的树枝路径turtle.right(20)print('右转 20')turtle.backward(branch_length)print('向后', branch_length)def main():"""主函数"""turtle.left(90)turtle.penup()turtle.backward(100)turtle.pendown()turtle.color('red')draw_branch(80)turtle.exitonclick()
if __name__ == '__main__':main()
运行上述程序,结果如下图所示:
同时,程序还会显示如下的运行结果:
向前 80
右转 20
向前 65
右转 20
向前 50
右转 20
向前 35
右转 20
向前 20
右转 20
左转 40
右转 20
向后 20
左转 40
向前 20
右转 20
左转 40
右转 20
向后 20
右转 20
向后 35
左转 40
向前 35
右转 20
向前 20
右转 20
左转 40
右转 20
向后 20
左转 40
向前 20
右转 20
左转 40
右转 20
向后 20
右转 20
向后 35
右转 20
向后 50
左转 40
向前 50
右转 20
向前 35
右转 20
向前 20
右转 20
左转 40
右转 20
向后 20
左转 40
向前 20
右转 20
左转 40
右转 20
向后 20
右转 20
向后 35
左转 40
向前 35
右转 20
向前 20
右转 20
左转 40
右转 20
向后 20
左转 40
向前 20
右转 20
左转 40
右转 20
向后 20
右转 20
向后 35
右转 20
向后 50
右转 20
向后 65
左转 40
向前 65
右转 20
向前 50
右转 20
向前 35
右转 20
向前 20
右转 20
左转 40
右转 20
向后 20
左转 40
向前 20
右转 20
左转 40
右转 20
向后 20
右转 20
向后 35
左转 40
向前 35
右转 20
向前 20
右转 20
左转 40
右转 20
向后 20
左转 40
向前 20
右转 20
左转 40
右转 20
向后 20
右转 20
向后 35
右转 20
向后 50
左转 40
向前 50
右转 20
向前 35
右转 20
向前 20
右转 20
左转 40
右转 20
向后 20
左转 40
向前 20
右转 20
左转 40
右转 20
向后 20
右转 20
向后 35
左转 40
向前 35
右转 20
向前 20
右转 20
左转 40
右转 20
向后 20
左转 40
向前 20
右转 20
左转 40
右转 20
向后 20
右转 20
向后 35
右转 20
向后 50
右转 20
向后 65
右转 20
向后 80
Python小例子——利用递归绘制分形树相关推荐
- Python递归绘制分形树
递归函数绘制分形树 分形几何学的基本思想:客观事物具有自相似性的层次结构,局部和整体在形态,功能,信息,时间,空间等方面具有统计意义上的相似性,称为自相似性,自相似性是指局部是整体成比例缩小的性质. ...
- python手动绘图案例_python绘图案例——递归绘制分形树
运行效果图 案例分析: 1.树干初始值为50 2.每次绘制完树枝后,画笔右转20度 3.绘制下一段树枝时,长度减少15,.重复2--3操作直到终止 4.终止条件:树干长度小于5,此时为顶端树枝 5.达 ...
- python绘图案例——递归绘制分形树
运行效果图 案例分析: 1.树干初始值为50 2.每次绘制完树枝后,画笔右转20度 3.绘制下一段树枝时,长度减少15,.重复2--3操作直到终止 4.终止条件:树干长度小于5,此时为顶端树枝 5.达 ...
- 使用turtle库绘制分形树、太阳花、五角星
1.太阳花的绘制 import turtleturtle.pencolor('red') # 画笔颜色 turtle.fillcolor('yellow') # 填充颜色turtle.begin_fi ...
- 「Python海龟画图」利用海龟画笔绘制分形树
绘制旋转图形 功能要求 利用函数递归绘制由多条直线组成的旋转图形,每条直线的颜色随机产生:并且隐藏画笔.设置画笔的速度.设置画布的背景色. 实例代码 import turtle # 导入海龟模块imp ...
- python 画八角形_GitHub - xuedengyue/Turtle_Drawing: 利用Turtle递归绘制分形几何图形
Turtle_Drawing 利用Turtle递归绘制分形几何图形 一.Turtle的常用方法 方法 描述 turtle.forward(distance) 向当前画笔方向移动distance像素长度 ...
- Python绘制分形树
Python绘制分形树 任务要求 1.树干初始长度为50. 2.每次绘制完成树枝时,画笔右转20度. 3.绘制下一段树枝时,长度减少15,.重复2-3操作直至终止. 4.终止条件:树枝长度小于5,此时 ...
- python 绘制分形树
# -*- coding: utf8 -*- """ 绘制分形树 """ import turtledeflection_angle = 2 ...
- 这42个Python小例子,太走心~
告别枯燥,60秒学会一个Python小例子.奔着此出发点,我在过去1个月,将平时经常使用的代码段换为小例子,分享出来后受到大家的喜欢. 一.基本操作 1 链式比较 . i = 3 print(1 &l ...
最新文章
- IPFS中国社区丨最简单全面介绍IPFS
- x³+y³+z³=3第三组整数解是多少,这个58年难题被40万台电脑算出来了
- C语言--switch case语句
- when is IBASE status changed from inital to created - not answered
- 离散型随机变量及其分布列习题
- 光纤收发器的选购原则介绍
- Android Studio 超级简单的打包生成apk
- Codeforces Round #533 (Div. 2) C.思维dp D. 多源BFS
- LINUX/CentOS防CC***脚本
- python小技巧 - 如何成为Python高手
- linux如何打开elf文件格式,linux ELF文件格式
- ubuntu20.04 安装Dukto
- 汇编串操作程序设计 计算X+(Y-Z)=W
- 日文輸入法学习和日文键盘图
- 用星号打印出一个如图所示的空心菱形
- phpcms环境检测MySQL_WNMP nginx+php5+mysql测试环境安装(Windows7)(一)
- uniapp 微信小程序 保存图片到本地
- 云服务器安装软件,如何在云服务器中安装软件
- 关于测试,我发现了哪些新大陆
- 我们“看到”的物联网,未来真正走向领域是这些方面....
热门文章
- 数据库应用——MySQL函数
- php-bease源码加密扩展,PHP代码加密详细教程
- 【过程控制】基于matlab GUI串级控制【含Matlab源码 2385期】
- 【洞见研报】研报速读:中国奶酪行业简报——中国奶酪市场发展向好,本土乳企强势破局
- GATK使用说明-GRCh38(Genome Reference Consortium)(二)
- python cv2.HoughCircles 霍夫圆检测
- SD销售订单退货,冲销,拆分开票,借贷凭证操作笔记
- org.springframework.data.redis.RedisSystemException: Error in execution; nes遇到springboot连接Redis报错
- 电力拖动自动控制系统
- 2023年机器人与人工智能国际会议(JCRAI 2023)