更新: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
