level 3
木叶无边
楼主
最近在自学Processing,用的是《爱上Processing》这本书,书里有个例子的代码我想了很久没明白,求助各位牛人!
例子做的是“轻随”easing效果,即在某一横行里稍微落后于鼠标位置画圆。我不明白的是x+=(targetX-x)*easing这一行。我知道是循环地把+=后面赋值给前面,可是整段代码并没有定义x的初始值是多少,那代码如何能成立呢?难道x是电脑生成的随机值么?
float x;
float easing=0.1;
float diameter=12;
void setup(){
size(220,120);
smooth();
}
void draw(){
float targetX=mouseX;
x+=(targetX-x)*easing;
ellipse(x,40,12,12);
println(targetX+":"+x);
}
2013年04月23日 10点04分
1
例子做的是“轻随”easing效果,即在某一横行里稍微落后于鼠标位置画圆。我不明白的是x+=(targetX-x)*easing这一行。我知道是循环地把+=后面赋值给前面,可是整段代码并没有定义x的初始值是多少,那代码如何能成立呢?难道x是电脑生成的随机值么?
float x;
float easing=0.1;
float diameter=12;
void setup(){
size(220,120);
smooth();
}
void draw(){
float targetX=mouseX;
x+=(targetX-x)*easing;
ellipse(x,40,12,12);
println(targetX+":"+x);
}