クラスターは長押しで選び、押している間に直近の親から順に上がってループする。 フォーカスモードはダブルクリック(始めた時点で選ばれていたクラスター)かEnterで入り、Escで出る。 キー操作の候補一覧とモディファイアを振る基準を phy-editor-keybindings.md に置いた。 要検討は「モックで試して決める」と「画面仕様までに決める」に分けた。 Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com> Claude-Session: https://claude.ai/code/session_01SMS99uQoYnBW1LHuyyufQc
79 lines
5.5 KiB
Markdown
79 lines
5.5 KiB
Markdown
# PHY Editor モックの所感(画面仕様の入力)
|
|
|
|
モックを触った所感と、それを受けた議論の整理。**仕様ではない。**
|
|
画面仕様を一から作るときの入力にし、仕様へ反映したら消す。
|
|
|
|
## 方向が合意できたもの
|
|
|
|
### 選択
|
|
|
|
- 何を選択しているかが一目で分かること(モックは選択枠がほぼ見えない。下記「モックの実装上の問題」)。
|
|
- クリックでの追加選択は1件ずつのトグルのみ(連続選択の「順番」は作らない)。
|
|
- 複数選択はキャンバス上のドラッグ(範囲選択)でもできる。
|
|
- キャンバスでクリックすると、それまでの選択によらずキーが選ばれる。
|
|
- クラスターは長押しで選ぶ。押している間、一定間隔で選択先が直近の親から順に上がり、
|
|
一番上の親の次はキーに戻ってループする。離したときの状態で選択が確定する。途中の選択先はインジケータで示す。
|
|
- Shift+長押しで、クラスターを選択に足せる。
|
|
- 親とその配下は同時に選択しない(変換が二重にかかるだけで、使い道がない)。
|
|
- クラスターは長押しのほか、階層パネルとキー操作(親へ上がる・子へ降りる)でも選べる。長押しはヘルプで案内する。
|
|
- タッチ操作(長押しが標準のメニューと重なる)は当面考えない。
|
|
- 何もない場所のクリック・Escで選択を外せる。
|
|
|
|
### クラスター
|
|
|
|
- クラスターの当たり判定・選択表示は子を囲む矩形。クラスターのローカル座標で取る(回転に追従するOBB)。
|
|
- 階層(ツリー)パネルはクラスター・VariantGroupの選択と構造の確認に必要。キーの一覧としては不要なので、キーは畳むなど目立たせない。
|
|
- VariantGroupはクラスターの一種という認識。移動・回転の「親」にVariantGroupも含む。
|
|
|
|
### フォーカスモード
|
|
|
|
- 特定のクラスター内だけを編集対象にし、他を薄く表示するモードを作る。
|
|
- 入る: クラスターを選んだ状態でダブルクリック。ダブルクリックを始めた時点で選ばれていたクラスターに入る
|
|
(1回目のクリックで選択がキーに移っても、入る先は変わらない)。キーボードではEnter。
|
|
- 出る: Esc。選択があるときのEscはまず選択を外し、選択がない状態のEscでフォーカスを抜ける。
|
|
|
|
### 移動・回転・サイズ
|
|
|
|
- 移動・サイズ変更・削除をキーボードで操作できる。削除は参照の確認(T-15)を省かない。確認は操作した場所の近くに出す。
|
|
- 矢印キーでの移動方向は、直近の親(クラスター・VariantGroup)の軸方向。ドラッグと同じ。
|
|
- 複数選択に対して回転以外の操作(移動など)もできる。
|
|
- 複数キーを共通の中心で回したいなら、それはクラスターをなす。選択ノードを個別に回転する操作はそれとして残す。
|
|
|
|
### 表示
|
|
|
|
- キャンバスは画面サイズに追従する(モックは1152×896px固定)。
|
|
- 読み込み時は全体が収まり中央に来るようにズームする。同じ操作をボタン・キーでも呼べる(全体表示)。
|
|
- 見出しを付けすぎない(「レイアウト」「PHYの木」など)。
|
|
- ボタンはアイコン化したい。ツールチップを付ける。
|
|
|
|
## 要検討
|
|
|
|
### モックで試して決める
|
|
|
|
触って比べないと決まらないもの。
|
|
|
|
- 長押しの詳細: 選択先が上がる間隔、インジケータの見た目、長押しとドラッグの切り分け(長押しで階層を選んでからドラッグに移れるか)。
|
|
- 個別回転とクラスター化してからの回転のどちらを主な操作にするか。
|
|
- ドラッグのスナップの細かさ。0.25U刻みはズーム1倍で16pxずつ飛び、細かい調整がしづらい。キーボード操作で足りるなら不要。
|
|
- 矢印キーの刻み幅(修飾キーで粗く・細かく、など)。
|
|
- どこまでアイコンのみのボタンにするか。
|
|
- ホイールでのカーソル中心ズーム、ホバー時の強調(モックに無い。未議論)。
|
|
|
|
### 画面仕様までに決める
|
|
|
|
試さなくても決められる、または試す前に決めておく必要があるもの。
|
|
|
|
- キー割り当て。候補の一覧とモディファイアを振る基準は [phy-editor-keybindings.md](phy-editor-keybindings.md)。
|
|
- UIでの呼び方。PHY・ELCなどのレイヤー名は設計上の仮称で、画面に出すかどうかは別途決める(「PHYの木」→「階層」など)。
|
|
- コピー&ペースト(モックに無い。未議論)。新しいIDの振り方と他の層からの参照の扱いはデータモデルの問いで、
|
|
メインドキュメント側に置くべきものかもしれない。
|
|
|
|
## モックの実装上の問題
|
|
|
|
作り直しで解消する前提で、原因の記録だけ残す。
|
|
|
|
- 選択枠が見えない: `.key-face` に `vector-effect: non-scaling-stroke` があり、`stroke-width: 0.055` が画面上0.055pxになる。
|
|
- クラスターをキャンバスでつかめない: クラスターの `<g>` に面がなく、子キーの `pointerdown.stop` が先に取る。
|
|
- プロパティ欄の「±.25U」「±15°」は+方向しか呼ばない。画面下部に同じ操作の −/+ ボタンが重複している。
|
|
- 複数選択の回転は各ノードの原点まわりに個別に回る。ドラッグで動くのはつかんだ1件だけ。
|