関数を使う
繰り返し出てくる処理を「関数」としてまとめると、わかりやすいプログラムを書くことができます。
void setup(){ size(300,300); smooth(); dango(50,50,0); dango(100,100,40); dango(150,150,80); dango(200,200,120); dango(250,250,160); } void dango(float x, float y, float t){ ellipse(x, y, 20, 20); ellipse(x+20*cos(radians(t)), y-20*sin(radians(t)), 20, 20); ellipse(x-20*cos(radians(t)), y+20*sin(radians(t)), 20, 20); }
12 行目から始まる dango は、丸を 3 つ並べて書く「関数」です。
関数は、関数名(dango)の後ろにカッコにくくって「引数」(ひきすう、と読む)を書きます。
関数 dango は 3 つの引数 x, y, t を取ります。
関数名: dango | |
内容: 半径20 pixelの丸を3つ並べて書く | |
引数 | |
x | 真ん中の丸の中心 x座標 |
y | 真ん中の丸の中心 y座標 |
t | 回転角度 (degree) |
関数内では x, y, t を使って丸を3つ書く処理を行っています。
関数は 5~9 行で「使われて」います。
いままではプログラムの先頭から処理を順番に書いていましたが、
このように関数を使う場合には、setup() という名前の関数内に実際の処理を書きます。
setup() は、プログラムを実行すると(Runボタンを押すと) 1回だけ実行されます。
C言語の場合は、この「プログラムを開始すると実際に実行される関数」は main() という名前になっています。
例題
- 画面内のランダムな位置にランダムな方向で、団子を 20 個ばかり書いてみてください。
乱数は命令 random() で作ることができます。
http://processing.org/referenc……ndom_.html - 色や大きさを指定できるようにしてください。
戻り値付の関数
関数は値を返すことができます。これを戻り値(もどりち、と読む)と言います。
例えば 次の sind という関数は degree 単位で角度を与えると、その sin 値を返す関数です。
float sind(float input){ float answer; answer = sin(radians(input)); return(answer); }
sin の代わりに使うことができます。
関数名(sind)の前についている floatは戻り値の型を表しており、
void は「戻り値なし」の関数であることを表しています。