![](/img/trans.png)
[英]How can I make sure that all the spawned threads are done so that processing can continue?
[英]How can i make sure that the center of the circle remains static in processing?
我正在使用Unfolding-Maps库和Processing库处理此项目。 我遇到了一个代码,该代码绘制了一个直径随时间增加并最终消失的圆。 但是我面临的问题是圆的中心随鼠标的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;
}
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.