Java 正在处理停止动画

Java 正在处理停止动画,java,processing,Java,Processing,我有以下代码(在处理软件中),我想在粒子离开屏幕之前阻止它们… 所以我不知道如何阻止他们靠近屏幕边缘 请建议 谢谢 Particle [] pickles = new Particle [100]; void setup () { size (500, 500); smooth (); for (int i=0; i<pickles.length; i++) { pickles [i] = new Particle (); } } void dra

我有以下代码(在处理软件中),我想在粒子离开屏幕之前阻止它们… 所以我不知道如何阻止他们靠近屏幕边缘

请建议

谢谢

    Particle [] pickles = new Particle [100];


void setup () {

  size (500, 500);
  smooth ();
  for (int i=0; i<pickles.length; i++) {
    pickles [i] = new Particle ();
  }
}


void draw () {
  background (0); //clear the background

  for (int i=0; i<pickles.length; i++) {
    pickles[i].update();
  }
}

class Particle {

  float x;
  float y;

  float velX ; // speed or velocity
  float velY;


  Particle () {
    //x and y position to be in middle of screen
    x = width/2;
    y = height/2;

    velX = random (-10, 10);
    velY = random (-10, 10);

} 

  void update () {

    x+=velX;
    y+=velY;

    fill (255);
    ellipse (x, y, 10, 10);
  }
}
Particle[]pickles=新粒子[100];
无效设置(){
大小(500500);
平滑();

对于(int i=0;i您可以通过将其
x
y
值与屏幕尺寸进行比较来检查粒子是否超出屏幕边界。例如:

if(x < 0){
  // particle is off left edge of screen
}
else if(x > width){
  // particle is off right edge of screen
}
if(x<0){
//粒子离开屏幕的左边缘
}
如果(x>宽度),则为else{
//粒子离开屏幕的右边缘
}
当您检测到其中一种情况时,可以执行以下操作:

  • 从阵列中移除粒子,使其在离开屏幕后停止使用系统资源
  • 将值环绕到屏幕的另一侧
  • 通过反转其速度使其从边缘反弹
你采取哪种方法取决于你到底想发生什么


无耻的自我宣传:是一个关于处理过程中碰撞检测的教程,其中包括上述方法。

请不要用所有语言标记你的问题-你会吸引大量的反对票。另外,请更具体一些:当粒子撞击屏幕边缘时,你想做什么?很抱歉……如果ey从边缘反弹,那太好了。但不知何故,爆炸后我无法控制它们..尝试
如果(x+velX>0&&x+velX0&&y+velY
请在交叉柱之间链接。这个问题也发布在这里: