Java 如何确保圆心在加工过程中保持静止?

Java 如何确保圆心在加工过程中保持静止?,java,processing,unfoldingmap,Java,Processing,Unfoldingmap,我正在使用展开地图库和处理库进行此项目。我遇到了一个代码,它画了一个直径随着时间增加而逐渐消失的圆圈。但我面临的问题是,圆心随鼠标的x和y坐标移动,但我希望它是静态的,而不是随鼠标移动而移动,也就是说,在我单击鼠标的地方,我希望圆心是该坐标和静态的 我的代码如下: boolean bCircleShow=false; float opacity; int diameter=0; // void setup () { size (400, 300); background (255);

我正在使用展开地图库和处理库进行此项目。我遇到了一个代码,它画了一个直径随着时间增加而逐渐消失的圆圈。但我面临的问题是,圆心随鼠标的x和y坐标移动,但我希望它是静态的,而不是随鼠标移动而移动,也就是说,在我单击鼠标的地方,我希望圆心是该坐标和静态的

我的代码如下:

boolean bCircleShow=false;
float opacity;
int diameter=0;
//
void setup () {
  size (400, 300);
  background (255);
  smooth ();
  opacity=255;
}
//
void draw() {
  background (122);
  //stroke (0, 255, 0);
  noStroke();
  fill(255);
  if (bCircleShow) {
    fill(255, 2, 2, opacity);
    ellipse (mouseX, mouseY, diameter, diameter );
    diameter ++;
    opacity--;
    if (opacity<=0) {
      bCircleShow=false; // end
      opacity=255;
      diameter=0;
    }
  }
}
//
void mouseClicked() {
  bCircleShow=true;
}

如果您有任何建议,我们将不胜感激。

当您在屏幕上单击时,请存储该单击的鼠标X和鼠标Y,然后在该鼠标X和鼠标Y处绘制圆圈。不要使用mouseX和mouseY,因为它们是处理过程中预定义的变量

示例代码

boolean bCircleShow=false;
int mx;
int my;
float opacity;
int diameter=0;
//
void setup () {
  size (400, 300);
  background (255);
  smooth ();
  opacity=255;
}
//
void draw() {
  background (122);
  //stroke (0, 255, 0);
  noStroke();
  fill(255);
  if (bCircleShow) {
    fill(255, 2, 2, opacity);
    ellipse (mx, my, diameter, diameter );
    diameter ++;
    opacity--;
    if (opacity<=0) {
      bCircleShow=false; // end
      opacity=255;
      diameter=0;
    }
  }
}
//
void mouseClicked() {
  bCircleShow=true;
  mx=mouseX;
  my=mouseY;
}