Processing, draw()
用法介紹。
用法
draw()
返回
void
說明
在 setup()
之後直接調用,draw()
函數會連續執行其塊中包含的代碼行,直到程序停止或調用 noLoop()
。 draw()
是自動調用的,不應顯式調用。所有處理程序都會在draw() 結束時更新屏幕,絕不會更早。
要停止 draw()
內部的代碼連續運行,請使用 noLoop()
、 redraw()
和 loop()
。如果noLoop()
用於停止draw()
中的代碼運行,那麽redraw()
將導致draw()
中的代碼運行一次,loop()
將導致draw()
中的代碼恢複運行不斷地。
draw()
每秒執行的次數可以通過frameRate()
函數來控製。
通常在draw()
循環開始附近調用background()
來清除窗口的內容,如上麵的第一個示例所示。由於繪製到窗口的像素是累積的,因此省略 background()
可能會導致意外結果。
每個草圖隻能有一個 draw()
函數,如果您希望代碼連續運行,或者處理 mousePressed()
等事件,則必須存在 draw()
。有時,您的程序中可能對draw()
有一個空調用,如上麵的第二個示例所示。
例子
float yPos = 0.0;
void setup() { // setup() runs once
size(200, 200);
frameRate(30);
}
void draw() { // draw() loops forever, until stopped
background(204);
yPos = yPos - 1.0;
if (yPos < 0) {
yPos = height;
}
line(0, yPos, width, yPos);
}
void setup() {
size(200, 200);
}
// Although empty here, draw() is needed so
// the sketch can process user input events
// (mouse presses in this case).
void draw() { }
void mousePressed() {
line(mouseX, 10, mouseX, 90);
}
相關用法
- Processing default用法及代碼示例
- Processing displayDensity()用法及代碼示例
- Processing delay()用法及代碼示例
- Processing dist()用法及代碼示例
- Processing disconnectEvent()用法及代碼示例
- Processing displayHeight用法及代碼示例
- Processing directionalLight()用法及代碼示例
- Processing double用法及代碼示例
- Processing displayWidth用法及代碼示例
- Processing degrees()用法及代碼示例
- Processing day()用法及代碼示例
- Processing FFT用法及代碼示例
- Processing SawOsc.pan()用法及代碼示例
- Processing FloatDict用法及代碼示例
- Processing FFT.stop()用法及代碼示例
- Processing join()用法及代碼示例
- Processing () (parentheses)用法及代碼示例
- Processing Pulse用法及代碼示例
- Processing PShader用法及代碼示例
- Processing PVector.set()用法及代碼示例
- Processing FloatDict.sortKeysReverse()用法及代碼示例
- Processing texture()用法及代碼示例
- Processing IntDict.add()用法及代碼示例
- Processing PShape.enableStyle()用法及代碼示例
- Processing FloatDict.sub()用法及代碼示例
注:本文由純淨天空篩選整理自processing.org大神的英文原創作品 draw()。非經特殊聲明,原始代碼版權歸原作者所有,本譯文未經允許或授權,請勿轉載或複製。