处理:椭圆不是以 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;
}