更新:2023/12/31
beginDrawとendDrawについて

はるか
pg.beginDraw()とかpg.endDraw()って書かないと動かないんだが

ふゅか
そうね。PGraphicsを使う場合は必要なメソッドね。
beginDraw()
と endDraw()
はPGraphicsで、図形の描画を開始および終了するために使われるメソッドです。
1. PGraphics
PGraphics
を使用すると、異なる描画領域を作成して、そこに図形やイメージを描画できます。詳しくはこちらで解説しています。
2. beginDraw()
beginDraw()
関数はPGraphics
で描画を開始する際に呼び出されます。
3. endDraw()
endDraw()
はPGraphics
の描画を終了する際に使用します。
4. 使用例
beginDraw()
とendDraw()
は次のように使用されます。
PGraphics pg;
void setup() {
size(400, 400);
// PGraphicsオブジェクトを作成します
pg = createGraphics(200, 200);
}
void draw() {
// PGraphicsオブジェクトで描画を開始します
pg.beginDraw();
pg.background(100);
pg.stroke(255);
pg.line(50, 50, 150, 150);
// PGraphicsオブジェクトでの描画を終了します
pg.endDraw();
// PGraphicsオブジェクトの内容をメインウィンドウに表示します
image(pg, 100, 100);
}
PGraphics
オブジェクトである pg
は beginDraw()
と endDraw()
の間でのみ描画操作を受け付けます。
これらの利用例として、例えば、背景レイヤーとアニメーションレイヤーを分けたい場合、それぞれのレイヤーに対応する PGraphics
オブジェクトを使って独立して描画を行い、最終的にそれらを組み合わせるなどがあります。

はるか
なるほど。描画の開始と終了を示すのか。
PR