Files
Beyond-KLE/journal/2026-09-20-led-node.md
T
ewdernaandClaude Opus 5 2ec3dd4a1a PHY: LEDをキーのbooleanと汎用の部品ノードに分ける(P-10解消)
per-key LEDは位置に自由度がないため、キーが持つboolean 1つにする。
設計者が位置を決める部品はLED専用ノードにせず、変換と部品グループだけを持つ
部品ノードとして一般化する。表裏とチェーン順序はPHYに持たない。

Journal: journal/2026-09-20-led-node.md

Co-Authored-By: Claude Opus 5 <noreply@anthropic.com>
2026-09-20 10:53:57 +09:00

66 lines
3.9 KiB
Markdown

# LEDの持ち方 / 部品ノードへの一般化
## 結論
- per-key LEDは、キーが持つboolean 1つ。位置も向きも持たない
- LED専用ノードは作らない。キー以外の部品を一般の「部品ノード」として持ち、LEDはその一例
- 部品ノードは transform と partGroup のみ。orientation は持たない
- 部品グループ名の `@` 始まりは予約。エディタ上の描画にのみ使う
- チェーン順序・論理インデックス・表裏はPHYに持たない
## 案の比較
### per-key LEDの表現
| 案 | 位置 | 採否 |
|---|---|---|
| キーのboolean | 持たない | ○ |
| キーに追随する自動生成ノード | ノードが座標を持つ | × 座標に自由度がない |
| ユーザーが1個ずつ置く | 持つ | × キー数ぶんの手作業 |
### 独立して置く部品
| 案 | 対象 | 採否 |
|---|---|---|
| 部品ノード(汎用) | LED / OLED / エンコーダ / ネジ穴 / MCU など | ○ |
| LEDノード専用 | LEDのみ | × 次の部品で同じ議論をやり直す |
## 根拠
per-key LEDの位置はスイッチのフットプリント内で決まっている(MXならスイッチ上側の窓)。
設計者が選べる自由度がないので、座標を持たせても常に導出可能な値を二重に持つだけになる。
スイッチの品種を持たないと決めた判断と同じ論法。
向きも同様で、per-key LEDはキーの orientation に従う。よってパラメータは有無だけ。
一方、アンダーグローやインジケータは設計者が位置を決めるのでノードが要る。
ここでLED専用ノードにすると、OLED・ロータリーエンコーダ・リセットスイッチ・TRRSジャック・
MCU・ネジ穴が来たときに毎回同じ議論になる。どれも「位置と向きを持つ非キー要素」で構造が同じ。
partGroup(中身を解釈しないラベル)をそのまま流用できるので、一般化するコストがほぼない。
部品ノードが orientation を持たない理由: キーが2軸(キャップの向き = transform.rotation /
スイッチの向き = orientation)を持つのは、キャップという外皮とスイッチが独立に回せるため。
部品ノードにはその二重構造がないので transform.rotation だけで足りる。
`@` 始まりの予約: 部品グループの中身を解釈しないという原則と、描画を変えたいという要求は、
「描画にのみ使う。フットプリントの選択には使わない」で両立する。
記号始まりにすればユーザーが自由に付けた名前(`led-left` など)と絶対に衝突しない。
未知のグループ名は既定の形で描く。
## キーごとのopt-outが要る理由
一部のキーだけLEDを載せない構成として挙がった例(いずれも未検証):
- スタビライザとの干渉
- ロータリーエンコーダに置き換わる位置
- USBの電流上限に収めるためにLED数を絞る
## 捨てた案・送った先
- ファイル単位の「per-key LEDがある」フラグ: キーごとのbooleanから導出できるので存在フラグとしては不要。
既定値を与える設定としては意味があるが、ファイル単位設定の置き場は他にも要求があり別トピックへ。
今回はキーごとのbooleanのみ決め、省略時は false とする
- レイアウトによって条件付きでLEDの有無が変わる構成: ANSI/ISO Enter のようなキー自体の排他と同じ問題で、
LED固有ではない。マルチレイアウト(未導入の概念)側へ送る
- 部品の表裏をPHYが持つ: PCB設計ツールが決める情報。ただし描画の描き分けとの絡みが残るので P-12
- チェーン順序をPHYが持つ: 電気的な接続なのでELC。ただし接点マトリクスと同じ層でよいかに確信がなく P-11