处理:椭圆不是以 0.5 增长,而是以任何大于 1 的值增长?
Processing: Ellipse is not growing with 0.5 but with any value above 1?
编辑:我明白了。它必须是浮点数而不是整数。
我是处理编程的绝对初学者。
出于某种原因,我可以添加任何高于 1.0 的值并且代码可以正常工作。但是如果我使用例如0.5 它不起作用,我完全不知道为什么。
它是关于一个应该增长每个绘制函数的椭圆。
//variables
int size = 10;
float growth= 0.5;
void setup() {
size(500, 500);
background(0,255,0);
}
void draw() {
fill(200);
ellipse(pmouseX,pmouseY,size,size);
size += growth;
}
大小的数据类型为int
。如果将 0.5 添加到整型数据类型,则变量的值会发生变化。
注意,(int)0.5
等于 0 - 试试 print( (int)0.5 );
将 size
的数据类型从 int
更改为 float
,以解决您的问题:
float size = 10.0;
float growth = 0.5;
void setup() {
size(500, 500);
background(0,255,0);
}
void draw() {
fill(200);
ellipse(pmouseX,pmouseY,size,size);
size += growth;
}
编辑:我明白了。它必须是浮点数而不是整数。
我是处理编程的绝对初学者。
出于某种原因,我可以添加任何高于 1.0 的值并且代码可以正常工作。但是如果我使用例如0.5 它不起作用,我完全不知道为什么。 它是关于一个应该增长每个绘制函数的椭圆。
//variables
int size = 10;
float growth= 0.5;
void setup() {
size(500, 500);
background(0,255,0);
}
void draw() {
fill(200);
ellipse(pmouseX,pmouseY,size,size);
size += growth;
}
大小的数据类型为int
。如果将 0.5 添加到整型数据类型,则变量的值会发生变化。
注意,(int)0.5
等于 0 - 试试 print( (int)0.5 );
将 size
的数据类型从 int
更改为 float
,以解决您的问题:
float size = 10.0;
float growth = 0.5;
void setup() {
size(500, 500);
background(0,255,0);
}
void draw() {
fill(200);
ellipse(pmouseX,pmouseY,size,size);
size += growth;
}