在可视化程序中有很多的效果是需要持续一段时间的,然后让这种效果停止的。
在这种情况下,使用一个定时器类,统一实现倒计时功能,就能够让程序更简洁。
程序中使用到的主要函数是:
millis():以整数形式返回自启动程序以来的毫秒数(千分之一秒)。此信息通常用于计时事件和动画序列。
下面的程序中展示了定时器类的实现以及它的用法:
运行环境:processing软件python模式,专栏之前的文章有安装介绍。
class Timer():
def __init__(self, time):
"time: (ms)"
self.start_time = millis()
self.total_time = time
def cacl_remain_time(self):
used_time = millis() - self.start_time
return self.total_time - used_time
def check_time_end(self):
return self.cacl_remain_time() > 0
def setup():
global t1
size(200, 200)
t1 = Timer(2e3)
def draw():
background(0)
if t1.check_time_end():
fill(200, 0, 0)
else:
fill(0, 200,0)
circle(100, 100, 30)
这个程序实现了定时两秒让红圆变绿的效果,所以就叫它“红绿灯小程序”吧。不熟悉python的面向对象语法的同学请自己学习并结合该程序进行实践哦~