turtle爆炸粒子效果源码

你好,请进入Q群:225792826,免费下载本站最新提供的视频教程原创源码资料,从2020年2月20号到3月底,成为本站会员只要原价的3折,即2980元*0.3 = 894元 ,向微信scratch8付款即可成为本站会员。即可拥有本站所有原创资源,并提供技术支持。如本消息修改,以最后时间的为准。

turtle explode particle爆炸粒子效果
turtle explode particle爆炸粒子效果

本程序只有一个海龟对象,可是为什么会有这么多粒子呢?以下是部分代码预览:

"""
   爆炸粒子效果,本程序实现了一个爆炸类。它生成的对象可重复使用爆炸方法。
   所有粒子都是画出来的,它们飞出后速度会越来越慢直到消失。
   相对于传统的编程方法,需要生成很多对象,而本程序只用一个对象,从而大大节约CPU及内存资源。
   
"""
import time
from turtle import  *
from random import *

__author__ = '李兴球'
__date__ = '2019/10/3'

class Explosion(Turtle):
    """
       继承自Turtle的爆炸类,生成一定数量的点,这些点的坐标存储在cors列表中。
       
    """
    def __init__(self,color,pos=(0,0)):
        Turtle.__init__(self,visible=False)
        self.color(color)                 # 粒子颜色
        self.initpos = pos                # 爆炸坐标
        self.up()                         # 抬笔
        self.amounts = 100                # 粒子数量 
        self.init()                       # 初始化其它

def main():
    """
       主要执行函数
    """

    colors = ['red','orange','yellow','green','cyan','blue',
              'purple','pink','magenta','brown']
    
    width,height = 480,360
    screen = Screen()
    screen.bgcolor("white")
    screen.title("爆炸粒子效果 by lixingqiu")
    screen.tracer(0,0)

    ps = []
        
    def 爆炸():
        [e.explode() for e in ps]
        screen.ontimer(爆炸,3000)

    爆炸()
    screen.mainloop()     

if __name__ == "__main__":

    main()     
        

 
如需要查看完整源代码,请扫码付款:

VIP免费查看

已有0人支付

本站所有作品,教程等皆为原创,盗版必究。一旦付款,表示同意本站知识付费原则:数字商品,不支持退款。亦可直接向微信号scratch8付款购买。QQ群免费教学群:225792826 (提供真实姓名可入群)
李兴球的博客_Python创意编程技术前沿 » turtle爆炸粒子效果源码

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

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