部分実装

Pixel Sort#

Triggerのしきい値で選ぶ連続区間を、Criterionのキーで並べ替えます。Axis、Order、キー、しきい値内外を選択式で指定し、Angle DegreesでAxisからの角度を変えます。OperationのSource KeysはSourceを使用し、Image Keysは独立したTrigger Source/Criterion SourceのImageを受け取ります。

Operation#

Operationの変更で同じ目的の処理を選びます。同じ役割で互換のある入力は維持し、明らかに非互換な入力は切り離します。AEへ公開した入力の削除・移動は公開解除を先に要求し、ロックされたノードの変更は拒否します。関数の戻り値そのもののOperationを変更した場合は、その戻り値の型宣言も更新します。通常の値編集では宣言を維持し、接続を黙って別の意味へ変えません。

Operation 入力数 出力数
Source Keys 13 1
Image Keys 15 1

以下は実際のノード定義とプロパティ投影から生成した初期状態です。Min/Max/Stepは値ウィジェットの設定であり、演算の全定義域ではありません。接続専用の欄やFileの選択欄には数値設定を表示しません。「接続から確定」は不正な型ではなく、必要な入力がまだない状態です。内部実行表現は公開型への移行対象で、全型対応を意味しません。

Operation: Source Keys#

入力#

名前 型・状態 初期の編集欄 初期値 Min Max Step 選択肢 AEへ公開
source 接続から確定(入力待ち) 接続欄(値ウィジェットなし) 接続が必要 — — — — 不可
threshold_min Float Input Number 0.4 0 1 0.01 — 対応する実行時入力のみ可
threshold_max Float Input Number 0.6 0 1 0.01 — 対応する実行時入力のみ可
axis Enum<"std.choice.axis"> Input Dropdown 0 0 1 1 0: Horizontal; 1: Vertical 対応する実行時入力のみ可
order Enum<"std.choice.order"> Input Dropdown 0 0 1 1 0: Ascending; 1: Descending 対応する実行時入力のみ可
trigger Enum<"std.choice.sort_key"> Input Dropdown 0 0 10 1 0: Luminance; 1: RGB Average; 2: RGB Product; 3: RGB Minimum; 4: RGB Maximum; 5: Red; 6: Green; 7: Blue; 8: Alpha; 9: Hue; 10: Saturation 対応する実行時入力のみ可
criterion Enum<"std.choice.sort_key"> Input Dropdown 0 0 10 1 0: Luminance; 1: RGB Average; 2: RGB Product; 3: RGB Minimum; 4: RGB Maximum; 5: Red; 6: Green; 7: Blue; 8: Alpha; 9: Hue; 10: Saturation 対応する実行時入力のみ可
affect Enum<"std.choice.threshold_region"> Input Dropdown 0 0 1 1 0: Inside Thresholds; 1: Outside Thresholds 対応する実行時入力のみ可
cycle_degrees Float Input Number 0 -360 360 1 — 対応する実行時入力のみ可
angle_degrees Float Input Number 0 -360 360 1 — 対応する実行時入力のみ可
mode Enum<"std.choice.sort_geometry"> Input Dropdown 0 0 4 1 0: Axis; 1: Free Angle; 2: Rotation; 3: Radial; 4: Swirl 対応する実行時入力のみ可
center Vector<Float,3> Input Vec 0.5, 0.5, 0 0 1 0.01 — 対応する実行時入力のみ可
swirl_degrees Float Input Number 360 -1440 1440 1 — 対応する実行時入力のみ可

単位・参照先は接続値にも適用する、各入力のCNL source指定です。入力の基準と内部演算の基準は独立しています。

入力 初期単位 役割 初期の基準 参照 内部単位・基準
angle_degrees degrees angle axes image / input:0 degrees / axes
center uv position axes image / input:0 uv / axes
swirl_degrees degrees angle axes image / input:0 degrees / axes

座標・単位の指定でpx/%の意味と対応する空間変換を確認できます。

出力#

名前 型・状態
result 接続から確定(入力待ち)

選択肢の番号は保存上の離散値です。DropdownとDrumで同じ候補集合を使用します。

Operation: Image Keys#

入力#

