gpt4 book ai didi

processing - 在处理过程中留下一个衰落的痕迹

转载 作者:行者123 更新时间:2023-12-01 09:35:17 26 4
gpt4 key购买 nike

我有一个在屏幕上移动的圆圈,我需要的是能够让那个圆圈在它后面留下一条线,在一秒钟左右后消失。我正在使用处理。

最佳答案

不能说它的效率,但我想一种方法是将旧位置保​​留在 ArrayList 中?然后,您可以在每个点之间画线,只要您每帧插入当前位置并删除最近的位置。希望对您有所帮助!

PVector circlePosition;
ArrayList<PVector> circleTrail;
int trailSize = 10;

void setup() {
size(500, 500);
circlePosition = new PVector(width*0.5, width*0.5);
circleTrail = new ArrayList<PVector>();
}

void draw() {
background(255);
int trailLength;

circlePosition = new PVector(mouseX, mouseY);
circleTrail.add(circlePosition);

trailLength = circleTrail.size() - 2;
println(trailLength);

for (int i = 0; i < trailLength; i++) {
PVector currentTrail = circleTrail.get(i);
PVector previousTrail = circleTrail.get(i + 1);

stroke(0, 255*i/trailLength);
line(
currentTrail.x, currentTrail.y,
previousTrail.x, previousTrail.y
);
}

ellipse(circlePosition.x, circlePosition.y, 10, 10);

if (trailLength >= trailSize) {
circleTrail.remove(0);
}

}

关于processing - 在处理过程中留下一个衰落的痕迹,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/9215231/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com