【问题标题】:Processing: Trying to animate the drawing of lines without draw function处理:尝试在没有绘制功能的情况下动画绘制线条
【发布时间】:2015-04-12 09:28:45
【问题描述】:

我正在尝试编写一个少于 140 个字符的程序(Twitter 字符限制)。该程序显示我想要的最终输出,但我不明白为什么它在创建动画时没有显示动画。我认为这是因为我没有绘图功能,但如果绘图全部在 For 循环中完成,我不明白为什么这很重要,无论如何绘图功能没有帮助。我试过降低帧率,但由于某种原因,它只给了我一个静态的最终输出。非常感谢任何帮助。

int j=600, i=j/3;
size(j, j);
smooth();
translate(j/2, j/2);
for (i=1; i<12500; ) {
  fill(i%j, i%j);
  rotate(j%i*5);
  line(i++%j, i++%j, i+++j, int(i/99)%99);
}

【问题讨论】:

  • 当你运行它时 PDE 会说什么?此外,如果您的 i 类型是“int”,那么与其他整数的算术运算将保持整数(例如,5 / 2 是 int 2,而不是 floatdouble 2.5),您不需要不需要int(i/99)

标签: java animation twitter processing draw


【解决方案1】:

处理使用双缓冲,这意味着当您“向屏幕”绘制时,实际上是在向屏幕外缓冲区进行绘制。由于您的代码不在 draw() 函数中,因此这发生在框架甚至可见之前。然后当框架变得可见时,它会占用整个屏幕外缓冲区,并将整个内容绘制到屏幕上。

这就是为什么您只能看到绘图的最终结果。如果要显示动画,则必须使用 draw() 函数和某种时间(例如 millis() 方法)。

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 2015-07-15
    • 2012-11-22
    • 2014-12-31
    • 2011-01-19
    • 2011-07-28
    • 2014-03-24
    • 2012-06-24
    • 1970-01-01
    相关资源
    最近更新 更多