さて、次はif、 else if、 elseといった条件分岐を学びます。この構文は、比較的理解しやすいものの一つでしょう。
先ほどの”変数”の項での例題を少し変えてif文を使ってみます。int eSizeの値を色々変えて実行してみて下さい。
if
(もし〜だったら)
int a = 10; //円同士の間隔を設定
int eSize = 4; //円のサイズを設定
size(100, 100);
background(255);
if(eSize >= 5){
noStroke(); //円の縁を描かない
fill(127); //円をグレーにする 0~255の値が入る 0は黒、255は白
}
ellipse(5*a, 5*a, eSize, eSize); //円(ellipse)を描く
すると、eSizeが5かそれ以上の時だけに、グレーの縁なしの円が画面の中央に描かれます。
構文は以下の通りです。if文の条件式はかならず{}(ブレース)で囲まれます。
if(条件式) {
条件文
}
同じように、else ifやelseによっても様々な条件分岐が可能になります。次の式では、if、 else if、 elseを全て使っています。これも、eSizeの値を変えて実行してみて下さい。
else if (もしくは〜だったら)
else (さもなくば)
int a = 10; //円同士の間隔を設定
int eSize = 5; //円のサイズを設定
size(100, 100);
background(255);
noStroke(); //円の縁を描かない
if(eSize < 5){ //もしeSizeが5より小さかったから
fill(255, 0, 0); //円を赤にする
}else if(eSize >= 5 && eSize <10){ //もしくはeSizeが5以上でなおかつ10より小さかったから
fill(0, 255, 0); //円を緑にする
}else{ //上記の条件以外だったら
fill(0, 0, 255); //円を青にする
}
ellipse(5*a, 5*a, eSize, eSize); //円(ellipse)を描く
構文は以下の通りです
if(条件式) {
条件文
}else if(条件式) {
条件文
}else{
条件文
}
条件式に使われる演算子は以下を参照して下さい。
Processingで使われる演算子
どうでしょうか。if文は”eSize >= 5 && eSize <10″のように2つ以上の条件に当てはまるかどうかという判断にも使えます。
ですから、原理は簡単ですが非常に色々な用途に使える構文なのです。
