@tscircuit/schematic-trace-solver 0.0.148 → 0.0.150
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/.agents/skills/schematic-trace-visualization/SKILL.md +7 -2
- package/dist/index.d.ts +31 -2
- package/dist/index.js +127 -46
- package/lib/solvers/InlineNetLabelSolver/InlineNetLabelSolver.ts +115 -6
- package/lib/solvers/NetLabelPlacementSolver/NetLabelPlacementSolver.ts +17 -1
- package/lib/solvers/NetLabelPlacementSolver/SingleNetLabelPlacementSolver/SingleNetLabelPlacementSolver.ts +2 -0
- package/lib/solvers/NetLabelPlacementSolver/SingleNetLabelPlacementSolver/solvePortOnlyPin.ts +2 -0
- package/lib/types/InputProblem.ts +27 -1
- package/package.json +8 -1
- package/site/examples/example51.page.tsx +4 -0
- package/tests/assets/example51.json +5102 -0
- package/tests/bug-reports/bug-report-20260706T213649Z/__snapshots__/bug-report-20260706T213649Z.snap.svg +751 -5
- package/tests/bug-reports/bug-report-20260706T220324Z/__snapshots__/bug-report-20260706T220324Z.snap.svg +660 -5
- package/tests/bug-reports/bug-report-20260707T020342Z/__snapshots__/bug-report-20260707T020342Z.snap.svg +44 -5
- package/tests/bug-reports/bug-report-20260707T092615Z/__snapshots__/bug-report-20260707T092615Z.snap.svg +394 -5
- package/tests/bug-reports/bug-report-20260707T134549Z/__snapshots__/bug-report-20260707T134549Z.snap.svg +170 -5
- package/tests/bug-reports/bug-report-20260707T134722Z/__snapshots__/bug-report-20260707T134722Z.snap.svg +79 -5
- package/tests/bug-reports/bug-report-20260707T140410Z/__snapshots__/bug-report-20260707T140410Z.snap.svg +219 -5
- package/tests/bug-reports/bug-report-20260707T141025Z/__snapshots__/bug-report-20260707T141025Z.snap.svg +65 -5
- package/tests/bug-reports/bug-report-20260707T141421Z/__snapshots__/bug-report-20260707T141421Z.snap.svg +142 -5
- package/tests/bug-reports/bug-report-20260707T230831Z/__snapshots__/bug-report-20260707T230831Z.snap.svg +100 -5
- package/tests/bug-reports/bug-report-20260708T053736Z/__snapshots__/bug-report-20260708T053736Z.snap.svg +23 -5
- package/tests/bug-reports/bug-report-20260708T055430Z/__snapshots__/bug-report-20260708T055430Z.snap.svg +58 -5
- package/tests/bug-reports/bug-report-20260708T095725Z/__snapshots__/bug-report-20260708T095725Z.snap.svg +86 -5
- package/tests/bug-reports/bug-report-20260716T144856Z/__snapshots__/bug-report-20260716T144856Z.snap.svg +226 -5
- package/tests/bug-reports/bug-report-20260717T022934Z/__snapshots__/bug-report-20260717T022934Z.snap.svg +191 -5
- package/tests/bug-reports/bug-report-20260717T031704Z/__snapshots__/bug-report-20260717T031704Z.snap.svg +30 -5
- package/tests/bug-reports/bug-report-20260717T042845Z/__snapshots__/bug-report-20260717T042845Z.snap.svg +37 -5
- package/tests/bug-reports/bug-report-20260721T221026Z/__snapshots__/bug-report-20260721T221026Z.snap.svg +580 -2
- package/tests/bug-reports/bug-report-20260724T175257Z/__snapshots__/bug-report-20260724T175257Z.snap.svg +44 -5
- package/tests/bug-reports/bug-report-20260728T144234Z/__snapshots__/bug-report-20260728T144234Z.snap.svg +107 -5
- package/tests/bug-reports/bug-report-20260728T225606Z/__snapshots__/bug-report-20260728T225606Z.snap.svg +114 -5
- package/tests/bug-reports/bug-report-20260730T061837Z/__snapshots__/bug-report-20260730T061837Z.snap.svg +121 -5
- package/tests/bug-reports/bug-report-20260731T052229Z/__snapshots__/bug-report-20260731T052229Z.snap.svg +51 -5
- package/tests/bug-reports/bug-report-20260804T095800Z/__snapshots__/bug-report-20260804T095800Z.snap.svg +212 -5
- package/tests/bug-reports/bug-report-20260804T171919Z/__snapshots__/bug-report-20260804T171919Z.snap.svg +569 -5
- package/tests/bug-reports/bug-report-20260804T225912Z/__snapshots__/bug-report-20260804T225912Z.snap.svg +37 -5
- package/tests/bug-reports/bug-report-20260805T061316Z/__snapshots__/bug-report-20260805T061316Z.snap.svg +289 -5
- package/tests/bug-reports/bug-report-20260806T061548Z/__snapshots__/bug-report-20260806T061548Z.snap.svg +289 -5
- package/tests/bug-reports/bug-report-20260806T093501Z/__snapshots__/bug-report-20260806T093501Z.snap.svg +149 -5
- package/tests/bug-reports/bug-report-20260811T075142Z/__snapshots__/bug-report-20260811T075142Z.snap.svg +93 -5
- package/tests/bug-reports/bug-report-20260815T073240Z/__snapshots__/bug-report-20260815T073240Z.snap.svg +79 -5
- package/tests/bug-reports/bug-report-20260819T091818Z/__snapshots__/bug-report-20260819T091818Z.snap.svg +244 -2
- package/tests/examples/__snapshots__/example01.snap.svg +44 -5
- package/tests/examples/__snapshots__/example02.snap.svg +51 -5
- package/tests/examples/__snapshots__/example03.snap.svg +86 -5
- package/tests/examples/__snapshots__/example04.snap.svg +30 -5
- package/tests/examples/__snapshots__/example05.snap.svg +30 -5
- package/tests/examples/__snapshots__/example06.snap.svg +30 -5
- package/tests/examples/__snapshots__/example07.snap.svg +58 -5
- package/tests/examples/__snapshots__/example08.snap.svg +37 -5
- package/tests/examples/__snapshots__/example09.snap.svg +149 -5
- package/tests/examples/__snapshots__/example10.snap.svg +65 -5
- package/tests/examples/__snapshots__/example11.snap.svg +51 -5
- package/tests/examples/__snapshots__/example12.snap.svg +51 -5
- package/tests/examples/__snapshots__/example13.snap.svg +72 -5
- package/tests/examples/__snapshots__/example14.snap.svg +79 -5
- package/tests/examples/__snapshots__/example15.snap.svg +86 -5
- package/tests/examples/__snapshots__/example16.snap.svg +51 -5
- package/tests/examples/__snapshots__/example17.snap.svg +51 -5
- package/tests/examples/__snapshots__/example18.snap.svg +58 -5
- package/tests/examples/__snapshots__/example19.snap.svg +44 -5
- package/tests/examples/__snapshots__/example20.snap.svg +44 -5
- package/tests/examples/__snapshots__/example21.snap.svg +72 -5
- package/tests/examples/__snapshots__/example22.snap.svg +51 -5
- package/tests/examples/__snapshots__/example23.snap.svg +51 -5
- package/tests/examples/__snapshots__/example24.snap.svg +51 -5
- package/tests/examples/__snapshots__/example25.snap.svg +86 -5
- package/tests/examples/__snapshots__/example26.snap.svg +51 -5
- package/tests/examples/__snapshots__/example27.snap.svg +72 -5
- package/tests/examples/__snapshots__/example28.snap.svg +44 -5
- package/tests/examples/__snapshots__/example29.snap.svg +324 -5
- package/tests/examples/__snapshots__/example30.snap.svg +107 -5
- package/tests/examples/__snapshots__/example31.snap.svg +37 -5
- package/tests/examples/__snapshots__/example32.snap.svg +149 -5
- package/tests/examples/__snapshots__/example33.snap.svg +93 -5
- package/tests/examples/__snapshots__/example34.snap.svg +51 -5
- package/tests/examples/__snapshots__/example35.snap.svg +58 -5
- package/tests/examples/__snapshots__/example36.snap.svg +44 -5
- package/tests/examples/__snapshots__/example37.snap.svg +72 -5
- package/tests/examples/__snapshots__/example38.snap.svg +30 -5
- package/tests/examples/__snapshots__/example39.snap.svg +37 -5
- package/tests/examples/__snapshots__/example40.snap.svg +100 -5
- package/tests/examples/__snapshots__/example41.snap.svg +44 -5
- package/tests/examples/__snapshots__/example42.snap.svg +65 -5
- package/tests/examples/__snapshots__/example43.snap.svg +58 -5
- package/tests/examples/__snapshots__/example44.snap.svg +107 -5
- package/tests/examples/__snapshots__/example45.snap.svg +51 -5
- package/tests/examples/__snapshots__/example46.snap.svg +93 -5
- package/tests/examples/__snapshots__/example47.snap.svg +93 -5
- package/tests/examples/__snapshots__/example48.snap.svg +65 -5
- package/tests/examples/__snapshots__/example49.snap.svg +177 -5
- package/tests/examples/__snapshots__/example50.snap.svg +93 -5
- package/tests/examples/__snapshots__/example51.snap.svg +952 -0
- package/tests/examples/example51.test.ts +12 -0
- package/tests/fixtures/convertSolverOutputToCircuitJson.test.ts +219 -0
- package/tests/fixtures/convertSolverOutputToCircuitJson.ts +1058 -0
- package/tests/fixtures/matcher.ts +45 -8
- package/tests/repros/__snapshots__/board-1273-trace-overlap-cycle.snap.svg +762 -2
- package/tests/repros/__snapshots__/board-15984-same-net-junction.snap.svg +111 -2
- package/tests/repros/__snapshots__/board1096-usb-label-overlap-iteration.snap.svg +167 -2
- package/tests/repros/__snapshots__/bugreport-001-gnd-overlap.snap.svg +65 -5
- package/tests/repros/__snapshots__/manufacturePartNumber-text-box.snap.svg +30 -5
- package/tests/repros/__snapshots__/netlabel-connector-through-rail-label.snap.svg +79 -5
- package/tests/repros/__snapshots__/repro-atmega328p-fault-pullup.snap.svg +65 -5
- package/tests/repros/__snapshots__/repro-atmega328p-missing-gnd-netlabel.snap.svg +149 -5
- package/tests/repros/__snapshots__/repro-board-589-regulator-section.snap.svg +55 -2
- package/tests/repros/__snapshots__/repro-board-648-esp12f-section.snap.svg +160 -2
- package/tests/repros/__snapshots__/repro-bq24074-battery-charger.snap.svg +135 -5
- package/tests/repros/__snapshots__/repro-bq25895-cross-net-trace-overlap.snap.svg +69 -2
- package/tests/repros/__snapshots__/repro-cc2340r5.snap.svg +86 -5
- package/tests/repros/__snapshots__/repro-core-555-power-cross-net-overlap.snap.svg +44 -5
- package/tests/repros/__snapshots__/repro-core-subcircuit-missing-ground.snap.svg +44 -5
- package/tests/repros/__snapshots__/repro-core-tb67s579ftg-inline-label-routing.snap.svg +260 -0
- package/tests/repros/__snapshots__/repro-example35-minimize-trace-crossing.snap.svg +335 -2
- package/tests/repros/__snapshots__/repro-ground-label-on-lower-rail-end.snap.svg +48 -2
- package/tests/repros/__snapshots__/repro-ina237-current-monitor.snap.svg +149 -5
- package/tests/repros/__snapshots__/repro-missing-trace-netlabel.snap.svg +72 -5
- package/tests/repros/__snapshots__/repro-netlabel-collision-687.snap.svg +100 -5
- package/tests/repros/__snapshots__/repro-netlabel-overlap-trace.snap.svg +51 -5
- package/tests/repros/__snapshots__/repro-nrf52810-clock-routing.snap.svg +90 -2
- package/tests/repros/__snapshots__/repro-power-group-rail-labels.snap.svg +37 -5
- package/tests/repros/__snapshots__/repro-rectifier-trace-overlap.snap.svg +44 -5
- package/tests/repros/__snapshots__/repro-rp2040-gamepad-trace-alignment.snap.svg +237 -2
- package/tests/repros/__snapshots__/repro-rp2040-usb-cc2-ground-overlap.snap.svg +72 -5
- package/tests/repros/__snapshots__/repro-rp2040-v3v3-label-placement.snap.svg +51 -5
- package/tests/repros/__snapshots__/repro-rp2040-zero-crystal-fallback-netlabels.snap.svg +30 -5
- package/tests/repros/__snapshots__/repro-ti-power-output-section.snap.svg +79 -5
- package/tests/repros/__snapshots__/repro-tida010076-j4-ground-bus.snap.svg +27 -2
- package/tests/repros/__snapshots__/repro-tida010076-page02.snap.svg +1150 -5
- package/tests/repros/__snapshots__/repro-tps61222-trace-intersection.snap.svg +51 -5
- package/tests/repros/__snapshots__/repro-type-c-16pin-self-connection.snap.svg +30 -5
- package/tests/repros/__snapshots__/repro-type-c-16pin-to-resistor.snap.svg +30 -5
- package/tests/repros/__snapshots__/repro-type-c-vbus-led-ground-label.snap.svg +44 -5
- package/tests/repros/__snapshots__/repro-usb-power-vbus-label-detour.snap.svg +685 -2
- package/tests/repros/__snapshots__/repro-vcc-pin1-detour.snap.svg +27 -2
- package/tests/repros/__snapshots__/repro129-host-custom-symbol-passives.snap.svg +51 -5
- package/tests/repros/__snapshots__/repro130-bq27441-fuel-gauge-trace-through-c1.snap.svg +100 -5
- package/tests/repros/__snapshots__/repro161-power-section-autolayout.snap.svg +107 -5
- package/tests/repros/__snapshots__/repro47-endpoint-obstacle-detour.snap.svg +51 -5
- package/tests/repros/__snapshots__/repro48-555-timer-vcc-rail-label.snap.svg +104 -2
- package/tests/repros/__snapshots__/repro5-escape-padded-text-obstacles.snap.svg +30 -5
- package/tests/repros/__snapshots__/repro51-overlap-junction-crossing.snap.svg +65 -5
- package/tests/repros/__snapshots__/repro84-stacked-gnd-label-orientation.snap.svg +27 -2
- package/tests/repros/__snapshots__/small-variant-resistor-facing-direction.snap.svg +58 -5
- package/tests/repros/__snapshots__/trace-overlap-box-resistor.snap.svg +37 -5
- package/tests/repros/assets/repro-core-tb67s579ftg-inline-label-routing.input.json +900 -0
- package/tests/repros/repro-core-tb67s579ftg-inline-label-routing.test.ts +40 -0
- package/tests/solvers/InlineNetLabelSolver/__snapshots__/fallback-net-label-width.snap.svg +25 -7
- package/tests/solvers/InlineNetLabelSolver/__snapshots__/inline-net-label-anchored-label-clearance.snap.svg +34 -2
- package/tests/solvers/InlineNetLabelSolver/__snapshots__/inline-net-label-port-stub.snap.svg +23 -5
- package/tests/solvers/InlineNetLabelSolver/__snapshots__/inline-net-label-two-pin-net.snap.svg +23 -5
- package/tests/solvers/InlineNetLabelSolver/__snapshots__/inline-net-label01.snap.svg +23 -5
- package/tests/solvers/InlineNetLabelSolver/__snapshots__/inline-net-label02.snap.svg +23 -5
- package/tests/solvers/InlineNetLabelSolver/__snapshots__/terminal-stub-trace-clearance.snap.svg +71 -0
- package/tests/solvers/InlineNetLabelSolver/fallback-net-label-width.test.ts +10 -1
- package/tests/solvers/InlineNetLabelSolver/terminal-stub-trace-clearance.test.ts +102 -0
- package/tests/solvers/SchematicTraceSingleLineSolver2/__snapshots__/SchematicTraceSingleLineSolver2_01-example17-d1_1-u1_1.snap.svg +23 -5
- package/tests/solvers/SchematicTraceSingleLineSolver2/__snapshots__/SchematicTraceSingleLineSolver2_repro47-short-opposing-pins.snap.svg +20 -2
- package/tests/solvers/TraceCleanupSolver/__snapshots__/TraceCleanupSolver.snap.svg +44 -5
- package/tests/solvers/TraceLabelOverlapAvoidanceSolver/__snapshots__/TraceLabelOverlapAvoidanceSolver.snap.svg +79 -5
- package/tests/solvers/TraceLabelOverlapAvoidanceSolver/sub-solver/__snapshots__/MergedNetLabelObstacles.snap.svg +44 -5
- package/tests/solvers/TraceLabelOverlapAvoidanceSolver/sub-solver/__snapshots__/OverlapAvoidanceStepSolver.snap.svg +23 -5
- package/tests/solvers/TraceLabelOverlapAvoidanceSolver/sub-solver/__snapshots__/SingleOverlapSolver.snap.svg +30 -5
|
@@ -1,4 +1,6 @@
|
|
|
1
|
-
<svg width="
|
|
1
|
+
<svg width="2416" height="1200" viewBox="0 0 2416 1200" xmlns="http://www.w3.org/2000/svg" role="img" aria-label="Solver debug visualization on the left and Circuit JSON schematic on the right">
|
|
2
|
+
<g transform="translate(0, 0) scale(1.875, 1.875) translate(0, 0)">
|
|
3
|
+
<rect width="100%" height="100%" fill="white"/><g><polyline data-points="-2.6,2.2 -0.5,2" data-type="line" data-label="" points="83.70731707317071,231.76585365853663 198.4390243902439,242.69268292682932" fill="none" stroke="hsl(0, 100%, 50%, 0.8)" stroke-width="1px"/></g><g><polyline data-points="0.5,2 2.45,1" data-type="line" data-label="" points="253.0731707317073,242.69268292682932 359.609756097561,297.3268292682927" fill="none" stroke="hsl(304, 100%, 50%, 0.8)" stroke-width="1px"/></g><g><polyline data-points="0.5,2 2.45,-1" data-type="line" data-label="" points="253.0731707317073,242.69268292682932 359.609756097561,406.59512195121954" fill="none" stroke="hsl(304, 100%, 50%, 0.8)" stroke-width="1px"/></g><g><polyline data-points="3.55,1 5.45,1" data-type="line" data-label="" points="419.7073170731707,297.3268292682927 523.5121951219512,297.3268292682927" fill="none" stroke="hsl(312, 100%, 50%, 0.8)" stroke-width="1px"/></g><g><polyline data-points="3.55,-1 5.45,-1" data-type="line" data-label="" points="419.7073170731707,406.59512195121954 523.5121951219512,406.59512195121954" fill="none" stroke="hsl(320, 100%, 50%, 0.8)" stroke-width="1px"/></g><g><polyline data-points="-2.6,1.8 6.55,1" data-type="line" data-label="" points="83.70731707317071,253.61951219512198 583.6097560975609,297.3268292682927" fill="none" stroke="hsl(157, 100%, 50%, 0.8)" stroke-width="1px" stroke-dasharray="4 2"/></g><g><polyline data-points="-2.6,1.8 6.55,-1" data-type="line" data-label="" points="83.70731707317071,253.61951219512198 583.6097560975609,406.59512195121954" fill="none" stroke="hsl(157, 100%, 50%, 0.8)" stroke-width="1px" stroke-dasharray="4 2"/></g><g><polyline data-points="6.55,1 6.55,-1" data-type="line" data-label="" points="583.6097560975609,297.3268292682927 583.6097560975609,406.59512195121954" fill="none" stroke="hsl(157, 100%, 50%, 0.8)" stroke-width="1px" stroke-dasharray="4 2"/></g><g><polyline data-points="-2.6,2.2 -1.55,2.2 -1.55,2 -0.5,2" data-type="line" data-label="" points="83.70731707317071,231.76585365853663 141.0731707317073,231.76585365853663 141.0731707317073,242.69268292682932 198.4390243902439,242.69268292682932" fill="none" stroke="purple" stroke-width="1px"/></g><g><polyline data-points="2.45,-1 2.25,-1 2.25,1 2.45,1" data-type="line" data-label="" points="359.609756097561,406.59512195121954 348.6829268292683,406.59512195121954 348.6829268292683,297.3268292682927 359.609756097561,297.3268292682927" fill="none" stroke="purple" stroke-width="1px"/></g><g><polyline data-points="0.5,2 2.25,2 2.25,1 2.45,1" data-type="line" data-label="" points="253.0731707317073,242.69268292682932 348.6829268292683,242.69268292682932 348.6829268292683,297.3268292682927 359.609756097561,297.3268292682927" fill="none" stroke="purple" stroke-width="1px"/></g><g><polyline data-points="3.55,1 5.45,1" data-type="line" data-label="" points="419.7073170731707,297.3268292682927 523.5121951219512,297.3268292682927" fill="none" stroke="purple" stroke-width="1px"/></g><g><polyline data-points="3.55,-1 5.45,-1" data-type="line" data-label="" points="419.7073170731707,406.59512195121954 523.5121951219512,406.59512195121954" fill="none" stroke="purple" stroke-width="1px"/></g><g><polyline data-points="6.55,-1 6.75,-1 6.75,1 6.55,1" data-type="line" data-label="" points="583.6097560975609,406.59512195121954 594.5365853658536,406.59512195121954 594.5365853658536,297.3268292682927 583.6097560975609,297.3268292682927" fill="none" stroke="purple" stroke-width="1px"/></g><g><polyline data-points="-2.6,1.8 -2.499,1.8 -2.499,1.5990000000000002" data-type="line" data-label="" points="83.70731707317071,253.61951219512198 89.22536585365853,253.61951219512198 89.22536585365853,264.6009756097561" fill="none" stroke="purple" stroke-width="1px"/></g><g><rect data-type="rect" data-label="BT1" data-x="-3" data-y="2" x="40" y="220.83902439024396" width="43.707317073170714" height="43.707317073170714" fill="hsl(199, 100%, 50%, 0.8)" stroke="black" stroke-width="0.01830357142857143"/></g><g><rect data-type="rect" data-label="SW1" data-x="0" data-y="2" x="198.4390243902439" y="220.83902439024396" width="54.634146341463406" height="43.707317073170714" fill="hsl(69, 100%, 50%, 0.8)" stroke="black" stroke-width="0.01830357142857143"/></g><g><rect data-type="rect" data-label="R1" data-x="3" data-y="1" x="359.609756097561" y="286.7029272195123" width="60.097560975609724" height="21.24780409756096" fill="hsl(71, 100%, 50%, 0.8)" stroke="black" stroke-width="0.01830357142857143"/></g><g><rect data-type="rect" data-label="R2" data-x="3" data-y="-1" x="359.609756097561" y="395.9712199024391" width="60.097560975609724" height="21.24780409756096" fill="hsl(72, 100%, 50%, 0.8)" stroke="black" stroke-width="0.01830357142857143"/></g><g><rect data-type="rect" data-label="D1" data-x="6" data-y="1" x="523.5121951219512" y="286.7029272195123" width="60.09756097560967" height="21.24780409756096" fill="hsl(357, 100%, 50%, 0.8)" stroke="black" stroke-width="0.01830357142857143"/></g><g><rect data-type="rect" data-label="D2" data-x="6" data-y="-1" x="523.5121951219512" y="395.9712199024391" width="60.09756097560967" height="21.24780409756096" fill="hsl(358, 100%, 50%, 0.8)" stroke="black" stroke-width="0.01830357142857143"/></g><g><rect data-type="rect" data-label="netId: BT1.plus to SW1.in
|
|
2
4
|
globalConnNetId: connectivity_net0" data-x="-2.075" data-y="2.4250000000000003" x="106.92682926829266" y="207.18048780487806" width="10.926829268292693" height="24.585365853658573" fill="hsl(40, 100%, 50%, 0.35)" stroke="black" stroke-width="0.01830357142857143"/></g><g><rect data-type="rect" data-label="netId: GND
|
|
3
5
|
globalConnNetId: connectivity_net4" data-x="-2.499" data-y="1.3590000000000002" x="83.76195121951218" y="264.6009756097561" width="10.926829268292693" height="26.224390243902462" fill="#00000066" stroke="#000000" stroke-width="0.01830357142857143"/></g><g><rect data-type="rect" data-label="netId: GND
|
|
4
6
|
globalConnNetId: connectivity_net4" data-x="6.75" data-y="-1.24" x="589.0731707317073" y="406.59512195121954" width="10.92682926829275" height="26.224390243902462" fill="#00000066" stroke="#000000" stroke-width="0.01830357142857143"/></g><g><rect data-type="rect" data-label="netId: SW1.out to R2.left
|
|
@@ -32,7 +34,7 @@ orientation: y+" data-x="4.5" data-y="-1" cx="471.609756097561" cy="406.59512195
|
|
|
32
34
|
const h = svg.getElementById('crosshair-h');
|
|
33
35
|
const v = svg.getElementById('crosshair-v');
|
|
34
36
|
const coords = svg.getElementById('coordinates');
|
|
35
|
-
|
|
37
|
+
|
|
36
38
|
crosshair.style.display = 'block';
|
|
37
39
|
h.setAttribute('x1', '0');
|
|
38
40
|
h.setAttribute('x2', '640');
|
|
@@ -51,13 +53,13 @@ orientation: y+" data-x="4.5" data-y="-1" cx="471.609756097561" cy="406.59512195
|
|
|
51
53
|
// y' = (y - ty) / sy
|
|
52
54
|
const sx = matrix.a;
|
|
53
55
|
const sy = matrix.d;
|
|
54
|
-
const tx = matrix.e;
|
|
56
|
+
const tx = matrix.e;
|
|
55
57
|
const ty = matrix.f;
|
|
56
58
|
const realPoint = {
|
|
57
59
|
x: (x - tx) / sx,
|
|
58
60
|
y: (y - ty) / sy // Flip y back since we used negative scale
|
|
59
61
|
}
|
|
60
|
-
|
|
62
|
+
|
|
61
63
|
coords.textContent = `(${realPoint.x.toFixed(2)}, ${realPoint.y.toFixed(2)})`;
|
|
62
64
|
coords.setAttribute('x', (x + 5).toString());
|
|
63
65
|
coords.setAttribute('y', (y - 5).toString());
|
|
@@ -65,4 +67,62 @@ orientation: y+" data-x="4.5" data-y="-1" cx="471.609756097561" cy="406.59512195
|
|
|
65
67
|
document.currentScript.parentElement.addEventListener('mouseleave', () => {
|
|
66
68
|
document.currentScript.parentElement.getElementById('crosshair').style.display = 'none';
|
|
67
69
|
});
|
|
68
|
-
]]></script
|
|
70
|
+
]]></script>
|
|
71
|
+
</g>
|
|
72
|
+
<g transform="translate(1216, 200)">
|
|
73
|
+
<style>
|
|
74
|
+
.boundary { fill: rgb(245, 241, 237); }
|
|
75
|
+
.schematic-boundary { fill: none; stroke: #fff; }
|
|
76
|
+
.component { fill: none; stroke: rgb(132, 0, 0); }
|
|
77
|
+
.chip { fill: rgb(255, 255, 194); stroke: rgb(132, 0, 0); }
|
|
78
|
+
.component-pin { fill: none; stroke: rgb(132, 0, 0); }
|
|
79
|
+
.text { font-family: sans-serif; fill: rgb(0, 150, 0); }
|
|
80
|
+
.pin-number { fill: rgb(169, 0, 0); }
|
|
81
|
+
.port-label { fill: rgb(0, 100, 100); }
|
|
82
|
+
.component-name { fill: rgb(0, 100, 100); }
|
|
83
|
+
|
|
84
|
+
</style><rect class="boundary" x="0" y="0" width="1200" height="800"/><g class="trace sch-trace" data-layer="base" data-circuit-json-type="schematic_trace" data-schematic-trace-id="schematic_trace_0__stack1"><path d="M 78.87323943669998 209.6995305165 L 197.1830985916 209.6995305165 L 197.1830985916 232.23474178410004 L 315.4929577465 232.23474178410004" class="trace-invisible-hover-outline sch-trace-hitbox" stroke="rgb(0, 150, 0)" fill="none" stroke-width="18.02816901408px" stroke-linecap="round" opacity="0" stroke-linejoin="round"/><path class="sch-trace-path" d="M 78.87323943669998 209.6995305165 L 197.1830985916 209.6995305165 L 197.1830985916 232.23474178410004 L 315.4929577465 232.23474178410004" stroke="rgb(0, 150, 0)" fill="none" stroke-width="2.25352112676px" stroke-linecap="round" stroke-linejoin="round"/></g><g class="trace sch-trace" data-layer="base" data-circuit-json-type="schematic_trace" data-schematic-trace-id="schematic_trace_1__stack1"><path d="M 647.8873239436 570.2629107981 L 625.3521126759999 570.2629107981 L 625.3521126759999 344.9107981221 L 647.8873239436 344.9107981221" class="trace-invisible-hover-outline sch-trace-hitbox" stroke="rgb(0, 150, 0)" fill="none" stroke-width="18.02816901408px" stroke-linecap="round" opacity="0" stroke-linejoin="round"/><path class="sch-trace-path" d="M 647.8873239436 570.2629107981 L 625.3521126759999 570.2629107981 L 625.3521126759999 344.9107981221 L 647.8873239436 344.9107981221" stroke="rgb(0, 150, 0)" fill="none" stroke-width="2.25352112676px" stroke-linecap="round" stroke-linejoin="round"/></g><g class="trace sch-trace" data-layer="base" data-circuit-json-type="schematic_trace" data-schematic-trace-id="schematic_trace_2__stack1"><path d="M 428.16901408449996 232.23474178410004 L 625.3521126759999 232.23474178410004 L 625.3521126759999 344.9107981221 L 647.8873239436 344.9107981221" class="trace-invisible-hover-outline sch-trace-hitbox" stroke="rgb(0, 150, 0)" fill="none" stroke-width="18.02816901408px" stroke-linecap="round" opacity="0" stroke-linejoin="round"/><path class="sch-trace-path" d="M 428.16901408449996 232.23474178410004 L 625.3521126759999 232.23474178410004 L 625.3521126759999 344.9107981221 L 647.8873239436 344.9107981221" stroke="rgb(0, 150, 0)" fill="none" stroke-width="2.25352112676px" stroke-linecap="round" stroke-linejoin="round"/></g><g class="trace sch-trace" data-layer="base" data-circuit-json-type="schematic_trace" data-schematic-trace-id="schematic_trace_3__stack1"><path d="M 771.8309859153999 344.9107981221 L 985.9154929576 344.9107981221" class="trace-invisible-hover-outline sch-trace-hitbox" stroke="rgb(0, 150, 0)" fill="none" stroke-width="18.02816901408px" stroke-linecap="round" opacity="0" stroke-linejoin="round"/><path class="sch-trace-path" d="M 771.8309859153999 344.9107981221 L 985.9154929576 344.9107981221" stroke="rgb(0, 150, 0)" fill="none" stroke-width="2.25352112676px" stroke-linecap="round" stroke-linejoin="round"/></g><g class="trace sch-trace" data-layer="base" data-circuit-json-type="schematic_trace" data-schematic-trace-id="schematic_trace_4__stack1"><path d="M 771.8309859153999 570.2629107981 L 985.9154929576 570.2629107981" class="trace-invisible-hover-outline sch-trace-hitbox" stroke="rgb(0, 150, 0)" fill="none" stroke-width="18.02816901408px" stroke-linecap="round" opacity="0" stroke-linejoin="round"/><path class="sch-trace-path" d="M 771.8309859153999 570.2629107981 L 985.9154929576 570.2629107981" stroke="rgb(0, 150, 0)" fill="none" stroke-width="2.25352112676px" stroke-linecap="round" stroke-linejoin="round"/></g><g class="trace sch-trace" data-layer="base" data-circuit-json-type="schematic_trace" data-schematic-trace-id="schematic_trace_5__stack1"><path d="M 1109.8591549294 570.2629107981 L 1132.394366197 570.2629107981 L 1132.394366197 344.9107981221 L 1109.8591549294 344.9107981221" class="trace-invisible-hover-outline sch-trace-hitbox" stroke="rgb(0, 150, 0)" fill="none" stroke-width="18.02816901408px" stroke-linecap="round" opacity="0" stroke-linejoin="round"/><path class="sch-trace-path" d="M 1109.8591549294 570.2629107981 L 1132.394366197 570.2629107981 L 1132.394366197 344.9107981221 L 1109.8591549294 344.9107981221" stroke="rgb(0, 150, 0)" fill="none" stroke-width="2.25352112676px" stroke-linecap="round" stroke-linejoin="round"/></g><g class="trace sch-trace" data-layer="base" data-circuit-json-type="schematic_trace" data-schematic-trace-id="schematic_trace_6__stack1"><path d="M 78.87323943669998 254.76995305170004 L 90.253521126838 254.76995305170004 L 90.253521126838 277.417840375638" class="trace-invisible-hover-outline sch-trace-hitbox" stroke="rgb(0, 150, 0)" fill="none" stroke-width="18.02816901408px" stroke-linecap="round" opacity="0" stroke-linejoin="round"/><path class="sch-trace-path" d="M 78.87323943669998 254.76995305170004 L 90.253521126838 254.76995305170004 L 90.253521126838 277.417840375638" stroke="rgb(0, 150, 0)" fill="none" stroke-width="2.25352112676px" stroke-linecap="round" stroke-linejoin="round"/></g><g class="trace-overlays sch-trace-overlays" data-layer="overlay" data-circuit-json-type="schematic_trace" data-schematic-trace-id="schematic_trace_0__stack1"/><g class="trace-overlays sch-trace-overlays" data-layer="overlay" data-circuit-json-type="schematic_trace" data-schematic-trace-id="schematic_trace_1__stack1"><circle cx="625.3521126759999" cy="344.9107981221" r="3.38028169014" class="trace-junction sch-trace-junction" fill="rgb(0, 150, 0)"/><circle cx="647.8873239436" cy="344.9107981221" r="3.38028169014" class="trace-junction sch-trace-junction" fill="rgb(0, 150, 0)"/></g><g class="trace-overlays sch-trace-overlays" data-layer="overlay" data-circuit-json-type="schematic_trace" data-schematic-trace-id="schematic_trace_2__stack1"/><g class="trace-overlays sch-trace-overlays" data-layer="overlay" data-circuit-json-type="schematic_trace" data-schematic-trace-id="schematic_trace_3__stack1"/><g class="trace-overlays sch-trace-overlays" data-layer="overlay" data-circuit-json-type="schematic_trace" data-schematic-trace-id="schematic_trace_4__stack1"/><g class="trace-overlays sch-trace-overlays" data-layer="overlay" data-circuit-json-type="schematic_trace" data-schematic-trace-id="schematic_trace_5__stack1"/><g class="trace-overlays sch-trace-overlays" data-layer="overlay" data-circuit-json-type="schematic_trace" data-schematic-trace-id="schematic_trace_6__stack1"/><g class="sch-component" data-circuit-json-type="schematic_component" data-schematic-component-id="schematic_component_0__stack1"><rect class="component-overlay sch-component-overlay" x="72.11267605641997" y="209.6995305165" width="13.971830985912007" height="45.07042253520004" fill="transparent"/><path class="sch-component-symbol-path" d="M 86.08450704233198 229.53051643198802 L 72.11267605641997 229.53051643198802" stroke="rgb(132, 0, 0)" fill="none" stroke-width="2.25352112676px" stroke-linecap="round"/><path class="sch-component-symbol-path" d="M 83.38028169021997 233.136150234804 L 74.81690140853198 233.136150234804" stroke="rgb(132, 0, 0)" fill="none" stroke-width="2.25352112676px" stroke-linecap="round"/><path class="sch-component-symbol-path" d="M 78.87323943669998 229.53051643198802 L 78.87323943669998 209.6995305165" stroke="rgb(132, 0, 0)" fill="none" stroke-width="2.25352112676px" stroke-linecap="round"/><path class="sch-component-symbol-path" d="M 78.87323943669998 254.76995305170004 L 78.87323943669998 233.58685446015602" stroke="rgb(132, 0, 0)" fill="none" stroke-width="2.25352112676px" stroke-linecap="round"/><text class="sch-component-name sch-component-text" x="91.49295774655599" y="223.22065727706" stroke="rgb(245, 241, 237)" stroke-width="2.25352112676px" paint-order="stroke" fill="rgb(15, 15, 15)" font-family="sans-serif" text-anchor="start" dominant-baseline="middle" font-size="20.28169014084px">BT1</text><text class="sch-component-text" x="91.49295774655599" y="241.24882629114003" fill="rgb(15, 15, 15)" font-family="sans-serif" text-anchor="start" dominant-baseline="middle" font-size="20.28169014084px"></text></g><g class="sch-component" data-circuit-json-type="schematic_component" data-schematic-component-id="schematic_component_1__stack1"><rect class="component-overlay sch-component-overlay" x="315.4929577465" y="211.4786261428895" width="112.67605633799997" height="22.23869532986842" fill="transparent"/><path class="sch-component-symbol-path" d="M 315.4929577465 232.23474178410004 L 354.04002965160527 233.71732147275793" stroke="rgb(132, 0, 0)" fill="none" stroke-width="2.25352112676px" stroke-linecap="round"/><path class="sch-component-symbol-path" d="M 361.45292809489473 230.75216209544215 L 386.6567828020789 211.4786261428895" stroke="rgb(132, 0, 0)" fill="none" stroke-width="2.25352112676px" stroke-linecap="round"/><path class="sch-component-symbol-path" d="M 389.6219421793947 233.71732147275793 L 428.16901408449996 232.23474178410004" stroke="rgb(132, 0, 0)" fill="none" stroke-width="2.25352112676px" stroke-linecap="round"/><text class="sch-component-name sch-component-text" x="371.8309859155" y="195.17024956765266" stroke="rgb(245, 241, 237)" stroke-width="2.25352112676px" paint-order="stroke" fill="rgb(15, 15, 15)" font-family="sans-serif" text-anchor="middle" dominant-baseline="ideographic" font-size="20.28169014084px">SW1</text><text class="sch-component-text" x="371.8309859155" y="269.2992340005474" fill="rgb(15, 15, 15)" font-family="sans-serif" text-anchor="middle" dominant-baseline="hanging" font-size="20.28169014084px"></text><circle class="sch-component-symbol-circle" cx="386.6567828020789" cy="232.23474178410004" r="2.25352112676px" stroke-width="2.25352112676px" fill="none" stroke="rgb(132, 0, 0)"/><circle class="sch-component-symbol-circle" cx="357.00518902892105" cy="232.23474178410004" r="2.25352112676px" stroke-width="2.25352112676px" fill="none" stroke="rgb(132, 0, 0)"/></g><g class="sch-component" data-circuit-json-type="schematic_component" data-schematic-component-id="schematic_component_2__stack1"><rect class="component-overlay sch-component-overlay" x="647.8873239436" y="328.3891079812591" width="123.94366197179988" height="33.043380281681834" fill="transparent"/><path class="sch-component-symbol-path" d="M 647.8873239436 344.9107981221 L 668.548732394299 344.9107981221" stroke="rgb(132, 0, 0)" fill="none" stroke-width="2.25352112676px" stroke-linecap="round"/><path class="sch-component-symbol-path" d="M 751.1695774647009 344.9107981221 L 771.8309859153999 344.9107981221" stroke="rgb(132, 0, 0)" fill="none" stroke-width="2.25352112676px" stroke-linecap="round"/><path class="sch-component-symbol-path" d="M 668.548732394299 328.3891079812591 L 751.1695774647009 328.3891079812591 L 751.1695774647009 361.4324882629409 L 668.548732394299 361.4324882629409 L 668.548732394299 328.3891079812591" stroke="rgb(132, 0, 0)" fill="none" stroke-width="2.25352112676px" stroke-linecap="round"/><text class="sch-component-name sch-component-text" x="709.8591549294999" y="311.85915492962" stroke="rgb(245, 241, 237)" stroke-width="2.25352112676px" paint-order="stroke" fill="rgb(15, 15, 15)" font-family="sans-serif" text-anchor="middle" dominant-baseline="ideographic" font-size="20.28169014084px">R1</text><text class="sch-component-text" x="709.8591549294999" y="377.96244131458" fill="rgb(15, 15, 15)" font-family="sans-serif" text-anchor="middle" dominant-baseline="hanging" font-size="20.28169014084px"></text></g><g class="sch-component" data-circuit-json-type="schematic_component" data-schematic-component-id="schematic_component_3__stack1"><rect class="component-overlay sch-component-overlay" x="647.8873239436" y="553.7412206572591" width="123.94366197179988" height="33.04338028168195" fill="transparent"/><path class="sch-component-symbol-path" d="M 647.8873239436 570.2629107981 L 668.548732394299 570.2629107981" stroke="rgb(132, 0, 0)" fill="none" stroke-width="2.25352112676px" stroke-linecap="round"/><path class="sch-component-symbol-path" d="M 751.1695774647009 570.2629107981 L 771.8309859153999 570.2629107981" stroke="rgb(132, 0, 0)" fill="none" stroke-width="2.25352112676px" stroke-linecap="round"/><path class="sch-component-symbol-path" d="M 668.548732394299 553.7412206572591 L 751.1695774647009 553.7412206572591 L 751.1695774647009 586.784600938941 L 668.548732394299 586.784600938941 L 668.548732394299 553.7412206572591" stroke="rgb(132, 0, 0)" fill="none" stroke-width="2.25352112676px" stroke-linecap="round"/><text class="sch-component-name sch-component-text" x="709.8591549294999" y="537.21126760562" stroke="rgb(245, 241, 237)" stroke-width="2.25352112676px" paint-order="stroke" fill="rgb(15, 15, 15)" font-family="sans-serif" text-anchor="middle" dominant-baseline="ideographic" font-size="20.28169014084px">R2</text><text class="sch-component-text" x="709.8591549294999" y="603.3145539905801" fill="rgb(15, 15, 15)" font-family="sans-serif" text-anchor="middle" dominant-baseline="hanging" font-size="20.28169014084px"></text></g><g class="sch-component" data-circuit-json-type="schematic_component" data-schematic-component-id="schematic_component_4__stack1"><rect class="component-overlay sch-component-overlay" x="985.9154929576" y="328.226074395127" width="123.94366197179988" height="32.17768147344805" fill="transparent"/><path class="sch-component-symbol-path" d="M 1064.572047670473 344.91079812210006 L 1033.586132177523 360.40375586857505" stroke="rgb(132, 0, 0)" fill="none" stroke-width="2.25352112676px" stroke-linecap="round"/><path class="sch-component-symbol-path" d="M 1033.586132177523 328.226074395127 L 1064.572047670473 344.91079812210006" stroke="rgb(132, 0, 0)" fill="none" stroke-width="2.25352112676px" stroke-linecap="round"/><path class="sch-component-symbol-path" d="M 1033.586132177523 360.40375586857505 L 1033.586132177523 328.226074395127" stroke="rgb(132, 0, 0)" fill="none" stroke-width="2.25352112676px" stroke-linecap="round"/><path class="sch-component-symbol-path" d="M 1064.572047670473 328.226074395127 L 1064.572047670473 360.40375586857505" stroke="rgb(132, 0, 0)" fill="none" stroke-width="2.25352112676px" stroke-linecap="round"/><path class="sch-component-symbol-path" d="M 1033.586132177523 344.91079812210006 L 985.9154929576 344.91079812210006" stroke="rgb(132, 0, 0)" fill="none" stroke-width="2.25352112676px" stroke-linecap="round"/><path class="sch-component-symbol-path" d="M 1109.8591549294 344.91079812210006 L 1065.763813650971 344.91079812210006" stroke="rgb(132, 0, 0)" fill="none" stroke-width="2.25352112676px" stroke-linecap="round"/><text class="sch-component-name sch-component-text" x="1046.6955579630019" y="317.5001805706443" stroke="rgb(245, 241, 237)" stroke-width="2.25352112676px" paint-order="stroke" fill="rgb(15, 15, 15)" font-family="sans-serif" text-anchor="middle" dominant-baseline="ideographic" font-size="20.28169014084px">D1</text><text class="sch-component-text" x="1047.8873239435" y="381.8555435175404" fill="rgb(15, 15, 15)" font-family="sans-serif" text-anchor="middle" dominant-baseline="hanging" font-size="20.28169014084px"></text></g><g class="sch-component" data-circuit-json-type="schematic_component" data-schematic-component-id="schematic_component_5__stack1"><rect class="component-overlay sch-component-overlay" x="985.9154929576" y="553.578187071127" width="123.94366197179988" height="32.17768147344805" fill="transparent"/><path class="sch-component-symbol-path" d="M 1064.572047670473 570.2629107981 L 1033.586132177523 585.755868544575" stroke="rgb(132, 0, 0)" fill="none" stroke-width="2.25352112676px" stroke-linecap="round"/><path class="sch-component-symbol-path" d="M 1033.586132177523 553.578187071127 L 1064.572047670473 570.2629107981" stroke="rgb(132, 0, 0)" fill="none" stroke-width="2.25352112676px" stroke-linecap="round"/><path class="sch-component-symbol-path" d="M 1033.586132177523 585.755868544575 L 1033.586132177523 553.578187071127" stroke="rgb(132, 0, 0)" fill="none" stroke-width="2.25352112676px" stroke-linecap="round"/><path class="sch-component-symbol-path" d="M 1064.572047670473 553.578187071127 L 1064.572047670473 585.755868544575" stroke="rgb(132, 0, 0)" fill="none" stroke-width="2.25352112676px" stroke-linecap="round"/><path class="sch-component-symbol-path" d="M 1033.586132177523 570.2629107981 L 985.9154929576 570.2629107981" stroke="rgb(132, 0, 0)" fill="none" stroke-width="2.25352112676px" stroke-linecap="round"/><path class="sch-component-symbol-path" d="M 1109.8591549294 570.2629107981 L 1065.763813650971 570.2629107981" stroke="rgb(132, 0, 0)" fill="none" stroke-width="2.25352112676px" stroke-linecap="round"/><text class="sch-component-name sch-component-text" x="1046.6955579630019" y="542.8522932466443" stroke="rgb(245, 241, 237)" stroke-width="2.25352112676px" paint-order="stroke" fill="rgb(15, 15, 15)" font-family="sans-serif" text-anchor="middle" dominant-baseline="ideographic" font-size="20.28169014084px">D2</text><text class="sch-component-text" x="1047.8873239435" y="607.2076561935404" fill="rgb(15, 15, 15)" font-family="sans-serif" text-anchor="middle" dominant-baseline="hanging" font-size="20.28169014084px"></text></g><g class="schematic-port-hover sch-port-hover" data-schematic-port-id="source_port_0_0__stack1"><circle cx="78.87323943669998" cy="173.86854460101603" r="4.50704225352" fill="red" opacity="0"/></g><g class="schematic-port-hover sch-port-hover" data-schematic-port-id="source_port_0_1__stack1"><circle cx="78.87323943669998" cy="218.93896713621606" r="4.50704225352" fill="red" opacity="0"/></g><g class="schematic-port-hover sch-port-hover" data-schematic-port-id="source_port_1_0__stack1"><circle cx="329.01408450706" cy="232.23474178410004" r="4.50704225352" fill="red" opacity="0"/></g><g class="schematic-port-hover sch-port-hover" data-schematic-port-id="source_port_1_1__stack1"><circle cx="441.69014084506" cy="232.23474178410004" r="4.50704225352" fill="red" opacity="0"/></g><g class="schematic-port-hover sch-port-hover" data-schematic-port-id="source_port_2_0__stack1"><circle cx="676.0563380281001" cy="344.9107981221" r="4.50704225352" fill="red" opacity="0"/></g><g class="schematic-port-hover sch-port-hover" data-schematic-port-id="source_port_2_1__stack1"><circle cx="799.9999999999" cy="344.9107981221" r="4.50704225352" fill="red" opacity="0"/></g><g class="schematic-port-hover sch-port-hover" data-schematic-port-id="source_port_3_0__stack1"><circle cx="676.0563380281001" cy="570.2629107981" r="4.50704225352" fill="red" opacity="0"/></g><g class="schematic-port-hover sch-port-hover" data-schematic-port-id="source_port_3_1__stack1"><circle cx="799.9999999999" cy="570.2629107981" r="4.50704225352" fill="red" opacity="0"/></g><g class="schematic-port-hover sch-port-hover" data-schematic-port-id="source_port_4_0__stack1"><circle cx="989.2957746477398" cy="345.17081979057235" r="4.50704225352" fill="red" opacity="0"/></g><g class="schematic-port-hover sch-port-hover" data-schematic-port-id="source_port_4_1__stack1"><circle cx="1113.23943661954" cy="345.17081979057235" r="4.50704225352" fill="red" opacity="0"/></g><g class="schematic-port-hover sch-port-hover" data-schematic-port-id="source_port_5_0__stack1"><circle cx="989.2957746477398" cy="570.5229324665723" r="4.50704225352" fill="red" opacity="0"/></g><g class="schematic-port-hover sch-port-hover" data-schematic-port-id="source_port_5_1__stack1"><circle cx="1113.23943661954" cy="570.5229324665723" r="4.50704225352" fill="red" opacity="0"/></g><path class="net-label sch-net-label" data-circuit-json-type="schematic_net_label" data-schematic-net-label-id="schematic_net_label_0__stack1" d="
|
|
85
|
+
M 138.02816901414997,209.6995305165
|
|
86
|
+
L 126.76056338034996,203.615023474248
|
|
87
|
+
L 126.76056338034996,164.9746478874032
|
|
88
|
+
L 149.29577464794997,164.9746478874032
|
|
89
|
+
L 149.29577464794997,203.615023474248
|
|
90
|
+
Z
|
|
91
|
+
" fill="rgba(255, 255, 255, 0.6)" stroke="rgb(132, 0, 0)" stroke-width="2.25352112676px"/><text class="net-label-text sch-net-label-text" data-circuit-json-type="schematic_net_label" data-schematic-net-label-id="schematic_net_label_0__stack1" x="138.02816901414997" y="199.55868544608" fill="rgb(132, 0, 0)" text-anchor="start" dominant-baseline="central" font-family="sans-serif" font-variant-numeric="tabular-nums" font-size="20.28169014084px" transform="rotate(-90 138.02816901414997 199.55868544608)">XX</text><path class="net-label sch-net-label" data-circuit-json-type="schematic_net_label" data-schematic-net-label-id="schematic_net_label_1__stack1" d="
|
|
92
|
+
M 90.253521126838,277.417840375638
|
|
93
|
+
L 101.521126760638,283.50234741788995
|
|
94
|
+
L 101.521126760638,335.3784037559052
|
|
95
|
+
L 78.985915493038,335.3784037559052
|
|
96
|
+
L 78.985915493038,283.50234741789
|
|
97
|
+
Z
|
|
98
|
+
" fill="rgba(255, 255, 255, 0.6)" stroke="rgb(132, 0, 0)" stroke-width="2.25352112676px"/><text class="net-label-text sch-net-label-text" data-circuit-json-type="schematic_net_label" data-schematic-net-label-id="schematic_net_label_1__stack1" x="90.253521126838" y="287.558685446058" fill="rgb(132, 0, 0)" text-anchor="start" dominant-baseline="central" font-family="sans-serif" font-variant-numeric="tabular-nums" font-size="20.28169014084px" transform="rotate(90 90.253521126838 287.558685446058)">XXX</text><path class="net-label sch-net-label" data-circuit-json-type="schematic_net_label" data-schematic-net-label-id="schematic_net_label_2__stack1" d="
|
|
99
|
+
M 1132.394366197,570.2629107981
|
|
100
|
+
L 1143.6619718308,576.347417840352
|
|
101
|
+
L 1143.6619718308,628.2234741783673
|
|
102
|
+
L 1121.1267605632,628.2234741783673
|
|
103
|
+
L 1121.1267605632,576.347417840352
|
|
104
|
+
Z
|
|
105
|
+
" fill="rgba(255, 255, 255, 0.6)" stroke="rgb(132, 0, 0)" stroke-width="2.25352112676px"/><text class="net-label-text sch-net-label-text" data-circuit-json-type="schematic_net_label" data-schematic-net-label-id="schematic_net_label_2__stack1" x="1132.394366197" y="580.4037558685201" fill="rgb(132, 0, 0)" text-anchor="start" dominant-baseline="central" font-family="sans-serif" font-variant-numeric="tabular-nums" font-size="20.28169014084px" transform="rotate(90 1132.394366197 580.4037558685201)">XXX</text><path class="net-label sch-net-label" data-circuit-json-type="schematic_net_label" data-schematic-net-label-id="schematic_net_label_3__stack1" d="
|
|
106
|
+
M 625.3521126759999,570.2629107981
|
|
107
|
+
L 636.6197183098,576.347417840352
|
|
108
|
+
L 636.6197183098,614.9877934271968
|
|
109
|
+
L 614.0845070421999,614.9877934271968
|
|
110
|
+
L 614.0845070421999,576.347417840352
|
|
111
|
+
Z
|
|
112
|
+
" fill="rgba(255, 255, 255, 0.6)" stroke="rgb(132, 0, 0)" stroke-width="2.25352112676px"/><text class="net-label-text sch-net-label-text" data-circuit-json-type="schematic_net_label" data-schematic-net-label-id="schematic_net_label_3__stack1" x="625.3521126759999" y="580.4037558685201" fill="rgb(132, 0, 0)" text-anchor="start" dominant-baseline="central" font-family="sans-serif" font-variant-numeric="tabular-nums" font-size="20.28169014084px" transform="rotate(90 625.3521126759999 580.4037558685201)">XX</text><path class="net-label sch-net-label" data-circuit-json-type="schematic_net_label" data-schematic-net-label-id="schematic_net_label_4__stack1" d="
|
|
113
|
+
M 878.8732394365,344.9107981221
|
|
114
|
+
L 867.6056338026999,338.826291079848
|
|
115
|
+
L 867.6056338026999,300.1859154930032
|
|
116
|
+
L 890.1408450703,300.1859154930032
|
|
117
|
+
L 890.1408450703,338.82629107984803
|
|
118
|
+
Z
|
|
119
|
+
" fill="rgba(255, 255, 255, 0.6)" stroke="rgb(132, 0, 0)" stroke-width="2.25352112676px"/><text class="net-label-text sch-net-label-text" data-circuit-json-type="schematic_net_label" data-schematic-net-label-id="schematic_net_label_4__stack1" x="878.8732394365" y="334.76995305168" fill="rgb(132, 0, 0)" text-anchor="start" dominant-baseline="central" font-family="sans-serif" font-variant-numeric="tabular-nums" font-size="20.28169014084px" transform="rotate(-90 878.8732394365 334.76995305168)">XX</text><path class="net-label sch-net-label" data-circuit-json-type="schematic_net_label" data-schematic-net-label-id="schematic_net_label_5__stack1" d="
|
|
120
|
+
M 878.8732394365,570.2629107981
|
|
121
|
+
L 867.6056338026999,564.1784037558481
|
|
122
|
+
L 867.6056338026999,525.5380281690033
|
|
123
|
+
L 890.1408450703,525.5380281690033
|
|
124
|
+
L 890.1408450703,564.1784037558481
|
|
125
|
+
Z
|
|
126
|
+
" fill="rgba(255, 255, 255, 0.6)" stroke="rgb(132, 0, 0)" stroke-width="2.25352112676px"/><text class="net-label-text sch-net-label-text" data-circuit-json-type="schematic_net_label" data-schematic-net-label-id="schematic_net_label_5__stack1" x="878.8732394365" y="560.12206572768" fill="rgb(132, 0, 0)" text-anchor="start" dominant-baseline="central" font-family="sans-serif" font-variant-numeric="tabular-nums" font-size="20.28169014084px" transform="rotate(-90 878.8732394365 560.12206572768)">XX</text>
|
|
127
|
+
</g>
|
|
128
|
+
</svg>
|
|
@@ -1,4 +1,6 @@
|
|
|
1
|
-
<svg width="
|
|
1
|
+
<svg width="2416" height="1200" viewBox="0 0 2416 1200" xmlns="http://www.w3.org/2000/svg" role="img" aria-label="Solver debug visualization on the left and Circuit JSON schematic on the right">
|
|
2
|
+
<g transform="translate(0, 0) scale(1.875, 1.875) translate(0, 0)">
|
|
3
|
+
<rect width="100%" height="100%" fill="white"/><g><polyline data-points="1.05,-0.1 1.05,0.1" data-type="line" data-label="" points="359.5652173913043,313.9130434782609 359.5652173913043,283.47826086956525" fill="none" stroke="hsl(157, 100%, 50%, 0.8)" stroke-width="1px" stroke-dasharray="4 2"/></g><g><polyline data-points="1.05,-0.1 2.5300000000000002,-0.1 2.5300000000000002,0.1 1.05,0.1" data-type="line" data-label="" points="359.5652173913043,313.9130434782609 584.7826086956521,313.9130434782609 584.7826086956521,283.47826086956525 359.5652173913043,283.47826086956525" fill="none" stroke="purple" stroke-width="1px"/></g><g><rect data-type="rect" data-label="U1" data-x="0" data-y="0" x="40.00000000000006" y="253.04347826086962" width="319.56521739130426" height="91.30434782608691" fill="hsl(164, 100%, 50%, 0.8)" stroke="black" stroke-width="0.006571428571428573"/></g><g><rect data-type="rect" data-label="SOMETHING_THAT_IS_LONG" data-x="0.79" data-y="-0.43" x="100.86956521739137" y="350.4347826086956" width="438.26086956521726" height="27.39130434782612" fill="rgba(160, 0, 220, 0.14)" stroke="black" stroke-width="0.006571428571428573"/></g><g><rect data-type="rect" data-label="netId: GND
|
|
2
4
|
globalConnNetId: connectivity_net0" data-x="2.5300000000000002" data-y="-0.33999999999999997" x="569.5652173913043" y="313.9130434782609" width="30.43478260869574" height="73.04347826086956" fill="#00000066" stroke="#000000" stroke-width="0.006571428571428573"/></g><g><circle data-type="point" data-label="U1.3
|
|
3
5
|
x+" data-x="1.05" data-y="-0.1" cx="359.5652173913043" cy="313.9130434782609" r="3" fill="hsl(321, 100%, 50%, 0.8)"/></g><g><circle data-type="point" data-label="U1.4
|
|
4
6
|
x+" data-x="1.05" data-y="0.1" cx="359.5652173913043" cy="283.47826086956525" r="3" fill="hsl(322, 100%, 50%, 0.8)"/></g><g><circle data-type="point" data-label="anchorPoint
|
|
@@ -12,7 +14,7 @@ orientation: y-" data-x="2.5300000000000002" data-y="-0.1" cx="584.7826086956521
|
|
|
12
14
|
const h = svg.getElementById('crosshair-h');
|
|
13
15
|
const v = svg.getElementById('crosshair-v');
|
|
14
16
|
const coords = svg.getElementById('coordinates');
|
|
15
|
-
|
|
17
|
+
|
|
16
18
|
crosshair.style.display = 'block';
|
|
17
19
|
h.setAttribute('x1', '0');
|
|
18
20
|
h.setAttribute('x2', '640');
|
|
@@ -31,13 +33,13 @@ orientation: y-" data-x="2.5300000000000002" data-y="-0.1" cx="584.7826086956521
|
|
|
31
33
|
// y' = (y - ty) / sy
|
|
32
34
|
const sx = matrix.a;
|
|
33
35
|
const sy = matrix.d;
|
|
34
|
-
const tx = matrix.e;
|
|
36
|
+
const tx = matrix.e;
|
|
35
37
|
const ty = matrix.f;
|
|
36
38
|
const realPoint = {
|
|
37
39
|
x: (x - tx) / sx,
|
|
38
40
|
y: (y - ty) / sy // Flip y back since we used negative scale
|
|
39
41
|
}
|
|
40
|
-
|
|
42
|
+
|
|
41
43
|
coords.textContent = `(${realPoint.x.toFixed(2)}, ${realPoint.y.toFixed(2)})`;
|
|
42
44
|
coords.setAttribute('x', (x + 5).toString());
|
|
43
45
|
coords.setAttribute('y', (y - 5).toString());
|
|
@@ -45,4 +47,27 @@ orientation: y-" data-x="2.5300000000000002" data-y="-0.1" cx="584.7826086956521
|
|
|
45
47
|
document.currentScript.parentElement.addEventListener('mouseleave', () => {
|
|
46
48
|
document.currentScript.parentElement.getElementById('crosshair').style.display = 'none';
|
|
47
49
|
});
|
|
48
|
-
]]></script
|
|
50
|
+
]]></script>
|
|
51
|
+
</g>
|
|
52
|
+
<g transform="translate(1216, 200)">
|
|
53
|
+
<style>
|
|
54
|
+
.boundary { fill: rgb(245, 241, 237); }
|
|
55
|
+
.schematic-boundary { fill: none; stroke: #fff; }
|
|
56
|
+
.component { fill: none; stroke: rgb(132, 0, 0); }
|
|
57
|
+
.chip { fill: rgb(255, 255, 194); stroke: rgb(132, 0, 0); }
|
|
58
|
+
.component-pin { fill: none; stroke: rgb(132, 0, 0); }
|
|
59
|
+
.text { font-family: sans-serif; fill: rgb(0, 150, 0); }
|
|
60
|
+
.pin-number { fill: rgb(169, 0, 0); }
|
|
61
|
+
.port-label { fill: rgb(0, 100, 100); }
|
|
62
|
+
.component-name { fill: rgb(0, 100, 100); }
|
|
63
|
+
|
|
64
|
+
</style><rect class="boundary" x="0" y="0" width="1200" height="800"/><g class="trace sch-trace" data-layer="base" data-circuit-json-type="schematic_trace" data-schematic-trace-id="schematic_trace_0__stack1"><path d="M 662.90322580645 386.1612903226 L 1020.9677419355301 386.1612903226 L 1020.9677419355301 337.7741935484 L 662.90322580645 337.7741935484" class="trace-invisible-hover-outline sch-trace-hitbox" stroke="rgb(0, 150, 0)" fill="none" stroke-width="38.70967741936px" stroke-linecap="round" opacity="0" stroke-linejoin="round"/><path class="sch-trace-path" d="M 662.90322580645 386.1612903226 L 1020.9677419355301 386.1612903226 L 1020.9677419355301 337.7741935484 L 662.90322580645 337.7741935484" stroke="rgb(0, 150, 0)" fill="none" stroke-width="4.83870967742px" stroke-linecap="round" stroke-linejoin="round"/></g><g class="trace-overlays sch-trace-overlays" data-layer="overlay" data-circuit-json-type="schematic_trace" data-schematic-trace-id="schematic_trace_0__stack1"/><g class="sch-component" data-circuit-json-type="schematic_component" data-schematic-component-id="schematic_component_0__stack1"><rect class="component chip sch-component-body" x="251.61290322575002" y="289.3870967742" width="314.51612903230006" height="145.16129032259994" stroke-width="4.83870967742px" fill="rgb(255, 255, 194)" stroke="rgb(132, 0, 0)"/><rect class="component-overlay sch-component-overlay" x="251.61290322575002" y="289.3870967742" width="314.51612903230006" height="145.16129032259994" fill="transparent"/><text class="sch-text" x="408.8709677419" y="361.9677419355" fill="#0f172a" text-anchor="middle" dominant-baseline="middle" font-family="sans-serif" font-size="43.54838709678px" transform="rotate(0, 408.8709677419, 361.9677419355)">U1</text><line class="component-pin sch-component-pin sch-port-line" x1="566.1290322580501" y1="386.1612903226" x2="662.90322580645" y2="386.1612903226" stroke-width="4.83870967742px"/><g class="sch-port" data-schematic-port-id="source_port_0_0__stack1"><rect x="658.06451612903" y="381.32258064518" width="9.67741935484" height="9.67741935484" opacity="0"/></g><text class="pin-number sch-pin-number" x="614.5161290322501" y="381.32258064518" style="font-family: sans-serif;" fill="rgb(169, 0, 0)" text-anchor="middle" dominant-baseline="auto" font-size="36.29032258065px" transform="">3</text><line class="component-pin sch-component-pin sch-port-line" x1="566.1290322580501" y1="337.7741935484" x2="662.90322580645" y2="337.7741935484" stroke-width="4.83870967742px"/><g class="sch-port" data-schematic-port-id="source_port_0_1__stack1"><rect x="658.06451612903" y="332.93548387097997" width="9.67741935484" height="9.67741935484" opacity="0"/></g><text class="pin-number sch-pin-number" x="614.5161290322501" y="332.93548387097997" style="font-family: sans-serif;" fill="rgb(169, 0, 0)" text-anchor="middle" dominant-baseline="auto" font-size="36.29032258065px" transform="">4</text></g><g class="schematic-port-hover sch-port-hover" data-schematic-port-id="source_port_0_0__stack1"><circle cx="662.90322580645" cy="386.1612903226" r="9.67741935484" fill="red" opacity="0"/></g><g class="schematic-port-hover sch-port-hover" data-schematic-port-id="source_port_0_1__stack1"><circle cx="662.90322580645" cy="337.7741935484" r="9.67741935484" fill="red" opacity="0"/></g><path class="net-label sch-net-label" data-circuit-json-type="schematic_net_label" data-schematic-net-label-id="schematic_net_label_0__stack1" d="
|
|
65
|
+
M 1020.9677419355301,386.1612903226
|
|
66
|
+
L 1045.16129032263,399.225806451634
|
|
67
|
+
L 1045.16129032263,510.6129032258424
|
|
68
|
+
L 996.77419354843,510.6129032258424
|
|
69
|
+
L 996.77419354843,399.225806451634
|
|
70
|
+
Z
|
|
71
|
+
" fill="rgba(255, 255, 255, 0.6)" stroke="rgb(132, 0, 0)" stroke-width="4.83870967742px"/><text class="net-label-text sch-net-label-text" data-circuit-json-type="schematic_net_label" data-schematic-net-label-id="schematic_net_label_0__stack1" x="1020.9677419355301" y="407.93548387098997" fill="rgb(132, 0, 0)" text-anchor="start" dominant-baseline="central" font-family="sans-serif" font-variant-numeric="tabular-nums" font-size="43.54838709678px" transform="rotate(90 1020.9677419355301 407.93548387098997)">XXX</text><text class="sch-text" x="599.99999999999" y="466.00000000003" fill="#7e22ce" text-anchor="middle" dominant-baseline="middle" font-family="sans-serif" font-size="43.54838709678px" transform="rotate(0, 599.99999999999, 466.00000000003)">SOMETHING_THAT_IS_LONG</text><rect class="schematic-box sch-box" x="251.61290322575005" y="444.22580645164" width="696.77419354848" height="43.548387096780004" stroke-width="4.83870967742px" stroke="rgb(132, 0, 0)" fill="transparent" stroke-dasharray="38.70967741936 19.35483870968"/>
|
|
72
|
+
</g>
|
|
73
|
+
</svg>
|
|
@@ -1,4 +1,6 @@
|
|
|
1
|
-
<svg width="640" height="640" viewBox="0 0 640 640" xmlns="http://www.w3.org/2000/svg"><rect width="100%" height="100%" fill="white"/><g><polyline data-points="3.3774999999999995,1.5100000000000002 3.3774999999999995,1.7100000000000004" data-type="line" data-label="" points="574.6987951807228,145.84337349397586 574.6987951807228,128.97590361445776" fill="none" stroke="hsl(176, 100%, 50%, 0.8)" stroke-width="1px"/></g><g><polyline data-points="-0.7725000000000006,0.2950000000000018 0.3774999999999997,0.3100000000000005" data-type="line" data-label="" points="224.6987951807228,248.31325301204802 321.6867469879518,247.04819277108427" fill="none" stroke="hsl(48, 100%, 50%, 0.8)" stroke-width="1px"/></g><g><polyline data-points="-2.0475,-1.39 0.3774999999999997,-1.39" data-type="line" data-label="" points="117.16867469879517,390.4216867469879 321.6867469879518,390.4216867469879" fill="none" stroke="hsl(312, 100%, 50%, 0.8)" stroke-width="1px"/></g><g><polyline data-points="3.3774999999999995,-2.7900000000000005 0.3774999999999997,-0.1899999999999995" data-type="line" data-label="" points="574.6987951807228,508.49397590361446 321.6867469879518,289.21686746987945" fill="none" stroke="hsl(157, 100%, 50%, 0.8)" stroke-width="1px" stroke-dasharray="4 2"/></g><g><polyline data-points="3.3774999999999995,-2.7900000000000005 3.3774999999999995,-2.5900000000000003" data-type="line" data-label="" points="574.6987951807228,508.49397590361446 574.6987951807228,491.6265060240964" fill="none" stroke="hsl(157, 100%, 50%, 0.8)" stroke-width="1px" stroke-dasharray="4 2"/></g><g><polyline data-points="3.3774999999999995,-2.7900000000000005 3.3774999999999995,-2.3900000000000006" data-type="line" data-label="" points="574.6987951807228,508.49397590361446 574.6987951807228,474.7590361445783" fill="none" stroke="hsl(157, 100%, 50%, 0.8)" stroke-width="1px" stroke-dasharray="4 2"/></g><g><polyline data-points="3.3774999999999995,-2.7900000000000005 -0.3225000000000006,0.6600000000000018" data-type="line" data-label="" points="574.6987951807228,508.49397590361446 262.6506024096385,217.53012048192753" fill="none" stroke="hsl(157, 100%, 50%, 0.8)" stroke-width="1px" stroke-dasharray="4 2"/></g><g><polyline data-points="3.3774999999999995,-2.7900000000000005 -2.4125,-0.9399999999999997" data-type="line" data-label="" points="574.6987951807228,508.49397590361446 86.38554216867468,352.4698795180722" fill="none" stroke="hsl(157, 100%, 50%, 0.8)" stroke-width="1px" stroke-dasharray="4 2"/></g><g><polyline data-points="0.3774999999999997,-0.1899999999999995 3.3774999999999995,-2.5900000000000003" data-type="line" data-label="" points="321.6867469879518,289.21686746987945 574.6987951807228,491.6265060240964" fill="none" stroke="hsl(157, 100%, 50%, 0.8)" stroke-width="1px" stroke-dasharray="4 2"/></g><g><polyline data-points="0.3774999999999997,-0.1899999999999995 3.3774999999999995,-2.3900000000000006" data-type="line" data-label="" points="321.6867469879518,289.21686746987945 574.6987951807228,474.7590361445783" fill="none" stroke="hsl(157, 100%, 50%, 0.8)" stroke-width="1px" stroke-dasharray="4 2"/></g><g><polyline data-points="0.3774999999999997,-0.1899999999999995 -0.3225000000000006,0.6600000000000018" data-type="line" data-label="" points="321.6867469879518,289.21686746987945 262.6506024096385,217.53012048192753" fill="none" stroke="hsl(157, 100%, 50%, 0.8)" stroke-width="1px" stroke-dasharray="4 2"/></g><g><polyline data-points="0.3774999999999997,-0.1899999999999995 -2.4125,-0.9399999999999997" data-type="line" data-label="" points="321.6867469879518,289.21686746987945 86.38554216867468,352.4698795180722" fill="none" stroke="hsl(157, 100%, 50%, 0.8)" stroke-width="1px" stroke-dasharray="4 2"/></g><g><polyline data-points="3.3774999999999995,-2.5900000000000003 3.3774999999999995,-2.3900000000000006" data-type="line" data-label="" points="574.6987951807228,491.6265060240964 574.6987951807228,474.7590361445783" fill="none" stroke="hsl(157, 100%, 50%, 0.8)" stroke-width="1px" stroke-dasharray="4 2"/></g><g><polyline data-points="3.3774999999999995,-2.5900000000000003 -0.3225000000000006,0.6600000000000018" data-type="line" data-label="" points="574.6987951807228,491.6265060240964 262.6506024096385,217.53012048192753" fill="none" stroke="hsl(157, 100%, 50%, 0.8)" stroke-width="1px" stroke-dasharray="4 2"/></g><g><polyline data-points="3.3774999999999995,-2.5900000000000003 -2.4125,-0.9399999999999997" data-type="line" data-label="" points="574.6987951807228,491.6265060240964 86.38554216867468,352.4698795180722" fill="none" stroke="hsl(157, 100%, 50%, 0.8)" stroke-width="1px" stroke-dasharray="4 2"/></g><g><polyline data-points="3.3774999999999995,-2.3900000000000006 -0.3225000000000006,0.6600000000000018" data-type="line" data-label="" points="574.6987951807228,474.7590361445783 262.6506024096385,217.53012048192753" fill="none" stroke="hsl(157, 100%, 50%, 0.8)" stroke-width="1px" stroke-dasharray="4 2"/></g><g><polyline data-points="3.3774999999999995,-2.3900000000000006 -2.4125,-0.9399999999999997" data-type="line" data-label="" points="574.6987951807228,474.7590361445783 86.38554216867468,352.4698795180722" fill="none" stroke="hsl(157, 100%, 50%, 0.8)" stroke-width="1px" stroke-dasharray="4 2"/></g><g><polyline data-points="-0.3225000000000006,0.6600000000000018 -2.4125,-0.9399999999999997" data-type="line" data-label="" points="262.6506024096385,217.53012048192753 86.38554216867468,352.4698795180722" fill="none" stroke="hsl(157, 100%, 50%, 0.8)" stroke-width="1px" stroke-dasharray="4 2"/></g><g><polyline data-points="-1.2225000000000006,0.6600000000000018 -2.4125,-1.84" data-type="line" data-label="" points="186.74698795180717,217.53012048192753 86.38554216867468,428.37349397590356" fill="none" stroke="hsl(186, 100%, 50%, 0.8)" stroke-width="1px" stroke-dasharray="4 2"/></g><g><polyline data-points="3.3774999999999995,1.5100000000000002 3.5774999999999997,1.5100000000000002 3.5774999999999997,1.7100000000000004 3.3774999999999995,1.7100000000000004" data-type="line" data-label="" points="574.6987951807228,145.84337349397586 591.566265060241,145.84337349397586 591.566265060241,128.97590361445776 574.6987951807228,128.97590361445776" fill="none" stroke="purple" stroke-width="1px"/></g><g><polyline data-points="-0.7725000000000006,0.2950000000000018 -0.7725000000000006,0.09500000000000186 0.17749999999999966,0.09500000000000186 0.17749999999999966,0.3100000000000005 0.3774999999999997,0.3100000000000005" data-type="line" data-label="" points="224.6987951807228,248.31325301204802 224.6987951807228,265.18072289156606 304.8192771084337,265.18072289156606 304.8192771084337,247.04819277108427 321.6867469879518,247.04819277108427" fill="none" stroke="purple" stroke-width="1px"/></g><g><polyline data-points="0.3774999999999997,-0.1899999999999995 0.027499999999999553,-0.1899999999999995 0.027499999999999553,0.6600000000000018 -0.3225000000000006,0.6600000000000018" data-type="line" data-label="" points="321.6867469879518,289.21686746987945 292.16867469879514,289.21686746987945 292.16867469879514,217.53012048192753 262.6506024096385,217.53012048192753" fill="none" stroke="purple" stroke-width="1px"/></g><g><polyline data-points="3.3774999999999995,-2.3900000000000006 3.5774999999999997,-2.3900000000000006 3.5774999999999997,-2.5900000000000003 3.3774999999999995,-2.5900000000000003" data-type="line" data-label="" points="574.6987951807228,474.7590361445783 591.566265060241,474.7590361445783 591.566265060241,491.6265060240964 574.6987951807228,491.6265060240964" fill="none" stroke="purple" stroke-width="1px"/></g><g><polyline data-points="3.3774999999999995,-2.7900000000000005 3.5774999999999997,-2.7900000000000005 3.5774999999999997,-2.5900000000000003 3.3774999999999995,-2.5900000000000003" data-type="line" data-label="" points="574.6987951807228,508.49397590361446 591.566265060241,508.49397590361446 591.566265060241,491.6265060240964 574.6987951807228,491.6265060240964" fill="none" stroke="purple" stroke-width="1px"/></g><g><polyline data-points="-2.0475,-1.39 0.3774999999999997,-1.39" data-type="line" data-label="" points="117.16867469879517,390.4216867469879 321.6867469879518,390.4216867469879" fill="none" stroke="purple" stroke-width="1px"/></g><g><polyline data-points="-2.4125,-0.9399999999999997 -2.4125,-0.8899999999999997 -2.7125000000000004,-0.8899999999999997 -2.7125000000000004,-0.9909999999999998" data-type="line" data-label="" points="86.38554216867468,352.4698795180722 86.38554216867468,348.2530120481927 61.08433734939754,348.2530120481927 61.08433734939754,356.77108433734935" fill="none" stroke="purple" stroke-width="1px"/></g><g><polyline data-points="-1.2225000000000006,0.6600000000000018 -1.3235000000000006,0.6600000000000018 -1.3235000000000006,0.8610000000000018" data-type="line" data-label="" points="186.74698795180717,217.53012048192753 178.22891566265054,217.53012048192753 178.22891566265054,200.57831325301186" fill="none" stroke="purple" stroke-width="1px"/></g><g><polyline data-points="-2.4125,-1.84 -2.4125,-1.8900000000000001 -2.8625000000000003,-1.8900000000000001 -2.8625000000000003,-0.989" data-type="line" data-label="" points="86.38554216867468,428.37349397590356 86.38554216867468,432.5903614457831 48.433734939759006,432.5903614457831 48.433734939759006,356.6024096385542" fill="none" stroke="purple" stroke-width="1px"/></g><g><rect data-type="rect" data-label="schematic_component_0" data-x="1.8774999999999997" data-y="-0.43999999999999995" x="321.68674698795184" y="91.0240963855421" width="253.01204819277098" height="438.55421686746996" fill="hsl(24, 100%, 50%, 0.8)" stroke="black" stroke-width="0.011857142857142858"/></g><g><rect data-type="rect" data-label="schematic_component_6" data-x="-0.7725000000000006" data-y="0.5600000000000018" x="186.74698795180714" y="203.61445783132513" width="75.90361445783134" height="44.6987951807229" fill="hsl(24, 100%, 50%, 0.8)" stroke="black" stroke-width="0.011857142857142858"/></g><g><rect data-type="rect" data-label="schematic_component_7" data-x="-2.3125" data-y="-1.39" x="72.46987951807229" y="352.4698795180723" width="44.6987951807229" height="75.90361445783134" fill="hsl(24, 100%, 50%, 0.8)" stroke="black" stroke-width="0.011857142857142858"/></g><g><rect data-type="rect" data-label="netId: GND
|
|
1
|
+
<svg width="2416" height="1200" viewBox="0 0 2416 1200" xmlns="http://www.w3.org/2000/svg" role="img" aria-label="Solver debug visualization on the left and Circuit JSON schematic on the right">
|
|
2
|
+
<g transform="translate(0, 0) scale(1.875, 1.875) translate(0, 0)">
|
|
3
|
+
<rect width="100%" height="100%" fill="white"/><g><polyline data-points="3.3774999999999995,1.5100000000000002 3.3774999999999995,1.7100000000000004" data-type="line" data-label="" points="574.6987951807228,145.84337349397586 574.6987951807228,128.97590361445776" fill="none" stroke="hsl(176, 100%, 50%, 0.8)" stroke-width="1px"/></g><g><polyline data-points="-0.7725000000000006,0.2950000000000018 0.3774999999999997,0.3100000000000005" data-type="line" data-label="" points="224.6987951807228,248.31325301204802 321.6867469879518,247.04819277108427" fill="none" stroke="hsl(48, 100%, 50%, 0.8)" stroke-width="1px"/></g><g><polyline data-points="-2.0475,-1.39 0.3774999999999997,-1.39" data-type="line" data-label="" points="117.16867469879517,390.4216867469879 321.6867469879518,390.4216867469879" fill="none" stroke="hsl(312, 100%, 50%, 0.8)" stroke-width="1px"/></g><g><polyline data-points="3.3774999999999995,-2.7900000000000005 0.3774999999999997,-0.1899999999999995" data-type="line" data-label="" points="574.6987951807228,508.49397590361446 321.6867469879518,289.21686746987945" fill="none" stroke="hsl(157, 100%, 50%, 0.8)" stroke-width="1px" stroke-dasharray="4 2"/></g><g><polyline data-points="3.3774999999999995,-2.7900000000000005 3.3774999999999995,-2.5900000000000003" data-type="line" data-label="" points="574.6987951807228,508.49397590361446 574.6987951807228,491.6265060240964" fill="none" stroke="hsl(157, 100%, 50%, 0.8)" stroke-width="1px" stroke-dasharray="4 2"/></g><g><polyline data-points="3.3774999999999995,-2.7900000000000005 3.3774999999999995,-2.3900000000000006" data-type="line" data-label="" points="574.6987951807228,508.49397590361446 574.6987951807228,474.7590361445783" fill="none" stroke="hsl(157, 100%, 50%, 0.8)" stroke-width="1px" stroke-dasharray="4 2"/></g><g><polyline data-points="3.3774999999999995,-2.7900000000000005 -0.3225000000000006,0.6600000000000018" data-type="line" data-label="" points="574.6987951807228,508.49397590361446 262.6506024096385,217.53012048192753" fill="none" stroke="hsl(157, 100%, 50%, 0.8)" stroke-width="1px" stroke-dasharray="4 2"/></g><g><polyline data-points="3.3774999999999995,-2.7900000000000005 -2.4125,-0.9399999999999997" data-type="line" data-label="" points="574.6987951807228,508.49397590361446 86.38554216867468,352.4698795180722" fill="none" stroke="hsl(157, 100%, 50%, 0.8)" stroke-width="1px" stroke-dasharray="4 2"/></g><g><polyline data-points="0.3774999999999997,-0.1899999999999995 3.3774999999999995,-2.5900000000000003" data-type="line" data-label="" points="321.6867469879518,289.21686746987945 574.6987951807228,491.6265060240964" fill="none" stroke="hsl(157, 100%, 50%, 0.8)" stroke-width="1px" stroke-dasharray="4 2"/></g><g><polyline data-points="0.3774999999999997,-0.1899999999999995 3.3774999999999995,-2.3900000000000006" data-type="line" data-label="" points="321.6867469879518,289.21686746987945 574.6987951807228,474.7590361445783" fill="none" stroke="hsl(157, 100%, 50%, 0.8)" stroke-width="1px" stroke-dasharray="4 2"/></g><g><polyline data-points="0.3774999999999997,-0.1899999999999995 -0.3225000000000006,0.6600000000000018" data-type="line" data-label="" points="321.6867469879518,289.21686746987945 262.6506024096385,217.53012048192753" fill="none" stroke="hsl(157, 100%, 50%, 0.8)" stroke-width="1px" stroke-dasharray="4 2"/></g><g><polyline data-points="0.3774999999999997,-0.1899999999999995 -2.4125,-0.9399999999999997" data-type="line" data-label="" points="321.6867469879518,289.21686746987945 86.38554216867468,352.4698795180722" fill="none" stroke="hsl(157, 100%, 50%, 0.8)" stroke-width="1px" stroke-dasharray="4 2"/></g><g><polyline data-points="3.3774999999999995,-2.5900000000000003 3.3774999999999995,-2.3900000000000006" data-type="line" data-label="" points="574.6987951807228,491.6265060240964 574.6987951807228,474.7590361445783" fill="none" stroke="hsl(157, 100%, 50%, 0.8)" stroke-width="1px" stroke-dasharray="4 2"/></g><g><polyline data-points="3.3774999999999995,-2.5900000000000003 -0.3225000000000006,0.6600000000000018" data-type="line" data-label="" points="574.6987951807228,491.6265060240964 262.6506024096385,217.53012048192753" fill="none" stroke="hsl(157, 100%, 50%, 0.8)" stroke-width="1px" stroke-dasharray="4 2"/></g><g><polyline data-points="3.3774999999999995,-2.5900000000000003 -2.4125,-0.9399999999999997" data-type="line" data-label="" points="574.6987951807228,491.6265060240964 86.38554216867468,352.4698795180722" fill="none" stroke="hsl(157, 100%, 50%, 0.8)" stroke-width="1px" stroke-dasharray="4 2"/></g><g><polyline data-points="3.3774999999999995,-2.3900000000000006 -0.3225000000000006,0.6600000000000018" data-type="line" data-label="" points="574.6987951807228,474.7590361445783 262.6506024096385,217.53012048192753" fill="none" stroke="hsl(157, 100%, 50%, 0.8)" stroke-width="1px" stroke-dasharray="4 2"/></g><g><polyline data-points="3.3774999999999995,-2.3900000000000006 -2.4125,-0.9399999999999997" data-type="line" data-label="" points="574.6987951807228,474.7590361445783 86.38554216867468,352.4698795180722" fill="none" stroke="hsl(157, 100%, 50%, 0.8)" stroke-width="1px" stroke-dasharray="4 2"/></g><g><polyline data-points="-0.3225000000000006,0.6600000000000018 -2.4125,-0.9399999999999997" data-type="line" data-label="" points="262.6506024096385,217.53012048192753 86.38554216867468,352.4698795180722" fill="none" stroke="hsl(157, 100%, 50%, 0.8)" stroke-width="1px" stroke-dasharray="4 2"/></g><g><polyline data-points="-1.2225000000000006,0.6600000000000018 -2.4125,-1.84" data-type="line" data-label="" points="186.74698795180717,217.53012048192753 86.38554216867468,428.37349397590356" fill="none" stroke="hsl(186, 100%, 50%, 0.8)" stroke-width="1px" stroke-dasharray="4 2"/></g><g><polyline data-points="3.3774999999999995,1.5100000000000002 3.5774999999999997,1.5100000000000002 3.5774999999999997,1.7100000000000004 3.3774999999999995,1.7100000000000004" data-type="line" data-label="" points="574.6987951807228,145.84337349397586 591.566265060241,145.84337349397586 591.566265060241,128.97590361445776 574.6987951807228,128.97590361445776" fill="none" stroke="purple" stroke-width="1px"/></g><g><polyline data-points="-0.7725000000000006,0.2950000000000018 -0.7725000000000006,0.09500000000000186 0.17749999999999966,0.09500000000000186 0.17749999999999966,0.3100000000000005 0.3774999999999997,0.3100000000000005" data-type="line" data-label="" points="224.6987951807228,248.31325301204802 224.6987951807228,265.18072289156606 304.8192771084337,265.18072289156606 304.8192771084337,247.04819277108427 321.6867469879518,247.04819277108427" fill="none" stroke="purple" stroke-width="1px"/></g><g><polyline data-points="0.3774999999999997,-0.1899999999999995 0.027499999999999553,-0.1899999999999995 0.027499999999999553,0.6600000000000018 -0.3225000000000006,0.6600000000000018" data-type="line" data-label="" points="321.6867469879518,289.21686746987945 292.16867469879514,289.21686746987945 292.16867469879514,217.53012048192753 262.6506024096385,217.53012048192753" fill="none" stroke="purple" stroke-width="1px"/></g><g><polyline data-points="3.3774999999999995,-2.3900000000000006 3.5774999999999997,-2.3900000000000006 3.5774999999999997,-2.5900000000000003 3.3774999999999995,-2.5900000000000003" data-type="line" data-label="" points="574.6987951807228,474.7590361445783 591.566265060241,474.7590361445783 591.566265060241,491.6265060240964 574.6987951807228,491.6265060240964" fill="none" stroke="purple" stroke-width="1px"/></g><g><polyline data-points="3.3774999999999995,-2.7900000000000005 3.5774999999999997,-2.7900000000000005 3.5774999999999997,-2.5900000000000003 3.3774999999999995,-2.5900000000000003" data-type="line" data-label="" points="574.6987951807228,508.49397590361446 591.566265060241,508.49397590361446 591.566265060241,491.6265060240964 574.6987951807228,491.6265060240964" fill="none" stroke="purple" stroke-width="1px"/></g><g><polyline data-points="-2.0475,-1.39 0.3774999999999997,-1.39" data-type="line" data-label="" points="117.16867469879517,390.4216867469879 321.6867469879518,390.4216867469879" fill="none" stroke="purple" stroke-width="1px"/></g><g><polyline data-points="-2.4125,-0.9399999999999997 -2.4125,-0.8899999999999997 -2.7125000000000004,-0.8899999999999997 -2.7125000000000004,-0.9909999999999998" data-type="line" data-label="" points="86.38554216867468,352.4698795180722 86.38554216867468,348.2530120481927 61.08433734939754,348.2530120481927 61.08433734939754,356.77108433734935" fill="none" stroke="purple" stroke-width="1px"/></g><g><polyline data-points="-1.2225000000000006,0.6600000000000018 -1.3235000000000006,0.6600000000000018 -1.3235000000000006,0.8610000000000018" data-type="line" data-label="" points="186.74698795180717,217.53012048192753 178.22891566265054,217.53012048192753 178.22891566265054,200.57831325301186" fill="none" stroke="purple" stroke-width="1px"/></g><g><polyline data-points="-2.4125,-1.84 -2.4125,-1.8900000000000001 -2.8625000000000003,-1.8900000000000001 -2.8625000000000003,-0.989" data-type="line" data-label="" points="86.38554216867468,428.37349397590356 86.38554216867468,432.5903614457831 48.433734939759006,432.5903614457831 48.433734939759006,356.6024096385542" fill="none" stroke="purple" stroke-width="1px"/></g><g><rect data-type="rect" data-label="schematic_component_0" data-x="1.8774999999999997" data-y="-0.43999999999999995" x="321.68674698795184" y="91.0240963855421" width="253.01204819277098" height="438.55421686746996" fill="hsl(24, 100%, 50%, 0.8)" stroke="black" stroke-width="0.011857142857142858"/></g><g><rect data-type="rect" data-label="schematic_component_6" data-x="-0.7725000000000006" data-y="0.5600000000000018" x="186.74698795180714" y="203.61445783132513" width="75.90361445783134" height="44.6987951807229" fill="hsl(24, 100%, 50%, 0.8)" stroke="black" stroke-width="0.011857142857142858"/></g><g><rect data-type="rect" data-label="schematic_component_7" data-x="-2.3125" data-y="-1.39" x="72.46987951807229" y="352.4698795180723" width="44.6987951807229" height="75.90361445783134" fill="hsl(24, 100%, 50%, 0.8)" stroke="black" stroke-width="0.011857142857142858"/></g><g><rect data-type="rect" data-label="netId: GND
|
|
2
4
|
globalConnNetId: connectivity_net3" data-x="3.5774999999999997" data-y="-3.0300000000000002" x="583.132530120482" y="508.49397590361446" width="16.867469879518126" height="40.481927710843365" fill="#00000066" stroke="#000000" stroke-width="0.011857142857142858"/></g><g><rect data-type="rect" data-label="netId: GND
|
|
3
5
|
globalConnNetId: connectivity_net3" data-x="0.027499999999999553" data-y="-0.4299999999999995" x="283.73493975903614" y="289.21686746987945" width="16.86746987951807" height="40.481927710843365" fill="#00000066" stroke="#000000" stroke-width="0.011857142857142858"/></g><g><rect data-type="rect" data-label="netId: GND
|
|
4
6
|
globalConnNetId: connectivity_net3" data-x="-2.7125000000000004" data-y="-1.2309999999999999" x="52.650602409638495" y="356.77108433734935" width="16.867469879518097" height="40.481927710843365" fill="#00000066" stroke="#000000" stroke-width="0.011857142857142858"/></g><g><rect data-type="rect" data-label="netId: .J3 > .pin2 to .U1 > .pin7
|
|
@@ -38,7 +40,7 @@ orientation: y+" data-x="-2.8625000000000003" data-y="-0.989" cx="48.43373493975
|
|
|
38
40
|
const h = svg.getElementById('crosshair-h');
|
|
39
41
|
const v = svg.getElementById('crosshair-v');
|
|
40
42
|
const coords = svg.getElementById('coordinates');
|
|
41
|
-
|
|
43
|
+
|
|
42
44
|
crosshair.style.display = 'block';
|
|
43
45
|
h.setAttribute('x1', '0');
|
|
44
46
|
h.setAttribute('x2', '640');
|
|
@@ -57,13 +59,13 @@ orientation: y+" data-x="-2.8625000000000003" data-y="-0.989" cx="48.43373493975
|
|
|
57
59
|
// y' = (y - ty) / sy
|
|
58
60
|
const sx = matrix.a;
|
|
59
61
|
const sy = matrix.d;
|
|
60
|
-
const tx = matrix.e;
|
|
62
|
+
const tx = matrix.e;
|
|
61
63
|
const ty = matrix.f;
|
|
62
64
|
const realPoint = {
|
|
63
65
|
x: (x - tx) / sx,
|
|
64
66
|
y: (y - ty) / sy // Flip y back since we used negative scale
|
|
65
67
|
}
|
|
66
|
-
|
|
68
|
+
|
|
67
69
|
coords.textContent = `(${realPoint.x.toFixed(2)}, ${realPoint.y.toFixed(2)})`;
|
|
68
70
|
coords.setAttribute('x', (x + 5).toString());
|
|
69
71
|
coords.setAttribute('y', (y - 5).toString());
|
|
@@ -71,4 +73,76 @@ orientation: y+" data-x="-2.8625000000000003" data-y="-0.989" cx="48.43373493975
|
|
|
71
73
|
document.currentScript.parentElement.addEventListener('mouseleave', () => {
|
|
72
74
|
document.currentScript.parentElement.getElementById('crosshair').style.display = 'none';
|
|
73
75
|
});
|
|
74
|
-
]]></script
|
|
76
|
+
]]></script>
|
|
77
|
+
</g>
|
|
78
|
+
<g transform="translate(1216, 200)">
|
|
79
|
+
<style>
|
|
80
|
+
.boundary { fill: rgb(245, 241, 237); }
|
|
81
|
+
.schematic-boundary { fill: none; stroke: #fff; }
|
|
82
|
+
.component { fill: none; stroke: rgb(132, 0, 0); }
|
|
83
|
+
.chip { fill: rgb(255, 255, 194); stroke: rgb(132, 0, 0); }
|
|
84
|
+
.component-pin { fill: none; stroke: rgb(132, 0, 0); }
|
|
85
|
+
.text { font-family: sans-serif; fill: rgb(0, 150, 0); }
|
|
86
|
+
.pin-number { fill: rgb(169, 0, 0); }
|
|
87
|
+
.port-label { fill: rgb(0, 100, 100); }
|
|
88
|
+
.component-name { fill: rgb(0, 100, 100); }
|
|
89
|
+
|
|
90
|
+
</style><rect class="boundary" x="0" y="0" width="1200" height="800"/><g class="trace sch-trace" data-layer="base" data-circuit-json-type="schematic_trace" data-schematic-trace-id="schematic_trace_0__stack1"><path d="M 973.7392488087964 142.31792587101395 L 998.4901924385165 142.31792587101395 L 998.4901924385165 117.56698224129391 L 973.7392488087964 117.56698224129391" class="trace-invisible-hover-outline sch-trace-hitbox" stroke="rgb(0, 150, 0)" fill="none" stroke-width="19.800754903776003px" stroke-linecap="round" opacity="0" stroke-linejoin="round"/><path class="sch-trace-path" d="M 973.7392488087964 142.31792587101395 L 998.4901924385165 142.31792587101395 L 998.4901924385165 117.56698224129391 L 973.7392488087964 117.56698224129391" stroke="rgb(0, 150, 0)" fill="none" stroke-width="2.4750943629720004px" stroke-linecap="round" stroke-linejoin="round"/></g><g class="trace sch-trace" data-layer="base" data-circuit-json-type="schematic_trace" data-schematic-trace-id="schematic_trace_1__stack1"><path d="M 460.1571684921064 292.67990842156274 L 460.1571684921064 317.4308520512827 L 577.7241507332764 317.4308520512827 L 577.7241507332764 290.82358764933394 L 602.4750943629964 290.82358764933394" class="trace-invisible-hover-outline sch-trace-hitbox" stroke="rgb(0, 150, 0)" fill="none" stroke-width="19.800754903776003px" stroke-linecap="round" opacity="0" stroke-linejoin="round"/><path class="sch-trace-path" d="M 460.1571684921064 292.67990842156274 L 460.1571684921064 317.4308520512827 L 577.7241507332764 317.4308520512827 L 577.7241507332764 290.82358764933394 L 602.4750943629964 290.82358764933394" stroke="rgb(0, 150, 0)" fill="none" stroke-width="2.4750943629720004px" stroke-linecap="round" stroke-linejoin="round"/></g><g class="trace sch-trace" data-layer="base" data-circuit-json-type="schematic_trace" data-schematic-trace-id="schematic_trace_2__stack1"><path d="M 602.4750943629964 352.70094672363393 L 559.1609430109864 352.70094672363393 L 559.1609430109864 247.50943629732376 L 515.8467916589764 247.50943629732376" class="trace-invisible-hover-outline sch-trace-hitbox" stroke="rgb(0, 150, 0)" fill="none" stroke-width="19.800754903776003px" stroke-linecap="round" opacity="0" stroke-linejoin="round"/><path class="sch-trace-path" d="M 602.4750943629964 352.70094672363393 L 559.1609430109864 352.70094672363393 L 559.1609430109864 247.50943629732376 L 515.8467916589764 247.50943629732376" stroke="rgb(0, 150, 0)" fill="none" stroke-width="2.4750943629720004px" stroke-linecap="round" stroke-linejoin="round"/></g><g class="trace sch-trace" data-layer="base" data-circuit-json-type="schematic_trace" data-schematic-trace-id="schematic_trace_3__stack1"><path d="M 973.7392488087964 624.961326650554 L 998.4901924385165 624.961326650554 L 998.4901924385165 649.712270280274 L 973.7392488087964 649.712270280274" class="trace-invisible-hover-outline sch-trace-hitbox" stroke="rgb(0, 150, 0)" fill="none" stroke-width="19.800754903776003px" stroke-linecap="round" opacity="0" stroke-linejoin="round"/><path class="sch-trace-path" d="M 973.7392488087964 624.961326650554 L 998.4901924385165 624.961326650554 L 998.4901924385165 649.712270280274 L 973.7392488087964 649.712270280274" stroke="rgb(0, 150, 0)" fill="none" stroke-width="2.4750943629720004px" stroke-linecap="round" stroke-linejoin="round"/></g><g class="trace sch-trace" data-layer="base" data-circuit-json-type="schematic_trace" data-schematic-trace-id="schematic_trace_4__stack1"><path d="M 973.7392488087964 674.463213909994 L 998.4901924385165 674.463213909994 L 998.4901924385165 649.712270280274 L 973.7392488087964 649.712270280274" class="trace-invisible-hover-outline sch-trace-hitbox" stroke="rgb(0, 150, 0)" fill="none" stroke-width="19.800754903776003px" stroke-linecap="round" opacity="0" stroke-linejoin="round"/><path class="sch-trace-path" d="M 973.7392488087964 674.463213909994 L 998.4901924385165 674.463213909994 L 998.4901924385165 649.712270280274 L 973.7392488087964 649.712270280274" stroke="rgb(0, 150, 0)" fill="none" stroke-width="2.4750943629720004px" stroke-linecap="round" stroke-linejoin="round"/></g><g class="trace sch-trace" data-layer="base" data-circuit-json-type="schematic_trace" data-schematic-trace-id="schematic_trace_5__stack1"><path d="M 302.3699028526414 501.20660850195395 L 602.4750943629964 501.20660850195395" class="trace-invisible-hover-outline sch-trace-hitbox" stroke="rgb(0, 150, 0)" fill="none" stroke-width="19.800754903776003px" stroke-linecap="round" opacity="0" stroke-linejoin="round"/><path class="sch-trace-path" d="M 302.3699028526414 501.20660850195395 L 602.4750943629964 501.20660850195395" stroke="rgb(0, 150, 0)" fill="none" stroke-width="2.4750943629720004px" stroke-linecap="round" stroke-linejoin="round"/></g><g class="trace sch-trace" data-layer="base" data-circuit-json-type="schematic_trace" data-schematic-trace-id="schematic_trace_6__stack1"><path d="M 257.19943072840243 445.516985335084 L 257.19943072840243 439.32924942765396 L 220.07301528382237 439.32924942765396 L 220.07301528382237 451.82847596066256" class="trace-invisible-hover-outline sch-trace-hitbox" stroke="rgb(0, 150, 0)" fill="none" stroke-width="19.800754903776003px" stroke-linecap="round" opacity="0" stroke-linejoin="round"/><path class="sch-trace-path" d="M 257.19943072840243 445.516985335084 L 257.19943072840243 439.32924942765396 L 220.07301528382237 439.32924942765396 L 220.07301528382237 451.82847596066256" stroke="rgb(0, 150, 0)" fill="none" stroke-width="2.4750943629720004px" stroke-linecap="round" stroke-linejoin="round"/></g><g class="trace sch-trace" data-layer="base" data-circuit-json-type="schematic_trace" data-schematic-trace-id="schematic_trace_7__stack1"><path d="M 404.46754532523636 247.50943629732376 L 391.96831879222776 247.50943629732376 L 391.96831879222776 222.63473794945514" class="trace-invisible-hover-outline sch-trace-hitbox" stroke="rgb(0, 150, 0)" fill="none" stroke-width="19.800754903776003px" stroke-linecap="round" opacity="0" stroke-linejoin="round"/><path class="sch-trace-path" d="M 404.46754532523636 247.50943629732376 L 391.96831879222776 247.50943629732376 L 391.96831879222776 222.63473794945514" stroke="rgb(0, 150, 0)" fill="none" stroke-width="2.4750943629720004px" stroke-linecap="round" stroke-linejoin="round"/></g><g class="trace sch-trace" data-layer="base" data-circuit-json-type="schematic_trace" data-schematic-trace-id="schematic_trace_8__stack1"><path d="M 257.19943072840243 556.896231668824 L 257.19943072840243 563.083967576254 L 201.5098075615324 563.083967576254 L 201.5098075615324 451.5809665243654" class="trace-invisible-hover-outline sch-trace-hitbox" stroke="rgb(0, 150, 0)" fill="none" stroke-width="19.800754903776003px" stroke-linecap="round" opacity="0" stroke-linejoin="round"/><path class="sch-trace-path" d="M 257.19943072840243 556.896231668824 L 257.19943072840243 563.083967576254 L 201.5098075615324 563.083967576254 L 201.5098075615324 451.5809665243654" stroke="rgb(0, 150, 0)" fill="none" stroke-width="2.4750943629720004px" stroke-linecap="round" stroke-linejoin="round"/></g><g class="trace-overlays sch-trace-overlays" data-layer="overlay" data-circuit-json-type="schematic_trace" data-schematic-trace-id="schematic_trace_0__stack1"/><g class="trace-overlays sch-trace-overlays" data-layer="overlay" data-circuit-json-type="schematic_trace" data-schematic-trace-id="schematic_trace_1__stack1"/><g class="trace-overlays sch-trace-overlays" data-layer="overlay" data-circuit-json-type="schematic_trace" data-schematic-trace-id="schematic_trace_2__stack1"/><g class="trace-overlays sch-trace-overlays" data-layer="overlay" data-circuit-json-type="schematic_trace" data-schematic-trace-id="schematic_trace_3__stack1"><circle cx="998.4901924385165" cy="649.712270280274" r="3.712641544458" class="trace-junction sch-trace-junction" fill="rgb(0, 150, 0)"/><circle cx="973.7392488087964" cy="649.712270280274" r="3.712641544458" class="trace-junction sch-trace-junction" fill="rgb(0, 150, 0)"/></g><g class="trace-overlays sch-trace-overlays" data-layer="overlay" data-circuit-json-type="schematic_trace" data-schematic-trace-id="schematic_trace_4__stack1"/><g class="trace-overlays sch-trace-overlays" data-layer="overlay" data-circuit-json-type="schematic_trace" data-schematic-trace-id="schematic_trace_5__stack1"/><g class="trace-overlays sch-trace-overlays" data-layer="overlay" data-circuit-json-type="schematic_trace" data-schematic-trace-id="schematic_trace_6__stack1"/><g class="trace-overlays sch-trace-overlays" data-layer="overlay" data-circuit-json-type="schematic_trace" data-schematic-trace-id="schematic_trace_7__stack1"/><g class="trace-overlays sch-trace-overlays" data-layer="overlay" data-circuit-json-type="schematic_trace" data-schematic-trace-id="schematic_trace_8__stack1"/><g class="sch-component" data-circuit-json-type="schematic_component" data-schematic-component-id="schematic_component_0__stack1"><rect class="component chip sch-component-body" x="651.9769816224364" y="61.877359074423964" width="272.2603799269201" height="643.5245343727199" stroke-width="2.4750943629720004px" fill="rgb(255, 255, 194)" stroke="rgb(132, 0, 0)"/><rect class="component-overlay sch-component-overlay" x="651.9769816224364" y="61.877359074423964" width="272.2603799269201" height="643.5245343727199" fill="transparent"/><text class="sch-text" x="788.1071715858964" y="383.639626260784" fill="#0f172a" text-anchor="middle" dominant-baseline="middle" font-family="sans-serif" font-size="22.275849266748px" transform="rotate(0, 788.1071715858964, 383.639626260784)">U1</text><line class="component-pin sch-component-pin sch-port-line" x1="924.2373615493565" y1="674.463213909994" x2="973.7392488087964" y2="674.463213909994" stroke-width="2.4750943629720004px"/><g class="sch-port" data-schematic-port-id="source_port_0_0__stack1"><rect x="971.2641544458245" y="671.988119547022" width="4.950188725944001" height="4.950188725944001" opacity="0"/></g><text class="pin-number sch-pin-number" x="948.9883051790764" y="671.988119547022" style="font-family: sans-serif;" fill="rgb(169, 0, 0)" text-anchor="middle" dominant-baseline="auto" font-size="18.56320772229px" transform="">3</text><line class="component-pin sch-component-pin sch-port-line" x1="651.9769816224364" y1="501.20660850195395" x2="602.4750943629964" y2="501.20660850195395" stroke-width="2.4750943629720004px"/><g class="sch-port" data-schematic-port-id="source_port_0_1__stack1"><rect x="600.0000000000244" y="498.73151413898194" width="4.950188725944001" height="4.950188725944001" opacity="0"/></g><text class="pin-number sch-pin-number" x="627.2260379927164" y="498.731514138982" style="font-family: sans-serif;" fill="rgb(169, 0, 0)" text-anchor="middle" dominant-baseline="auto" font-size="18.56320772229px" transform="">7</text><line class="component-pin sch-component-pin sch-port-line" x1="651.9769816224364" y1="290.82358764933394" x2="602.4750943629964" y2="290.82358764933394" stroke-width="2.4750943629720004px"/><g class="sch-port" data-schematic-port-id="source_port_0_2__stack1"><rect x="600.0000000000244" y="288.34849328636193" width="4.950188725944001" height="4.950188725944001" opacity="0"/></g><text class="pin-number sch-pin-number" x="627.2260379927164" y="288.34849328636193" style="font-family: sans-serif;" fill="rgb(169, 0, 0)" text-anchor="middle" dominant-baseline="auto" font-size="18.56320772229px" transform="">10</text><line class="component-pin sch-component-pin sch-port-line" x1="651.9769816224364" y1="352.70094672363393" x2="602.4750943629964" y2="352.70094672363393" stroke-width="2.4750943629720004px"/><g class="sch-port" data-schematic-port-id="source_port_0_3__stack1"><rect x="600.0000000000244" y="350.2258523606619" width="4.950188725944001" height="4.950188725944001" opacity="0"/></g><text class="pin-number sch-pin-number" x="627.2260379927164" y="350.2258523606619" style="font-family: sans-serif;" fill="rgb(169, 0, 0)" text-anchor="middle" dominant-baseline="auto" font-size="18.56320772229px" transform="">13</text><line class="component-pin sch-component-pin sch-port-line" x1="924.2373615493565" y1="649.712270280274" x2="973.7392488087964" y2="649.712270280274" stroke-width="2.4750943629720004px"/><g class="sch-port" data-schematic-port-id="source_port_0_4__stack1"><rect x="971.2641544458245" y="647.237175917302" width="4.950188725944001" height="4.950188725944001" opacity="0"/></g><text class="pin-number sch-pin-number" x="948.9883051790764" y="647.237175917302" style="font-family: sans-serif;" fill="rgb(169, 0, 0)" text-anchor="middle" dominant-baseline="auto" font-size="18.56320772229px" transform="">18</text><line class="component-pin sch-component-pin sch-port-line" x1="924.2373615493565" y1="117.56698224129391" x2="973.7392488087964" y2="117.56698224129391" stroke-width="2.4750943629720004px"/><g class="sch-port" data-schematic-port-id="source_port_0_5__stack1"><rect x="971.2641544458245" y="115.09188787832191" width="4.950188725944001" height="4.950188725944001" opacity="0"/></g><text class="pin-number sch-pin-number" x="948.9883051790764" y="115.09188787832193" style="font-family: sans-serif;" fill="rgb(169, 0, 0)" text-anchor="middle" dominant-baseline="auto" font-size="18.56320772229px" transform="">22</text><line class="component-pin sch-component-pin sch-port-line" x1="924.2373615493565" y1="142.31792587101395" x2="973.7392488087964" y2="142.31792587101395" stroke-width="2.4750943629720004px"/><g class="sch-port" data-schematic-port-id="source_port_0_6__stack1"><rect x="971.2641544458245" y="139.84283150804197" width="4.950188725944001" height="4.950188725944001" opacity="0"/></g><text class="pin-number sch-pin-number" x="948.9883051790764" y="139.84283150804194" style="font-family: sans-serif;" fill="rgb(169, 0, 0)" text-anchor="middle" dominant-baseline="auto" font-size="18.56320772229px" transform="">28</text><line class="component-pin sch-component-pin sch-port-line" x1="924.2373615493565" y1="624.961326650554" x2="973.7392488087964" y2="624.961326650554" stroke-width="2.4750943629720004px"/><g class="sch-port" data-schematic-port-id="source_port_0_7__stack1"><rect x="971.2641544458245" y="622.4862322875821" width="4.950188725944001" height="4.950188725944001" opacity="0"/></g><text class="pin-number sch-pin-number" x="948.9883051790764" y="622.4862322875821" style="font-family: sans-serif;" fill="rgb(169, 0, 0)" text-anchor="middle" dominant-baseline="auto" font-size="18.56320772229px" transform="">29</text></g><g class="sch-component" data-circuit-json-type="schematic_component" data-schematic-component-id="schematic_component_1__stack1"><rect class="component chip sch-component-body" x="453.9694325846764" y="253.69717220475377" width="12.375471814859964" height="12.37547181486002" stroke-width="2.4750943629720004px" fill="rgb(255, 255, 194)" stroke="rgb(132, 0, 0)"/><rect class="component-overlay sch-component-overlay" x="453.9694325846764" y="253.69717220475377" width="12.375471814859964" height="12.37547181486002" fill="transparent"/><text class="sch-text" x="460.1571684921064" y="259.8849081121838" fill="#0f172a" text-anchor="middle" dominant-baseline="middle" font-family="sans-serif" font-size="21.863333539586px" transform="rotate(0, 460.1571684921064, 259.8849081121838)">J2</text><line class="component-pin sch-component-pin sch-port-line" x1="453.9694325846764" y1="247.50943629732376" x2="404.46754532523636" y2="247.50943629732376" stroke-width="2.4750943629720004px"/><g class="sch-port" data-schematic-port-id="source_port_1_0__stack1"><rect x="401.99245096226434" y="245.03434193435177" width="4.950188725944001" height="4.950188725944001" opacity="0"/></g><text class="pin-number sch-pin-number" x="429.21848895495634" y="245.03434193435174" style="font-family: sans-serif;" fill="rgb(169, 0, 0)" text-anchor="middle" dominant-baseline="auto" font-size="18.56320772229px" transform="">1</text><line class="component-pin sch-component-pin sch-port-line" x1="460.1571684921064" y1="266.0726440196138" x2="460.1571684921064" y2="292.67990842156274" stroke-width="2.4750943629720004px"/><g class="sch-port" data-schematic-port-id="source_port_1_1__stack1"><rect x="457.6820741291344" y="290.2048140585907" width="4.950188725944001" height="4.950188725944001" opacity="0"/></g><text class="pin-number sch-pin-number" x="457.6820741291344" y="279.37627622058824" style="font-family: sans-serif;" fill="rgb(169, 0, 0)" text-anchor="middle" dominant-baseline="auto" font-size="18.56320772229px" transform="rotate(-90 457.6820741291344 279.37627622058824)">2</text><line class="component-pin sch-component-pin sch-port-line" x1="466.34490439953635" y1="247.50943629732376" x2="515.8467916589764" y2="247.50943629732376" stroke-width="2.4750943629720004px"/><g class="sch-port" data-schematic-port-id="source_port_1_2__stack1"><rect x="513.3716972960044" y="245.03434193435177" width="4.950188725944001" height="4.950188725944001" opacity="0"/></g><text class="pin-number sch-pin-number" x="491.09584802925633" y="245.03434193435174" style="font-family: sans-serif;" fill="rgb(169, 0, 0)" text-anchor="middle" dominant-baseline="auto" font-size="18.56320772229px" transform="">3</text></g><g class="sch-component" data-circuit-json-type="schematic_component" data-schematic-component-id="schematic_component_2__stack1"><rect class="component chip sch-component-body" x="263.38716663583244" y="495.01887259452394" width="12.375471814859964" height="12.37547181486002" stroke-width="2.4750943629720004px" fill="rgb(255, 255, 194)" stroke="rgb(132, 0, 0)"/><rect class="component-overlay sch-component-overlay" x="263.38716663583244" y="495.01887259452394" width="12.375471814859964" height="12.37547181486002" fill="transparent"/><text class="sch-text" x="269.57490254326245" y="501.20660850195395" fill="#0f172a" text-anchor="middle" dominant-baseline="middle" font-family="sans-serif" font-size="22.275849266748px" transform="rotate(0, 269.57490254326245, 501.20660850195395)">J3</text><line class="component-pin sch-component-pin sch-port-line" x1="257.19943072840243" y1="507.39434440938396" x2="257.19943072840243" y2="556.896231668824" stroke-width="2.4750943629720004px"/><g class="sch-port" data-schematic-port-id="source_port_2_0__stack1"><rect x="254.72433636543045" y="554.4211373058521" width="4.950188725944001" height="4.950188725944001" opacity="0"/></g><text class="pin-number sch-pin-number" x="254.72433636543042" y="532.145288039104" style="font-family: sans-serif;" fill="rgb(169, 0, 0)" text-anchor="middle" dominant-baseline="auto" font-size="18.56320772229px" transform="rotate(-90 254.72433636543042 532.145288039104)">1</text><line class="component-pin sch-component-pin sch-port-line" x1="275.7626384506924" y1="501.20660850195395" x2="302.3699028526414" y2="501.20660850195395" stroke-width="2.4750943629720004px"/><g class="sch-port" data-schematic-port-id="source_port_2_1__stack1"><rect x="299.8948084896694" y="498.73151413898194" width="4.950188725944001" height="4.950188725944001" opacity="0"/></g><text class="pin-number sch-pin-number" x="289.06627065166697" y="498.731514138982" style="font-family: sans-serif;" fill="rgb(169, 0, 0)" text-anchor="middle" dominant-baseline="auto" font-size="18.56320772229px" transform="">2</text><line class="component-pin sch-component-pin sch-port-line" x1="257.19943072840243" y1="495.01887259452394" x2="257.19943072840243" y2="445.516985335084" stroke-width="2.4750943629720004px"/><g class="sch-port" data-schematic-port-id="source_port_2_2__stack1"><rect x="254.72433636543045" y="443.04189097211196" width="4.950188725944001" height="4.950188725944001" opacity="0"/></g><text class="pin-number sch-pin-number" x="254.72433636543042" y="470.26792896480396" style="font-family: sans-serif;" fill="rgb(169, 0, 0)" text-anchor="middle" dominant-baseline="auto" font-size="18.56320772229px" transform="rotate(-90 254.72433636543042 470.26792896480396)">3</text></g><g class="schematic-port-hover sch-port-hover" data-schematic-port-id="source_port_0_0__stack1"><circle cx="973.7392488087964" cy="674.463213909994" r="4.950188725944001" fill="red" opacity="0"/></g><g class="schematic-port-hover sch-port-hover" data-schematic-port-id="source_port_0_1__stack1"><circle cx="602.4750943629964" cy="501.20660850195395" r="4.950188725944001" fill="red" opacity="0"/></g><g class="schematic-port-hover sch-port-hover" data-schematic-port-id="source_port_0_2__stack1"><circle cx="602.4750943629964" cy="290.82358764933394" r="4.950188725944001" fill="red" opacity="0"/></g><g class="schematic-port-hover sch-port-hover" data-schematic-port-id="source_port_0_3__stack1"><circle cx="602.4750943629964" cy="352.70094672363393" r="4.950188725944001" fill="red" opacity="0"/></g><g class="schematic-port-hover sch-port-hover" data-schematic-port-id="source_port_0_4__stack1"><circle cx="973.7392488087964" cy="649.712270280274" r="4.950188725944001" fill="red" opacity="0"/></g><g class="schematic-port-hover sch-port-hover" data-schematic-port-id="source_port_0_5__stack1"><circle cx="973.7392488087964" cy="117.56698224129391" r="4.950188725944001" fill="red" opacity="0"/></g><g class="schematic-port-hover sch-port-hover" data-schematic-port-id="source_port_0_6__stack1"><circle cx="973.7392488087964" cy="142.31792587101395" r="4.950188725944001" fill="red" opacity="0"/></g><g class="schematic-port-hover sch-port-hover" data-schematic-port-id="source_port_0_7__stack1"><circle cx="973.7392488087964" cy="624.961326650554" r="4.950188725944001" fill="red" opacity="0"/></g><g class="schematic-port-hover sch-port-hover" data-schematic-port-id="source_port_1_0__stack1"><circle cx="404.46754532523636" cy="247.50943629732376" r="4.950188725944001" fill="red" opacity="0"/></g><g class="schematic-port-hover sch-port-hover" data-schematic-port-id="source_port_1_1__stack1"><circle cx="460.1571684921064" cy="292.67990842156274" r="4.950188725944001" fill="red" opacity="0"/></g><g class="schematic-port-hover sch-port-hover" data-schematic-port-id="source_port_1_2__stack1"><circle cx="515.8467916589764" cy="247.50943629732376" r="4.950188725944001" fill="red" opacity="0"/></g><g class="schematic-port-hover sch-port-hover" data-schematic-port-id="source_port_2_0__stack1"><circle cx="257.19943072840243" cy="556.896231668824" r="4.950188725944001" fill="red" opacity="0"/></g><g class="schematic-port-hover sch-port-hover" data-schematic-port-id="source_port_2_1__stack1"><circle cx="302.3699028526414" cy="501.20660850195395" r="4.950188725944001" fill="red" opacity="0"/></g><g class="schematic-port-hover sch-port-hover" data-schematic-port-id="source_port_2_2__stack1"><circle cx="257.19943072840243" cy="445.516985335084" r="4.950188725944001" fill="red" opacity="0"/></g><path class="net-label sch-net-label" data-circuit-json-type="schematic_net_label" data-schematic-net-label-id="schematic_net_label_0__stack1" d="
|
|
91
|
+
M 998.4901924385165,674.463213909994
|
|
92
|
+
L 1010.8656642533765,681.1459686900184
|
|
93
|
+
L 1010.8656642533765,738.1226409256338
|
|
94
|
+
L 986.1147206236565,738.1226409256338
|
|
95
|
+
L 986.1147206236565,681.1459686900184
|
|
96
|
+
Z
|
|
97
|
+
" fill="rgba(255, 255, 255, 0.6)" stroke="rgb(132, 0, 0)" stroke-width="2.4750943629720004px"/><text class="net-label-text sch-net-label-text" data-circuit-json-type="schematic_net_label" data-schematic-net-label-id="schematic_net_label_0__stack1" x="998.4901924385165" y="685.601138543368" fill="rgb(132, 0, 0)" text-anchor="start" dominant-baseline="central" font-family="sans-serif" font-variant-numeric="tabular-nums" font-size="22.275849266748px" transform="rotate(90 998.4901924385165 685.601138543368)">XXX</text><path class="net-label sch-net-label" data-circuit-json-type="schematic_net_label" data-schematic-net-label-id="schematic_net_label_1__stack1" d="
|
|
98
|
+
M 559.1609430109864,352.70094672363393
|
|
99
|
+
L 571.5364148258465,359.38370150365836
|
|
100
|
+
L 571.5364148258465,416.36037373927377
|
|
101
|
+
L 546.7854711961264,416.36037373927377
|
|
102
|
+
L 546.7854711961264,359.38370150365836
|
|
103
|
+
Z
|
|
104
|
+
" fill="rgba(255, 255, 255, 0.6)" stroke="rgb(132, 0, 0)" stroke-width="2.4750943629720004px"/><text class="net-label-text sch-net-label-text" data-circuit-json-type="schematic_net_label" data-schematic-net-label-id="schematic_net_label_1__stack1" x="559.1609430109864" y="363.8388713570079" fill="rgb(132, 0, 0)" text-anchor="start" dominant-baseline="central" font-family="sans-serif" font-variant-numeric="tabular-nums" font-size="22.275849266748px" transform="rotate(90 559.1609430109864 363.8388713570079)">XXX</text><path class="net-label sch-net-label" data-circuit-json-type="schematic_net_label" data-schematic-net-label-id="schematic_net_label_2__stack1" d="
|
|
105
|
+
M 220.07301528382237,451.82847596066256
|
|
106
|
+
L 232.44848709868236,458.511230740687
|
|
107
|
+
L 232.44848709868236,515.4879029763024
|
|
108
|
+
L 207.69754346896238,515.4879029763024
|
|
109
|
+
L 207.69754346896238,458.511230740687
|
|
110
|
+
Z
|
|
111
|
+
" fill="rgba(255, 255, 255, 0.6)" stroke="rgb(132, 0, 0)" stroke-width="2.4750943629720004px"/><text class="net-label-text sch-net-label-text" data-circuit-json-type="schematic_net_label" data-schematic-net-label-id="schematic_net_label_2__stack1" x="220.07301528382237" y="462.96640059403654" fill="rgb(132, 0, 0)" text-anchor="start" dominant-baseline="central" font-family="sans-serif" font-variant-numeric="tabular-nums" font-size="22.275849266748px" transform="rotate(90 220.07301528382237 462.96640059403654)">XXX</text><path class="net-label sch-net-label" data-circuit-json-type="schematic_net_label" data-schematic-net-label-id="schematic_net_label_3__stack1" d="
|
|
112
|
+
M 452.4224986078189,501.20660850195395
|
|
113
|
+
L 440.0470267929589,494.5238537219295
|
|
114
|
+
L 440.0470267929589,452.08423571150297
|
|
115
|
+
L 464.79797042267893,452.08423571150297
|
|
116
|
+
L 464.79797042267893,494.5238537219295
|
|
117
|
+
Z
|
|
118
|
+
" fill="rgba(255, 255, 255, 0.6)" stroke="rgb(132, 0, 0)" stroke-width="2.4750943629720004px"/><text class="net-label-text sch-net-label-text" data-circuit-json-type="schematic_net_label" data-schematic-net-label-id="schematic_net_label_3__stack1" x="452.4224986078189" y="490.06868386857997" fill="rgb(132, 0, 0)" text-anchor="start" dominant-baseline="central" font-family="sans-serif" font-variant-numeric="tabular-nums" font-size="22.275849266748px" transform="rotate(-90 452.4224986078189 490.06868386857997)">XX</text><path class="net-label sch-net-label" data-circuit-json-type="schematic_net_label" data-schematic-net-label-id="schematic_net_label_4__stack1" d="
|
|
119
|
+
M 460.1571684921064,317.4308520512827
|
|
120
|
+
L 453.47441371208197,329.80632386614275
|
|
121
|
+
L 411.0347957016554,329.80632386614275
|
|
122
|
+
L 411.0347957016554,305.0553802364227
|
|
123
|
+
L 453.47441371208197,305.0553802364227
|
|
124
|
+
Z
|
|
125
|
+
" fill="rgba(255, 255, 255, 0.6)" stroke="rgb(132, 0, 0)" stroke-width="2.4750943629720004px"/><text class="net-label-text sch-net-label-text" data-circuit-json-type="schematic_net_label" data-schematic-net-label-id="schematic_net_label_4__stack1" x="449.0192438587324" y="317.4308520512827" fill="rgb(132, 0, 0)" text-anchor="end" dominant-baseline="central" font-family="sans-serif" font-variant-numeric="tabular-nums" font-size="22.275849266748px" transform="">XX</text><path class="net-label sch-net-label" data-circuit-json-type="schematic_net_label" data-schematic-net-label-id="schematic_net_label_5__stack1" d="
|
|
126
|
+
M 998.4901924385165,142.31792587101395
|
|
127
|
+
L 1010.8656642533765,149.00068065103835
|
|
128
|
+
L 1010.8656642533765,191.4402986614649
|
|
129
|
+
L 986.1147206236565,191.4402986614649
|
|
130
|
+
L 986.1147206236565,149.00068065103835
|
|
131
|
+
Z
|
|
132
|
+
" fill="rgba(255, 255, 255, 0.6)" stroke="rgb(132, 0, 0)" stroke-width="2.4750943629720004px"/><text class="net-label-text sch-net-label-text" data-circuit-json-type="schematic_net_label" data-schematic-net-label-id="schematic_net_label_5__stack1" x="998.4901924385165" y="153.45585050438797" fill="rgb(132, 0, 0)" text-anchor="start" dominant-baseline="central" font-family="sans-serif" font-variant-numeric="tabular-nums" font-size="22.275849266748px" transform="rotate(90 998.4901924385165 153.45585050438797)">XX</text><path class="net-label sch-net-label" data-circuit-json-type="schematic_net_label" data-schematic-net-label-id="schematic_net_label_6__stack1" d="
|
|
133
|
+
M 391.96831879222776,222.63473794945514
|
|
134
|
+
L 379.59284697736774,215.95198316943075
|
|
135
|
+
L 379.59284697736774,129.90120248343754
|
|
136
|
+
L 404.3437906070878,129.90120248343754
|
|
137
|
+
L 404.3437906070878,215.95198316943075
|
|
138
|
+
Z
|
|
139
|
+
" fill="rgba(255, 255, 255, 0.6)" stroke="rgb(132, 0, 0)" stroke-width="2.4750943629720004px"/><text class="net-label-text sch-net-label-text" data-circuit-json-type="schematic_net_label" data-schematic-net-label-id="schematic_net_label_6__stack1" x="391.96831879222776" y="211.49681331608113" fill="rgb(132, 0, 0)" text-anchor="start" dominant-baseline="central" font-family="sans-serif" font-variant-numeric="tabular-nums" font-size="22.275849266748px" transform="rotate(-90 391.96831879222776 211.49681331608113)">XXXXX</text><path class="net-label sch-net-label" data-circuit-json-type="schematic_net_label" data-schematic-net-label-id="schematic_net_label_7__stack1" d="
|
|
140
|
+
M 201.5098075615324,451.5809665243654
|
|
141
|
+
L 189.1343357466724,444.898211744341
|
|
142
|
+
L 189.1343357466724,358.8474310583478
|
|
143
|
+
L 213.88527937639242,358.8474310583478
|
|
144
|
+
L 213.8852793763924,444.898211744341
|
|
145
|
+
Z
|
|
146
|
+
" fill="rgba(255, 255, 255, 0.6)" stroke="rgb(132, 0, 0)" stroke-width="2.4750943629720004px"/><text class="net-label-text sch-net-label-text" data-circuit-json-type="schematic_net_label" data-schematic-net-label-id="schematic_net_label_7__stack1" x="201.5098075615324" y="440.4430418909914" fill="rgb(132, 0, 0)" text-anchor="start" dominant-baseline="central" font-family="sans-serif" font-variant-numeric="tabular-nums" font-size="22.275849266748px" transform="rotate(-90 201.5098075615324 440.4430418909914)">XXXXX</text>
|
|
147
|
+
</g>
|
|
148
|
+
</svg>
|