分形几何学的基本思想:客观事物具有自相似性的层次结构,局部和整体在形态,功能,信息,时间,空间等方面具有统计意义上的相似性,称为自相似性,自相似性是指局部是整体成比例缩小的性质。

我们先看一下我们最终要绘制的图形:

案例分析:

代码:

## 绘制分型树,末梢的树枝的颜色不同

import turtle

def draw_brach(brach_length):

if brach_length > 5:

if brach_length < 40:

turtle.color('green')

else:

turtle.color('red')

# 绘制右侧的树枝

turtle.forward(brach_length)

print('向前',brach_length)

turtle.right(25)

print('右转20')

draw_brach(brach_length-15)

# 绘制左侧的树枝

turtle.left(50)

print('左转40')

draw_brach(brach_length-15)

if brach_length < 40:

turtle.color('green')

else:

turtle.color('red')

# 返回之前的树枝上

turtle.right(25)

print('右转20')

turtle.backward(brach_length)

print('返回',brach_length)

def main():

turtle.left(90)

turtle.penup()

turtle.backward(150)

turtle.pendown()

turtle.color('red')

draw_brach(100)

turtle.exitonclick()

if __name__ == '__main__':

main()

以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持脚本之家。

python 画树 递归_python递归函数绘制分形树的方法相关推荐

  1. python画一个点_python – 如何绘制一个数据点?

    我有以下代码来绘制一条线和一个点: df = pd.DataFrame({'x': [1, 2, 3], 'y': [3, 4, 6]}) point = pd.DataFrame({'x': [2] ...

  2. python画同心圆程序_Python Turtle:使用circle()方法绘制同心圆

    I am not at this point interested in an efficient way of producing concentric circles: I want to see ...

  3. Python递归绘制分形树

    递归函数绘制分形树 分形几何学的基本思想:客观事物具有自相似性的层次结构,局部和整体在形态,功能,信息,时间,空间等方面具有统计意义上的相似性,称为自相似性,自相似性是指局部是整体成比例缩小的性质. ...

  4. 使用turtle库绘制分形树、太阳花、五角星

    1.太阳花的绘制 import turtleturtle.pencolor('red') # 画笔颜色 turtle.fillcolor('yellow') # 填充颜色turtle.begin_fi ...

  5. Python小例子——利用递归绘制分形树

    # -*- coding: utf-8 -*- """作者:宇轩亚40功能:利用递归绘制分形树 """ import turtledef d ...

  6. 「Python海龟画图」利用海龟画笔绘制分形树

    绘制旋转图形 功能要求 利用函数递归绘制由多条直线组成的旋转图形,每条直线的颜色随机产生:并且隐藏画笔.设置画笔的速度.设置画布的背景色. 实例代码 import turtle # 导入海龟模块imp ...

  7. python 绘制分形树

    # -*- coding: utf8 -*- """ 绘制分形树 """ import turtledeflection_angle = 2 ...

  8. Python绘制分形树

    Python绘制分形树 任务要求 1.树干初始长度为50. 2.每次绘制完成树枝时,画笔右转20度. 3.绘制下一段树枝时,长度减少15,.重复2-3操作直至终止. 4.终止条件:树枝长度小于5,此时 ...

  9. Algorithm之绘制分形树

    绘制分形树 1.1题目描述 如下图所示,先垂直绘制一根线段,然后在线段长度的三分之一处和三分之二处分别以固定夹角绘制另外两根线段,长度分别为原线段的2/3和1/3. 如此反复,直至线段长度小于某个较小 ...

最新文章

  1. 【javascript】函数调用的对象和方法
  2. apache tomcat部署web应用的三种实现方式
  3. Oracle 在Sqlplus 执行sql脚本文件。
  4. MYSQL基础笔记(三)-表操作基础
  5. jzoj4017-逃跑【0/1分数规划,线段树,dp】
  6. 加载resnet18的代码
  7. [Aaronyang] 写给自己的WPF4.5 笔记17[Page实现页面导航]
  8. [转载] Python字符串操作方法详解
  9. hdu 5437 Alisha’s Party 优先队列
  10. 经验模态分解python_EMD经验模态分解
  11. word怎样在方框内打勾/打叉 word方框打勾教程
  12. Leetcode刷题-459:重复的子字符串
  13. 苹果html 闪退,iPhone6 App闪退的解决办法 掌握这4点苹果App不再闪退
  14. 不知道RabbitMQ中Exchange类型Internal是什么意思?这边来~
  15. ultravnc 反向连接_C程序以反向显示链接列表
  16. python时间序列平稳性检验_Python量化投资基础:时间序列的平稳性检验
  17. 电脑计算机快捷键消失,电脑桌面快捷方式不见了
  18. 迈特二十能升到鸿蒙系统吗,华为鸿蒙OS 2.0系列Beta 2发布
  19. 薅羊毛常见问题合集——更新中
  20. 音乐平台程序源码分享

热门文章

  1. ASP.NET Core 运行原理解剖[1]:Hosting
  2. .net core依赖注入的封装
  3. 我为什么选择Angular 2?
  4. 第二章 指南(4.3)添加 View
  5. 文档数据库RavenDB-介绍与初体验
  6. python大数_python处理大数字的方法
  7. XunSearch的安装和加入服务器开机脚本以及将目录写入系统变量
  8. Android之数据转化崩溃问题
  9. C和指针之动态内存分配(读取范围在1和标准输入读取的size之前每个数据出现的次数)
  10. Android插件化开发基础之Java反射机制研究