Path Mask(パスマスク)
閉じたベジェパス群を白+アルファのマスク画像に変換するノード。
中級
Since P00
入力ポート
Path(パス)
マスク化するベジェパス
出力ポート
Image(画像)
白+アルファのマスク画像
パラメータ
| 名前 | 型 | デフォルト | 説明 |
|---|---|---|---|
| Width幅 | Int | 64 | キャンバスの幅 |
| Height高さ | Int | 64 | キャンバスの高さ |
| Overlap Mode重なり方 | Enum | Union | 重なった閉じパスをどう面として扱うか |
| Pixel Perfectピクセルパーフェクト | Bool | false | PP 補正後の輪郭を基準にマスクを作る |
| PP ModePP モード | Enum | RemoveCorner | PP 補正方式 |
| Closed Path Cross閉パス外積モード | Bool | false | 閉パスの内外判定に外積ベース補正を使う |
| Closed Edge閉パス削除側 | Enum | Outer | 閉パスで内側 / 外側のどちらを削るか |
重なり方
| モード | 説明 |
|---|---|
| **Union / 全部塗る** | どれか1つの閉じパスの中にあれば塗る。普通に図形を重ねたいときの基本モード |
| **EvenOdd / 中を穴にする** | 重なるたびに塗る/抜くが切り替わる。ドーナツや枠のように「中を抜きたい」とき向け |
| **NonZero / 向きで穴を決める** | パスを描いた向きで塗るか穴にするかを決める。外周と穴を自分で描き分けたい上級者向け |
ピクセルパーフェクト
- オフ: 通常の輪郭を基準にマスクを作る
- オン:
PathStrokeと同じ PP 補正後の輪郭を基準にマスクを作る
PathStroke の見た目と面のシルエットを揃えたいときはオンにします。
アルゴリズム
- 閉じたサブパスだけを対象に
rasterize_subpathで輪郭ピクセル列を取得 - 複数サブパスを 1 つの面として扱い、各ピクセル中心に対して
fill_ruleで内外判定 - 塗り領域と輪郭に白 (
1,1,1,1) を描き、それ以外は透明のまま出力
使用例
パスからマスクを作る
[MultiPathEditor] → path → [PathMask(fill_rule:Union)] → [Preview]画像をパス形状で切り抜く
[PixelCanvas] → source → [Mask] → [Preview]
↑
[PathMask] → mask将来の面散布の基盤
[MultiPathEditor] → [PathMask] → [MaskScatter]注意事項
- 開いたサブパスは無視されます
PathFillと違い、複数サブパスをまとめて面として扱いますMaskノードで使う前提のため、出力は白+アルファの画像です- 図形が重なった部分もそのまま塗りたい場合は
Union / 全部塗るを使います
💡 ヒント
- •開いたサブパスは無視されます
- •`PathFill` と違い、複数サブパスをまとめて面として扱います
- •`Mask` ノードで使う前提のため、出力は白+アルファの画像です
- •図形が重なった部分もそのまま塗りたい場合は `Union / 全部塗る` を使います
関連ノード
multipatheditor
preview
pixelcanvas
mask
pathmask
maskscatter