spice2wireviz/examples/single_module.yml
Ryan Malloy c2197f6fe6 Add star-topology layout optimization for single-module diagrams
Three-pass optimization eliminates cable crossings:
1. Order boundary components by average header pin position
2. Regroup header pins by boundary component (reduces inter-cable crossings)
3. Reorder boundary component pins to parallel header (eliminates within-cable
   crossings)

Safety hardening from Apollo review:
- Duplicate header pin deduplication (prevents silent mapping corruption)
- Connection structure validation at entry
- Fan-out averaging for component pins connected to multiple header pins
- Explicit ValueError on pin remapping failures with diagnostic context

145 tests passing (was 130).
2026-02-13 03:07:50 -07:00

68 lines
1.0 KiB
YAML

metadata:
title: 'Wiring diagram: simple_board'
source: tests/fixtures/simple_board.net
generator: spice2wireviz 2026.2.13
connectors:
amplifier_board:
type: Module Interface
pinlabels:
- VIN
- GND
- VOUT
- SIGNAL_IN
notes: 'SPICE subcircuit: .subckt amplifier_board'
J1:
type: PWR_CONN
pinlabels:
- VIN
- GND
notes: 'SPICE ref: J1, nets: VIN, GND'
J2:
type: SIG_CONN
pinlabels:
- VOUT
- SIGNAL_IN
notes: 'SPICE ref: J2, nets: SIGNAL_IN, VOUT'
TP1:
type: TP
style: simple
pinlabels:
- N001
notes: 'SPICE ref: TP1, nets: N001'
cables:
W_J1:
category: bundle
colors:
- ''
- BK
wirelabels:
- VIN
- GND
notes: 'Nets: VIN, GND'
W_J2:
category: bundle
wirecount: 2
wirelabels:
- VOUT
- SIGNAL_IN
notes: 'Nets: VOUT, SIGNAL_IN'
connections:
- - amplifier_board:
- 1
- 2
- W_J1:
- 1
- 2
- J1:
- 1
- 2
- - amplifier_board:
- 3
- 4
- W_J2:
- 1
- 2
- J2:
- 1
- 2