Add `beginClip()` and `endClip()` masking functions
まだ誰も着手していません。
評価
- 難易度
- 5/5
- 見積もり時間
- 1週間以上
- 初心者へのやさしさ
- 35/100
- issue の種類
- 機能追加
- 明瞭さ
- おおむね明確
- 活発さ
- 停滞
- 技術スタック
- java
調査の方向性
Core/Environment/Rendering 領域から始め、既存の mask() の動作と、リンクされている p5.js beginClip() のリファレンスを読みます。beginClip()、endClip()、およびオプションの invert フラグがどのように動作すべきかを定義し、その後、呼び出しの間の描画コマンドが期待どおりの通常および反転クリッピング動作を生成することを確認します。
索引モデルが issue の本文から書いたものです。
説明
Relevant sub-area for this feature?
Core/Environment/Rendering
Feature details
Feature description
Add beginClip() and endClip() to define clipping masks using drawing commands. Shapes drawn between these calls become the mask. An optional invert flag enables inverse masking.
Benefits
- More intuitive and less verbose than
mask() - Matches p5.js API and reduces cognitive load when switching from one to the other
Challenges
- Not sure
Additional context
See https://p5js.org/reference/p5/beginClip/
Example code
This mask() code...
// Create pattern graphics
pattern = createGraphics(width, height);
pattern.beginDraw();
pattern.background(255);
pattern.stroke(0);
pattern.strokeWeight(2);
for (int x = 0; x < width; x += 10) {
pattern.line(x, 0, x, height);
}
pattern.endDraw();
// Create mask graphics (white circle on black)
maskImg = createGraphics(width, height);
maskImg.beginDraw();
maskImg.background(0);
maskImg.noStroke();
maskImg.fill(255);
maskImg.ellipse(width/2, height/2, 200, 200);
maskImg.endDraw();
// Apply mask to pattern
pattern.mask(maskImg);
... becomes this using beginClip()/endClip():
// Define clipping region
beginClip();
ellipse(width/2, height/2, 200, 200);
endClip();
// Draw pattern inside the clip
stroke(0);
strokeWeight(2);
for (int x = 0; x < width; x += 10) {
line(x, 0, x, height);
}
Would you like to help implement this feature?
No, I’m just suggesting the feature
- 主要言語
- Java
- スター
- 497
- フォーク
- 183
- 平均マージ
- 4時間 39分
- マージ済み PR(30日)
- 3
コントリビューションガイド
はじめの一歩
- issue を最後まで読み、次にプロジェクトのコントリビューションガイドを読みます。
- 着手することを issue にコメントします — 二人が同じ作業をするのを防げます。
- リポジトリをフォークし、ブランチを切って変更します。
- issue 番号を参照したプルリクエストを送ります。
processing/processing4 のほかの issue
-
bug
難易度 2/5 1〜3時間 初心者へのやさしさ 64/100
processing/processing4#1554 · コメント 1 件 ·
-
難易度 2/5 1〜3時間 初心者へのやさしさ 76/100
processing/processing4#1515 · リアクション 1 件 ·
-
bug
難易度 3/5 1〜2日 初心者へのやさしさ 55/100
processing/processing4#1573 ·
-
startup error オープン
難易度 4/5 3〜5日 初心者へのやさしさ 25/100
processing/processing4#1569 · コメント 7 件 ·
-
Binaries under bin directory lack executable permissions for the snap and .deb packages for Linux オープンbug
processing/processing4#1567 · コメント 3 件 · リアクション 1 件 · 担当者 1 名 ·
processing/processing4 の issue をすべて見る
似ている issue
-
certification
難易度 1/5 1時間未満 初心者へのやさしさ 80/100
-
難易度 2/5 1〜3時間 初心者へのやさしさ 75/100
-
[BUG] ECR GetAuthorizationToken returns a proxyEndpoint for the default region, not the request's オープンbug ecr
難易度 2/5 1〜3時間 初心者へのやさしさ 75/100
-
Needs: Triage Type: Feature request
難易度 2/5 1〜3時間 初心者へのやさしさ 70/100
AntennaPod/AntennaPod#8794 ·
-
agentic-workflows
難易度 2/5 1〜3時間 初心者へのやさしさ 65/100
github/copilot-sdk#2760 ·