Nodeワークスペースの操作#
操作は、計算する内容、配置だけ、選択だけのどれを変更するかを明確にします。画面に描いたWireの経路と、実際の接続情報も区別します。
Knife#
編集可能なNode画面でKを保持し、左ボタンを押してドラッグを始めます。表示中のWireカーブとドラッグ軌跡の交差を調べ、候補Wireを明るく表示します。複数交差ならまとめて切断できます。境界で切られた画面外のWireを、見えているものとして判定しません。
左ボタンを放すと候補の接続を一括解除します。Escape、フォーカス喪失、対象関数やソースの変更は取消しです。取消しでは一つも切断しません。切断候補に古い接続や保護対象が混入した場合も、部分的に切るのではなく一括拒否します。
Wire接続中、ノード移動中、範囲選択中には同時に開始しません。Kは開始時に必要で、ボタンを放すまで同じ操作を続けます。保護された入力は切断対象にしません。
ソケットから接続#
出力ソケットから左ドラッグを始めます。候補は既知の型と入力制約を検査し、接続可能な入力だけを明るく表示します。入力待ちの多入力ノードも正当な完成候補があれば接続できます。ドロップ時にもう一度現在の接続・型・ロック・循環を確認します。
ソケットの周囲には約15論理画面pxの判定余白を設けます。余白はズームしても画面上で一定です。重なる場合は最近傍のソケットを優先し、同距離では安定した表示順を使います。見た目を15px大きくする規則ではありません。
プロパティへのドロップ#
接続先のプロパティが開いているとき、パラメータ行を同じ入力ソケットのドロップ先として使えます。型互換性がある行だけBounding Boxを少し明るく表示し、放すとその入力へ接続します。文字の下へ落としたことを理由に別の入力へ変えません。
ノード本体へのドロップ#
ソケットではなくノード本体へ放した場合、定義順に、未接続かつ互換性のある最初の入力を選びます。候補がなければ変更しません。直接ソケットを指定した操作では、その指定を優先します。
Wireへのノード挿入#
一つのノードをWireへドラッグすると、挿入後の二つの接続が成立する場合だけWireを明るく表示します。適切な未接続入力を選び、放した時点で古い接続を二本へ置き換えます。
元のWire、型、ノード位置の元情報が古くなった場合、ロックや循環がある場合は拒否します。片側だけ接続して元Wireを失わせません。複数ノードの同時ドラッグを、この単一ノード挿入へ解釈しません。
中間ノードの削除#
中間ノードを削除したとき、前後の接続を保てる正当な一つの入力経路があれば繋ぎ直します。型不一致、曖昧な複数経路、保護された入力、循環、明示結果型との矛盾があれば、無理にバイパスしません。Undoでノード・値・接続を復元します。
入力を別のノードへ繋いだ後も、元の初期値はResetや切断後の復元用に保持します。所有ノードを削除した場合、共有されていない内部の初期値も同じ変更で片付け、孤立したInputノードとして突然表示しません。共有・明示配置・改名・ロック・独立したOutputや観測に使う値は残します。ユーザーの無関係な未接続ノードを削除する機能ではありません。
選択・配置・探索#
クリックは選択、Shift+クリックは選択の追加/解除、背景ドラッグは範囲選択です。Shift+範囲選択は追加、Ctrl+範囲選択は範囲内を解除、Ctrl+Shift+範囲選択は範囲内を反転します。Escapeで範囲選択前へ戻します。Ctrl+Shift+Aは全解除、Ctrl+Iは見えているノードとOutputの選択を反転します。折り畳まれた内部初期値は対象外です。
ノード移動中にX/Yを保持するとその軸だけへ移動します。移動開始後にShiftを保持すると、ドラッグの優勢方向に沿って水平/垂直へ拘束します。解除すると自由移動に戻ります。Shift+クリックによる選択解除とは、操作を開始する段階を区別してください。移動のEscapeは元位置へ戻します。
中央ボタンはパン、水平ホイール/トラックパッドは横パンです。パンのEscape/フォーカス喪失は開始時の表示へ戻します。ノード・Wire・範囲選択のドラッグで表示領域の端へ近づくと、画面上の距離に応じて自動パンします。プロパティ行へのドロップを自動パンへ奪いません。
ノード移動、パン、ズーム、Frame Selection、Frame Allは計算内容を変えません。選択時の塗り・輪郭・Focus Ringはすべてのノードに共通です。Outputだけを常時選択色にしません。F2またはEdit > Edit Parameterで、既存のパラメータ編集を開けます。名前の変更も同じエディタで行い、別の編集モデルを増やしません。
Shift+Aで検索を開きます。文字入力中は階層と関係なく候補を並べ、完全一致・前方一致などの関連度順にします。該当文字は文字領域でハイライトします。目的ノードのモード名も検索でき、Gaussian BlurならBlurのGaussianを選んで作成します。
Node画面では、接続操作中でなければTabでも同じ検索を開けます。ソケットをドラッグ中はShift+Aだけを使います。Tab/Spaceでは開きません。検索へ移った後も接続元ソケットと、検索位置へ伸びる保留中のWireを表示します。マウスを放しても保留は失われず、検索の裏へ接続しません。候補は互換性のあるノードに絞り、確定すると適切な入力へ接続します。GridからConvolveを作る場合は係数入力を選びます。Escape/フォーカス喪失は作成と接続の両方を取り消します。
重なったノードでは、描画順とヒットテストの前後関係を統一します。奥のソケットの拡張判定は、手前のノード本体を貫通しません。密集する入力は判定範囲を分割し、見えているソケットそのものを優先します。
接続関係の選択と配置#
Nodeの右クリックまたはコマンド検索(Ctrl+Shift+P)から使います。直近の接続先・接続元だけを選ぶ操作はSelectionメニューにもあります。
| コマンド | 対象・規則 | 変更するもの |
|---|---|---|
| Deselect All Nodes / Invert Selection | Ctrl+Shift+A/Ctrl+I。隠れた初期値は対象外 | 選択だけ |
| Select Direct Inputs / Outputs | 直前/直後のWire一段だけを選び、現在の選択を置き換える。再帰選択とは別 | 選択だけ |
| Select Upstream | 選択から接続された入力を再帰的に追加。折り畳まれた初期値は対象外 | 選択だけ |
| Select Downstream | 選択を使う後続を再帰的に追加。Outputも含む | 選択だけ |
| Select Connected Component | 選択から両方向へ接続を辿る。独立したノードは含めない | 選択だけ |
| Disconnect Inputs / Outputs / Inputs and Outputs | 選択の入力側/出力側/両側のWireをまとめて外す。保護された接続があれば無変更 | 接続だけ |
| Swap First Two Inputs | 二本の接続を交換できる場合だけ有効。ソケット名・型契約・結果型・後続を維持 | 接続だけ |
| Go to Input: 入力名 | 右クリックしたノードの入力に繋がる接続元へ移動 | 選択とカメラだけ |
| Align Column / Row | 最後に選んだ主ノードの中心へ揃える。2個以上、ロックなし | 配置だけ |
| Distribute Horizontally / Vertically | 3個以上の間隔を均等化。外端を保持。ロックがあれば無変更 | 配置だけ |
| Return to Previous View | Frameや検索・接続元への移動の直前のパンとズームへ戻る。同じ関数内で往復可能 | カメラだけ |
| Find Existing Node | Ctrl+Fで専用の既存検索。名前・カテゴリを作成検索と同じ関連度順で並べ、一致文字の領域を半透明に表示 | 選択とカメラだけ |
| Find Next / Previous Match | F3 / Shift+F3。同じ関数の検索語を再使用し、現在のノードから次/前へ。削除・改名後も再検索する | 選択とカメラだけ |
整列・等間隔配置は入力や値を変えず、再評価を要求しません。選択の拡張はWireの向きによるもので、Functionの包含関係とは別です。
Ctrlを押してノード本体をホバーすると、そのノードまでの上流を一時表示します。Focus Ringや選択の色と区別し、Delete・移動の選択には加えません。手前のノードを優先し、ソケット操作・ドラッグ・メニュー・フォーカス喪失中には表示しません。Ctrlを放すと消えます。
FindはAddとは別の対象を持ちます。Addは新しいノードを作り、Findは今の関数の既存ノードだけを探します。最後の検索語は関数ごとに保持し、Escapeでは作成・接続・評価を行いません。検索や接続元への移動では、プロパティパネルに隠れない領域を優先し、カメラ移動前の表示へ戻せます。
一括切断は1〜4096本の現在の接続を一つの変更として扱います。途中でソース版や接続元が変わったら全体を拒否し、半分だけ切りません。ロックされた接続先とAE公開入力は先に解除する必要があります。Swapも同じく一括で、交換後の二つの型互換性と結果型を検証します。初期値のノードをWireに変えたり、AE公開パラメータの役割を入れ替えたりしません。
パン・ズーム中もノード、ソケット、Focus Ringの描画範囲を確保します。ポップアップはウィンドウの上に描画し、Tooltipはカーソルの右下に離して表示します。
検索の前後・連続空白は関連度の判定で正規化します。開いているAddメニューの候補は同じソース版・関数・接続元型で再利用し、版/型が変わると作り直します。保留中の接続元が別パネルで削除された場合は検索を閉じ、無接続のノード作成へ勝手に変えません。メニューの上下移動・検索の戻る操作はキー長押しのリピートにも対応します。
Previewの表示操作#
Previewの下部からFit/25/50/100/200/400%を選べます。100%は画像の1pxを1論理UI pxとして表示する意味であり、OSのDPIや物理ピクセルを保証する設定ではありません。画像上のホイールはカーソル位置の同じ画像点を保って拡大縮小し、中央ドラッグでパンします。Escape/フォーカス喪失でパンを取り消せます。Fitや固定倍率への切り替えはパンを中央へ戻します。
拡大画像は画像領域で切り出し、ソース選択や倍率・状態表示を覆いません。寸法と直近評価のmsを下部に表示します。倍率・パンはこのWindowの表示だけの状態で、CNLや評価要求を変更しません。AEPへ保存するカメラ設定ではありません。Numeric/Linear RGBの解釈と、AE実機・色管理との一致は別問題です。
WindowとCode#
NodeとCodeは独立Windowで、初期はタブスタックします。タブ・境界から配置とサイズを変えられます。CodeのFunctions、Editor、DiagnosticsはCodeの中でのみドッキングするSubwindowです。
閉じたWindowはWindowメニューから戻せます。編集下書きをウィンドウの寿命と同一にしません。AEパネルとして開く場合は対象Windowだけを表示し、内部の上位メニューバーを重複表示しません。
すべてのWindowとCode Subwindowで、タブの右クリックからUndock window / Dock windowを選べます。浮動中の名前タブをドラッグすると、ドッキング候補を選択できます。浮動コンテナの中にも分割配置・タブスタックできます。名前のないタブ帯はコンテナ全体の移動に使います。全4辺・4隅でサイズを変え、横・縦・二方向の斜めカーソルを表示します。判定余白は約5論理px、反対側の縁は固定し、Escape/フォーカス喪失で元へ戻します。
Node、Code、Grid、Experiment、Previewは同じ親スコープを持ち、CodeのFunctions、Editor、DiagnosticsはCode内部だけに置けます。Code内部の浮動WindowもCodeの外へは出ません。Dock windowは同じスコープの標準コンテナへ戻す操作です。切り離し・移動・閉じ直し・再ドッキングでCode下書きや計算内容は変えません。すべて閉じた後もWindowメニューから復帰できます。
重なった浮動コンテナは前面の一つがポインター入力を受け取ります。押して選んだコンテナを前へ出し、奥のタブ・ソケット・resizeを同時に操作しません。ドッキング候補も同じ前後関係を使います。メニュー、設定、Dropdown、Edit Parameterはコンテナより上の共通ポップアップ層へ描画し、親Windowの外に出た選択肢も操作できます。Native Code Editorの領域もこの前後関係に従い、上にあるWindowやPopupを隠しません。
プロパティパネルの左右端は横サイズ変更です。判定余白は約5論理pxで、カーソルを変更します。幅と浮動位置は保存し、Escapeで変更前へ戻します。
Popupがタブや別Windowへ重なる場合、クリック・ホイール・KeyboardはPopupの所有先に届きます。外側クリックで閉じるときも、その下のタブのcloseやWindowのraiseを同時に実行しません。Windowのresizeや移動をEscapeで取り消したframeも、背面のNodeへ同じ入力を渡しません。設定・検索などのApplication PopupはWindow内のPopupより優先し、Tooltip/Docking GuideはKeyboardを奪いません。
AEのEffect Controlsでのドラッグ・数値入力では、操作中の行とoverlayの位置を固定します。他の編集で値が変わったりTimelineの時刻が変わった場合、古い入力を新しい値へ上書きせず取消します。同じ値の通常再描画・公開ではDropdownや入力を閉じません。native ownerの移動・サイズ・DPIが変わる場合も、古いanchorで続行せず取消します。DropdownとDrumは矢印キーの長押しにも対応し、まとめられたrepeat回数を欠落させません。実AEのIME・複数モニター・Undo受入は別途必要です。
Outputは未接続でもMin/Max、Show Valuesなどを先に編集・保存できます。未接続状態は、入力を持たない別の評価機能ではなく、入力待ちの通常CNL可視化式です。入力型に依存するMappingの選択肢は接続後に確定します。Knifeや入力の切断では表示設定を残し、繋ぎ直すと入力だけを変更します。
ノードの計算変更を保存すると、下書きは先に確定し、CNLの検証・実行準備はバックグラウンドで最新の版を優先します。検証中も次の編集ができます。構造編集と型の局所更新まで完全に非同期化されたわけではありません。準備中のPreviewに以前の画像が残る場合は、その旨を表示します。