名前 型・状態 初期の編集欄 初期値 Min Max Step 選択肢 AEへ公開
source 接続から確定(入力待ち) 接続欄(値ウィジェットなし) 接続が必要 — — — — 不可
threshold_min Float Input Number 0 0 1 0.01 — 対応する実行時入力のみ可
threshold_max Float Input Number 1 0 1 0.01 — 対応する実行時入力のみ可
axis Enum<"std.choice.axis"> Input Dropdown 0 0 1 1 0: Horizontal; 1: Vertical 対応する実行時入力のみ可
order Enum<"std.choice.order"> Input Dropdown 0 0 1 1 0: Ascending; 1: Descending 対応する実行時入力のみ可
trigger Enum<"std.choice.sort_key"> Input Dropdown 0 0 10 1 0: Luminance; 1: RGB Average; 2: RGB Product; 3: RGB Minimum; 4: RGB Maximum; 5: Red; 6: Green; 7: Blue; 8: Alpha; 9: Hue; 10: Saturation 対応する実行時入力のみ可
criterion Enum<"std.choice.sort_key"> Input Dropdown 0 0 10 1 0: Luminance; 1: RGB Average; 2: RGB Product; 3: RGB Minimum; 4: RGB Maximum; 5: Red; 6: Green; 7: Blue; 8: Alpha; 9: Hue; 10: Saturation 対応する実行時入力のみ可
affect Enum<"std.choice.threshold_region"> Input Dropdown 0 0 1 1 0: Inside Thresholds; 1: Outside Thresholds 対応する実行時入力のみ可
cycle_degrees Float Input Number 0 -360 360 1 — 対応する実行時入力のみ可
angle_degrees Float Input Number 0 -360 360 1 — 対応する実行時入力のみ可
mode Enum<"std.choice.sort_geometry"> Input Dropdown 0 0 4 1 0: Axis; 1: Free Angle; 2: Rotation; 3: Radial; 4: Swirl 対応する実行時入力のみ可
center Vector<Float,3> Input Vec 0.5, 0.5, 0 0 1 0.01 — 対応する実行時入力のみ可
swirl_degrees Float Input Number 360 -1440 1440 1 — 対応する実行時入力のみ可
trigger_source Image<Color,2> 接続欄(値ウィジェットなし) 接続が必要 — — — — 不可
criterion_source Image<Color,2> 接続欄(値ウィジェットなし) 接続が必要 — — — — 不可

単位・参照先は接続値にも適用する、各入力のCNL source指定です。入力の基準と内部演算の基準は独立しています。

入力 初期単位 役割 初期の基準 参照 内部単位・基準
angle_degrees degrees angle axes image / input:0 degrees / axes
center uv position axes image / input:0 uv / axes
swirl_degrees degrees angle axes image / input:0 degrees / axes

座標・単位の指定でpx/%の意味と対応する空間変換を確認できます。

出力#

名前 型・状態
result 接続から確定(入力待ち)

選択肢の番号は保存上の離散値です。DropdownとDrumで同じ候補集合を使用します。

説明#

rucchoのparallel span-scan bitonic networkとBitonicPixelSorterForAEの11種類のキー・Affect・Cycle・Free Angleを適合しています。Sourceは各軸最大4096pixel、RGBAを補間・クランプせず取得します。比較キーのみBinary16で、0度の同値順序は未定義、非0度は元pixel indexで決定します。キー画像はSourceのpixel-centerに正規化座標・bilinear・clampでサンプリングし、異なる解像度も接続できます。NaNはキー計算時だけ0とし、Source画素は変更しません。Image Keysでは両キーImageが必須で、同じSourceの再利用も可能です。非0度はGPU上のforward domainとnearest-pixel gatherであり、斜めの座標対応は一対一とは限りません。domainは2バッファ合計384MiBまで、超過Shapeは明示エラー。この新経路はnative Vulkan専用で、全GPU1msの保証はありません。Rotation / Radial / Swirl / Pathは未対応です。

使用例#

Threshold Min=0.4、Max=0.6、Horizontal、Ascending、Trigger=Luminance、Criterion=Red、Affect=Inside Thresholds、Cycle Degrees=90で区間内の色を循環する。Angle Degrees=27で斜めに並べ替える。別画像で選別・順序付けする場合はImage Keysを選び、Trigger SourceとCriterion Sourceの両方へImageを接続する。

関連仕様#

ノード体系 · 型形式 · Field構造 · Edit Parameter · 接続操作 · 現在の対応状況

このノードの説明を編集GitHubへのアクセス権が必要です。

CompNode Guide · 日本語製品ドキュメント仕様と実装範囲は各項目で区別しています。

ドキュメントを検索

検索語を入力してください。

    ↑ ↓ で結果を移動、Enter で開く · 検索はこの端末内だけで実行されます。