[英]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.