2014-03-30 41 views
-2

我有以下閃爍紅色和白色的程序。每10秒鐘有一次時間間隔保持穩定,持續數秒鐘,然後再次閃爍。處理中閃爍的兩種顏色之間的時間間隔

float delay = 1; 

    void setup() { 
     size(200, 200); 
    } 


    void draw() { 
     background(96); 
     fill(255); 
     if(frameCount%(2*delay)<delay) fill(255, 0, 0); 
     rect(50, 50, 100, 100); 
    } 
+3

有什麼問題嗎? – computerfreaker

+0

問題是如何停止並重新啓動一個程序。如何停止「閃爍」並在一段時間後重新啓動。 – Vassilis

回答

2

應用到你的代碼一個簡單的計時器的一個簡單的例子:

int delay = 1000;// ONE SEC 
int now; 
//a flag 
boolean red = false; 

void setup() { 
    size(200, 200); 
    //start the counter 
    now = millis(); 
} 


void draw() { 
    background(96); 
    if (millis() - now > delay) { 

    //change flag 
    red = !red; 

    //reset counter 
    now = millis(); 
    } 


    if (red) 
    fill(255, 0, 0); 
    else 
    fill(255); 
    rect(50, 50, 100, 100); 
}