如何计算处理上绘制的点数?
How to count number of dots drawn on Processing?
我想了解 Processing,所以我在做一些随机的事情。我正在使用下面的代码,我想绘制并计算左上角绘制的点数:
int clickx[] = new int[50];
int clicky[] = new int[50];
int mousx = 0;
int mousy = 0;
void setup() {
size(860, 640);
background(0);
frameRate(30);
mousx = mouseX;
mousy = mouseY;
}
void draw() {
if (mousePressed) {
if (mousx != mouseX) {
stroke(255);
point(mouseX, mouseY);
int i = 0;
clickx[i] = mouseX;
clicky[i] = mouseY;
i++;
text(i, 50, 50);
}
}
}
但是我一直收到相同的号码:
您的 i
变量始终设置为 0
。
如果一次只画一个点,为什么要使用数组?
无论哪种情况,您都需要在每次绘制一个点时递增一个变量,然后使用该变量作为计数。这是一个小例子;
int i = 0;
i = i + 1;
println(i); //prints 1
i = i + 1;
println(i); //prints 2
可以使用 ++
增量运算符稍微缩短此代码:
int i = 0;
i++;
println(i); //prints 1
i++;
println(i); //prints 2
我想了解 Processing,所以我在做一些随机的事情。我正在使用下面的代码,我想绘制并计算左上角绘制的点数:
int clickx[] = new int[50];
int clicky[] = new int[50];
int mousx = 0;
int mousy = 0;
void setup() {
size(860, 640);
background(0);
frameRate(30);
mousx = mouseX;
mousy = mouseY;
}
void draw() {
if (mousePressed) {
if (mousx != mouseX) {
stroke(255);
point(mouseX, mouseY);
int i = 0;
clickx[i] = mouseX;
clicky[i] = mouseY;
i++;
text(i, 50, 50);
}
}
}
但是我一直收到相同的号码:
您的 i
变量始终设置为 0
。
如果一次只画一个点,为什么要使用数组?
无论哪种情况,您都需要在每次绘制一个点时递增一个变量,然后使用该变量作为计数。这是一个小例子;
int i = 0;
i = i + 1;
println(i); //prints 1
i = i + 1;
println(i); //prints 2
可以使用 ++
增量运算符稍微缩短此代码:
int i = 0;
i++;
println(i); //prints 1
i++;
println(i); //prints 2