Getting started with Processing 第九章总结
函数
函数的力量在于模块化。
范例
掷骰子 rollDice()函数
rollDice(int numSides){
int d = 1+int(random(numSides));
println("Rolling..."+d);
}
利用这个函数,可以使得程序更加容易维护,因为信息没有重复(假设进行多次掷骰子),在之后修改的时候,只需要修改 numSides ,而不需要修改多次参数的值。
画猫头鹰 owl()函数
将画猫头鹰的代码作为一个函数,然后在 draw() 函数调用这个函数,就可以画多个猫头鹰。
参数是函数重要的部分,因为它们提供了灵活性。因为函数具有参数,它将接受到的值替换为进行计算的值的,因而它使得任何参数都能够得到结果,而不仅仅是一组数值。
画猫头鹰的代码如下:
void setup(){ size(480,120); } void draw(){ background(176,204,226); owl(110,110); owl(180,110); } void owl(int x,int y){ pushMatrix(); translate(x,y); stroke(138,138,125); strokeWeight(70); line(0,-35,0,-65);//body noStroke(); fill(255); ellipse(-17.5,-65,35,35);//left eye bow ellipse(17.5,-65,35,35);//right eye bow arc(0,-65,70,70,0,PI);//on neck fill(51,51,30); ellipse(-14,-65,8,8);//left eye ellipse(14,-65,8,8);//right eye quad(0,-58,4,-51,0,-44,-4,-51);//mouth popMatrix(); }
其中的 owl(x,y),决定了猫头鹰左上角的定位的位置,因为参数对于函数的重要作用,使得函数能够完成处理不同的结果。