当前位置: 首页>>代码示例 >>用法及示例精选 >>正文


Processing draw()用法及代码示例


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.org大神的英文原创作品 draw()。非经特殊声明,原始代码版权归原作者所有,本译文未经允许或授权,请勿转载或复制。