使用python制作动画的案例-创新互联
这篇文章给大家分享的是有关使用python制作动画的案例的内容。小编觉得挺实用的,因此分享给大家做个参考。一起跟随小编过来看看吧。
让客户满意是我们工作的目标,不断超越客户的期望值来自于我们对这个行业的热爱。我们立志把好的技术通过有效、简单的方式提供给客户,将通过不懈努力成为客户在信息化领域值得信任、有价值的长期合作伙伴,公司提供的服务项目有:国际域名空间、雅安服务器托管、营销软件、网站建设、五指山网站维护、网站推广。Python真的是无穷的好用,涉及内容非常广泛,比如接下来给大家介绍的制作动画,就可以利用python实现,感兴趣的小伙伴一起来看下吧~
制作步骤:
在一开始导入我们的库,turtle (绘制几何图形),random (产生随机颜色和高度值)
import turtle as t #导入turtle库,并该起了个外号为t import random as r
编写一个画长方形的自定义函数,rect()。4个参数分别是长方形的高,颜色,x,y坐标值。
def rect(h, c, x,y): t.goto(x, y) #画笔移到特定位置 t.fillcolor(c) #设置填充颜色 t.begin_fill() for i in range(2): #画长方形 t.fd(20) t.lt(90) t.fd(h) t.lt(90) t.end_fill()
绘制16个长方形,先要产生16种随机颜色存放到列表c中,形成静态条形图。
c = [] for i in range(16): #设置16中随机颜色 c.append((r.random(),r.random(),r.random())) t.speed(11) #绘图的速度设置为11 x = -180 t.tracer(False) #关闭轨迹快速绘图 for i in range(16): h = r.randint(20,220) rect(h, c[i], x, 0) x = x + 20 #下一个长方形x坐标值
绘制6666幅静态条形图图案,并且注意停留时间的技巧。
for j in range(6666): #绘制6666次 x = -180 t.tracer(False) for i in range(16): h = r.randint(20,220) rect(h, c[i], x, 0) x = x + 20 t.tracer(True) #打开轨迹让绘制速度变慢 t.circle(1) #画一个半径为1像素的圆,为了停留一段时间 t.tracer(False) t.clear()
最后,呈现完整代码:
import turtle as t import random as r def rect(h, c, x, y): t.goto(x, y) t.fillcolor(c) t.begin_fill() for i in range(2): t.fd(20) t.lt(90) t.fd(h) t.lt(90) t.end_fill() c = [] for i in range(16): c.append((r.random(),r.random(),r.random())) t.speed(11) for j in range(6666): x = -180 t.tracer(False) for i in range(16): h = r.randint(20,220) rect(h, c[i], x, 0) x = x + 20 t.tracer(True) t.circle(1) t.tracer(False) t.clear()
总结:
理解整个目标动画的关键在完整代码的最后4句。通过笔迹显示和画一个小圆为每幅图争取停留时间,可以调节我们动画的快慢。最后接到要清屏t.clear()。
t.tracer(True) t.circle(1) t.tracer(False) t.clear()
感谢各位的阅读!关于使用python制作动画的案例就分享到这里了,希望以上内容可以对大家有一定的帮助,让大家可以学到更多知识。如果觉得文章不错,可以把它分享出去让更多的人看到吧!
当前题目:使用python制作动画的案例-创新互联
文章地址:http://azwzsj.com/article/csgeei.html