温馨提示×

温馨提示×

您好,登录后才能下订单哦!

密码登录×
登录注册×
其他方式登录
点击 登录注册 即表示同意《亿速云用户服务条款》

Python怎么实现谢尔宾斯基三角形

发布时间:2021-08-12 15:15:02 来源:亿速云 阅读:338 作者:chen 栏目:大数据

这篇文章主要讲解了“Python怎么实现谢尔宾斯基三角形”,文中的讲解内容简单清晰,易于学习与理解,下面请大家跟着小编的思路慢慢深入,一起来研究和学习“Python怎么实现谢尔宾斯基三角形”吧!


 

谢尔宾斯基三角形

谢尔宾斯基(sierpinskr)三角形也是一种分形构造,平面称之为谢尔宾斯基三角形,立体的叫做谢尔宾斯基金字塔

Python怎么实现谢尔宾斯基三角形

谢尔宾斯基三角形从理解上就是给定一个三角形,以“品”字形在里面堆叠三角形,每一层(degree)的三角形边长都是原三角形一半

  • 白色部分:空白

  • 黑色部分:拼接的sierpinskr三角形

  • degree:程度,堆叠的次数

Python怎么实现谢尔宾斯基三角形

本文由“壹伴编辑器”提供技术支持

 

谢尔宾斯基三角形作图思路

根据自相似性,谢尔宾斯基三角形是由3个尺寸减半的sierpinskr三角形按“品”字形拼叠成的

Python怎么实现谢尔宾斯基三角形

在degree有限(堆叠次数有限)的情况下,degree=n的三角形是由三个degree=n-1的三角形按“品”字形堆叠的。同时这三个degree=n-1的三角形边长均为degree=n的三角形的一半。当degree=0时,则无法再堆叠了

  • 规模减小:degree=n-1的三角形边长是degree=n的三角形的一半

  • 基本结束条件:degree=0(不能再拼接了)


       

函数参数设置:


points = { 'left': (x, y), 'top': (x, y), 'right': (x, y) }

points是一个字典,存储三角形三个点的坐标。每个坐标又是一个元组

Python怎么实现谢尔宾斯基三角形

绘图顺序:

  1. 先画左三角形

  2. 再画上三角形

  3. 最后画右边三角形


三角形绘图顺序:

  1. 先描三角形左点 left

  2. 再描三角形顶点 top

  3. 最后描三角形右点 right


       


本文由“壹伴编辑器”提供技术支持

 

代码

Python怎么实现谢尔宾斯基三角形

运行结果:

Python怎么实现谢尔宾斯基三角形

 

递归的理解

递归在理解上可以理解为循环,如果递归调用的后面还有程序则可以理解为循环的嵌套。当前递归循环结束时,程序会跳转到基本结束条件的上一层循环继续执行后面的程序


感谢各位的阅读,以上就是“Python怎么实现谢尔宾斯基三角形”的内容了,经过本文的学习后,相信大家对Python怎么实现谢尔宾斯基三角形这一问题有了更深刻的体会,具体使用情况还需要大家实践验证。这里是亿速云,小编将为大家推送更多相关知识点的文章,欢迎关注!

向AI问一下细节

免责声明:本站发布的内容(图片、视频和文字)以原创、转载和分享为主,文章观点不代表本网站立场,如果涉及侵权请联系站长邮箱:is@yisu.com进行举报,并提供相关证据,一经查实,将立刻删除涉嫌侵权内容。

AI