目次
関数とは?
Processingにおける関数とは、特定のタスクを実行するためのコードのまとまりです。関数は、一連の命令をグループ化し、一つのタスクを実行するために使用されます。関数は、パラメータを取ることができ、必要に応じて値を返すことができます。
関数の特徴
- 再利用性: 関数を定義することで、同じコードを何度も書くことなく、コードの再利用が可能になります。
- モジュール性: 関数は、プログラムを小さな部品(モジュール)に分割するのに役立ちます。これにより、コードの整理、管理、デバッグが容易になります。
- 抽象化: 関数を使用すると、詳細を隠して高レベルの操作を定義できます。これにより、コードの読みやすさと理解が向上します。
Processingのビルトイン関数
Processingには、様々なビルトイン関数(組み込み関数)が用意されており、これらを利用することで簡単にグラフィックスの描画やインタラクションの実装ができます。
例えば:
size(width, height)
:キャンバスのサイズを設定します。background(r, g, b)
:背景色を設定します。ellipse(x, y, width, height)
:楕円を描画します。
カスタム関数
Processingでは、ユーザーが独自のカスタム関数を定義することもできます。カスタム関数は、特定のタスクや計算をカプセル化し、コードの再利用性と整理を助けます。
void drawCircle(int x, int y, int diameter) {
ellipse(x, y, diameter, diameter);
}
この例では、drawCircle
というカスタム関数を定義しています。この関数は、指定された位置に、指定された直径の円を描画します。
関数の呼び出し
関数を定義した後、その関数を呼び出すことで、関数内に記述されたコードが実行されます。関数の呼び出しは、関数名と括弧に囲まれた引数(もしあれば)で行います。
drawCircle(100, 100, 50); // drawCircle関数を呼び出し、円を描画します
Processingにおける関数は、コードの構造化、モジュール化、再利用に大変重要であり、プログラムの効率性と可読性の向上に寄与します。
関数の戻り値
Processingにおける関数の戻り値は、関数が計算した結果をプログラムの他の部分に返すための仕組みです。戻り値を持つ関数を利用することで、計算結果を変数に格納したり、他の関数の引数として使用したりできます。
戻り値の定義
関数が戻り値を返す場合、関数定義においてvoid
の代わりに戻り値のデータ型を指定し、return
文を使用して戻り値を返します。
int add(int a, int b) {
return a + b; // 2つの整数の和を返す
}
この例では、add
関数は2つの整数を受け取り、それらの和を返します。戻り値の型はint
です。
戻り値の利用
関数が戻り値を返す場合、その戻り値は変数に格納されるか、他の関数の引数として直接利用されます。
void setup() {
int sum = add(5, 3); // add関数の戻り値(5 + 3 = 8)がsumに格納される
println(sum); // 8を出力
}
この例では、add
関数の戻り値は変数sum
に格納され、その値がコンソールに出力されます。
戻り値の利点
- 計算結果の利用: 戻り値を利用することで、関数によって計算された結果をプログラムの他の部分で利用できます。
- コードの簡潔性: 戻り値を活用することで、コードが簡潔で読みやすくなります。特定の値を計算するためのコードを一箇所にまとめ、その結果を必要な場所で利用できます。
- モジュール性: 関数が特定のタスクを実行し、その結果を返すことで、コードはモジュール化され、再利用性が向上します。
例:距離の計算関数
以下は、二点間の距離を計算して戻り値として返す関数の例です。
float calculateDistance(float x1, float y1, float x2, float y2) {
float dx = x2 - x1;
float dy = y2 - y1;
return sqrt(dx * dx + dy * dy); // 二点間の距離を返す
}
void setup() {
float distance = calculateDistance(0, 0, 3, 4); // (0,0)から(3,4)までの距離を計算
println(distance); // 5.0を出力
}
このcalculateDistance
関数は、二点間の距離を計算し、その結果を戻り値として返します。この戻り値は、setup
関数内で変数distance
に格納され、出力されます。
関数の戻り値は、Processingにおいてコードの構造化、再利用性の向上、そしてプログラムの複雑性の管理に役立ちます。
演習
- ProcessingのReferenceページを見ながら気になる関数を3つピックアップして自分でサンプルコードを実行したり、サンプルコードを変更してみよう
- 引数に自然数をとり、画面上のランダムな位置に小さな四角形を描画する関数を作成してください。