Processing 实现 定时器
2016-01-28 09:32
267 查看
想用Processing实现一个类似 单片机 中的定时器,参考文献中使用了 millis() 函数(获取系统运行时间),写了一个 CTimer 类,原代码会有一个报错:
原因(似乎)是 Timer 是Processing里的一个内部类……So,改名叫CTimer了。
例子中先定义了一个 CTimer 类,然后实例化一个 timer1 对象,设置为1000ms(中断/执行)一次,每隔1s换一下背景色:
注意Processing(Java)中 static 和C中的用法不同,如果写在函数中,会报错:
参考自:
请问processing中可以设置定时器吗?
The nested type (Node) cannot hide an enclosing type
原因(似乎)是 Timer 是Processing里的一个内部类……So,改名叫CTimer了。
例子中先定义了一个 CTimer 类,然后实例化一个 timer1 对象,设置为1000ms(中断/执行)一次,每隔1s换一下背景色:
class CTimer { int savedTime; int totalTime; CTimer(int tempTotalTime) { totalTime = tempTotalTime; } void start() { savedTime = millis(); } boolean isFinished() { int passedTime = millis()- savedTime; if (passedTime > totalTime) { return true; } else { return false; } } } CTimer timer1; static int i=0; void setup() { size(200,200); background(255,0,0); //设置背景为红色 timer1 = new CTimer(1000); //设置定时时间为 1000 ms timer1.start(); } void draw() { if ( timer1.isFinished() ) { i++; if(i%2==1){ background(0,255,0); //设置背景为绿色 }else{ background(255,0,0); //设置背景为红色 } timer1.start(); } }
注意Processing(Java)中 static 和C中的用法不同,如果写在函数中,会报错:
Illegal Modifier for Parameter - Only final Permitted
参考自:
请问processing中可以设置定时器吗?
相关文章推荐
- Thinkpad W520 完美安装Ubuntu14.04LTS
- webpack入门(二)what is webpack
- 如何打造一个面向业务的平台
- Spark的性能调优
- iOS设计模式——单例模式
- Android Animation动画(很详细)
- iOS程序猿之iOS动画基础
- Andorid开发常用牛逼组件下载地址
- 格式化输出
- java生成验证码图片,包括动态gif图片格式
- 基本功能使用ngrok内网映射外网
- WAMP设置虚拟主机
- 字符串哈希模版
- @property 的作用
- Cross-compiling GNU libmicrohttpd for OpenWRT
- GregorianCalendar 当前时间的昨天18点
- C# 快速使用protobuf的简单方法
- Spark算子:RDD键值转换操作(2)–combineByKey、foldByKey
- 《剑指offer》-从尾到头打印链表
- css 中间固定两边自适应宽度