递归三角分形动态演示图源代码

递归三角分形动态演示图源代码

python turtle 递归三角分形动态演示图

python turtle 递归三角分形动态演示图

python turtle 递归三角分形动态演示图


这个动画演示了递归的过程。以下是部分代码预览:

"""
   递归三角分形动态演示图,总的来说就是画一个三角形后在它周围画三个更小的三角形。
   不断地递归这个过程,直到层数为0。本程序运行结果会保存一些ps图片。
   当然,也可以直接通过ghostscript再次保存为png,然后合成gif图片。
"""
import time
import turtle as t

def draw_triangle(x,y,s,angle):
    """
       x,y:起点坐标
       s:边长
       angle:起始角度
       本程序从三角形底边中心点开始画
    """
    t.up()                 # 抬笔
    t.seth(angle)          # 设置角度
    t.goto(x,y)            # 坐标定位
    t.fd(s/3**0.5)         # 前进s除以根号3
    t.right(150)           # 右转
    t.down()               # 落笔
    t.begin_fill()         # 开始填充
    t.fd(s)                # 前进s
    t.right(120)           # 右转
    t.fd(s)                # 前进s
    t.right(120)           # 右转
    t.fd(s)                # 前进s
    t.end_fill()           # 结束填充   

def main():
    """主要执行函数"""
    
    screen = t.Screen()          # 新建屏幕对象
    screen.setup(1000,800)       # 设置屏幕宽高
    screen.tracer(0,0)           # 关闭动画与延时为0
    t.color("#029F80") 
    screen.title('递归三角分形动态演示图 by 李兴球')
    t.hideturtle()
     
if __name__ == "__main__":

    main()
    

成为会员后,登陆才能继续浏览!联系微信scratch8即可办理会员。
(会员专属:能浏览所有文章,下载所有带链接的Python资源。)

李兴球

李兴球的博客是Python创意编程原创博客

评论已关闭。