java - 使用背景不透明度值的 Fading CurveVertex() 轨迹不起作用

标签 java processing rendering

使用 FX2D。

嗨,我目前正在使用 curveVertex() 函数在每一帧绘制一条线。 每条线都自愿保留在草图上,而不是在每一步都重置背景, 这会留下痕迹效果。

但我想让这些痕迹随着时间的推移而消失。我尝试通过给它一个小的不透明度值来重置draw()函数中的背景,但它每次都会一次清除所有轨迹。

现在我只能拥有所有轨迹或没有轨迹。

  //background(0, 0, 0, 10); // Reset background every time
  stroke(255, 255, 255, 10); // Draw Line between all nodes
  curveVertex(nodes.get(fixId(i)).position.x, nodes.get(fixId(i)).position.y);

with trails

最佳答案

background()不只是设置背景颜色,它还清除整个窗口。它不打算在beginShape() / endShape()内使用background序列。

想做什么就可以通过画个rect()来实现与 blendMode(DIFFERENCE)在整个窗口的框架开始处。例如:

void draw() {

    // "fade" the entire view 
    blendMode(DIFFERENCE);
    fill(1, 1, 1, 255);
    rect(0, 0, width, height);

    blendMode(ADD);

    // draw shape
    // [...]

}
<小时/>

<子> 另请参阅Processing - rendering shapes的答案。

关于java - 使用背景不透明度值的 Fading CurveVertex() 轨迹不起作用,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/60026417/

相关文章:

java - 由于某种原因,我的 split() 在我的代码的一行中工作,但在另一行中不工作

java - PendingIntent 的触发时间比我预期的要早

java - 递归泛型

java - 如何覆盖系统内部处理的快捷方式

google-chrome - 尽管资源已传送到浏览器,但Chrome无法显示图像

java - java中的运算符>>和运算符>>>有什么区别?

java - Java Serial对象空指针异常的处理

java - 字段 component.x 不可见

c++ - 是否可以设置全局 QPainter 默认渲染提示?

c - 绘制一个立方体并旋转它: a part of the cube disappears