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

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()
    

 

VIP免费查看

已有0人支付

本站所有作品,教程等皆为原创,盗版必究。一旦付款,表示同意本站知识付费原则:数字商品,不支持退款。扫码付款后的朋友可以加QQ: 406273900,提供技术支持及发送作品图片与配音素材。亦可直接向微信号scratch8付款购买。
李兴球的博客_Python创意编程技术前沿 » 递归三角分形动态演示图源代码

学本领,探索更大的世界!

李兴球博客 风火轮编程主页