@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="1.4002733499999995,-0.0012093000000001908 0.6000000000000001,0" data-type="line" data-label="" points="240.027335,339.4329900000001 160.00000000000003,339.31206000000003" fill="none" stroke="hsl(256, 100%, 50%, 0.8)" stroke-width="1px"/></g><g><polyline data-points="1.3997266500000003,1.1012093000000003 2.1487092999999997,1.3002732499999994" data-type="line" data-label="" points="239.97266500000006,229.19113 314.87093,209.2847350000001" fill="none" stroke="hsl(256, 100%, 50%, 0.8)" stroke-width="1px"/></g><g><polyline data-points="2.1487092999999997,1.3002732499999994 0.6000000000000001,0.2" data-type="line" data-label="" points="314.87093,209.2847350000001 160.00000000000003,319.31206000000003" fill="none" stroke="hsl(280, 100%, 50%, 0.8)" stroke-width="1px"/></g><g><polyline data-points="3.8000000000000003,0 3.2512907000000006,1.2997267500000007" data-type="line" data-label="" points="480,339.31206000000003 425.12907000000007,209.33938499999996" fill="none" stroke="hsl(336, 100%, 50%, 0.8)" stroke-width="1px"/></g><g><polyline data-points="3.8000000000000003,-0.9 3.2512907000000006,1.2997267500000007" data-type="line" data-label="" points="480,429.31206000000003 425.12907000000007,209.33938499999996" fill="none" stroke="hsl(336, 100%, 50%, 0.8)" stroke-width="1px"/></g><g><polyline data-points="2.0034928,-0.8350319000000007 0.6000000000000001,-0.2" data-type="line" data-label="" points="300.34928,422.8152500000001 160.00000000000003,359.31206000000003" fill="none" stroke="hsl(352, 100%, 50%, 0.8)" stroke-width="1px"/></g><g><polyline data-points="3.2512907000000006,1.2997267500000007 3.8000000000000003,0" data-type="line" data-label="" points="425.12907000000007,209.33938499999996 480,339.31206000000003" fill="none" stroke="hsl(123, 100%, 50%, 0.8)" stroke-width="1px" stroke-dasharray="4 2"/></g><g><polyline data-points="3.2512907000000006,1.2997267500000007 3.8000000000000003,-0.9" data-type="line" data-label="" points="425.12907000000007,209.33938499999996 480,429.31206000000003" fill="none" stroke="hsl(123, 100%, 50%, 0.8)" stroke-width="1px" stroke-dasharray="4 2"/></g><g><polyline data-points="3.8000000000000003,0 3.8000000000000003,-0.9" data-type="line" data-label="" points="480,339.31206000000003 480,429.31206000000003" fill="none" stroke="hsl(123, 100%, 50%, 0.8)" stroke-width="1px" stroke-dasharray="4 2"/></g><g><polyline data-points="1.4002733499999995,-0.0012093000000001908 1.4002733499999995,-0.1012093000000002 1.0001366749999998,-0.1012093000000002 1.0001366749999998,0 0.6000000000000001,0" data-type="line" data-label="" points="240.027335,339.4329900000001 240.027335,349.4329900000001 200.0136675,349.4329900000001 200.0136675,339.31206000000003 160.00000000000003,339.31206000000003" fill="none" stroke="purple" stroke-width="1px"/></g><g><polyline data-points="2.1487092999999997,1.3002732499999994 1.3997266500000003,1.3002732499999994 1.3997266500000003,1.1012093000000003" data-type="line" data-label="" points="314.87093,209.2847350000001 239.97266500000006,209.2847350000001 239.97266500000006,229.19113" fill="none" stroke="purple" stroke-width="1px"/></g><g><polyline data-points="0.6000000000000001,0.2 0.9998633250000002,0.2 0.9998633250000002,1.3012093000000002 1.3997266500000003,1.3012093000000002 1.3997266500000003,1.1012093000000003" data-type="line" data-label="" points="160.00000000000003,319.31206000000003 199.98633250000006,319.31206000000003 199.98633250000006,209.19113000000002 239.97266500000006,209.19113000000002 239.97266500000006,229.19113" fill="none" stroke="purple" stroke-width="1px"/></g><g><polyline data-points="3.8000000000000003,-0.9 3.6000000000000005,-0.9 3.6000000000000005,0 3.8000000000000003,0" data-type="line" data-label="" points="480,429.31206000000003 460.0000000000001,429.31206000000003 460.0000000000001,339.31206000000003 480,339.31206000000003" fill="none" stroke="purple" stroke-width="1px"/></g><g><polyline data-points="3.2512907000000006,1.2997267500000007 3.6,1.2997267500000007 3.6,0 3.8000000000000003,0" data-type="line" data-label="" points="425.12907000000007,209.33938499999996 460,209.33938499999996 460,339.31206000000003 480,339.31206000000003" fill="none" stroke="purple" stroke-width="1px"/></g><g><polyline data-points="2.0034928,-0.8350319000000007 2.0034928,-0.2 0.6000000000000001,-0.2" data-type="line" data-label="" points="300.34928,422.8152500000001 300.34928,359.31206000000003 160.00000000000003,359.31206000000003" fill="none" stroke="purple" stroke-width="1px"/></g><g><rect data-type="rect" data-label="schematic_component_0" data-x="0" data-y="0" x="40.00000000000003" y="299.31206000000003" width="120" height="80" fill="hsl(24, 100%, 50%, 0.8)" stroke="black" stroke-width="0.01"/></g><g><rect data-type="rect" data-label="schematic_component_1" data-x="1.4" data-y="0.55" x="213.54167" y="229.19113" width="52.916660000000036" height="110.24186000000009" fill="hsl(24, 100%, 50%, 0.8)" stroke="black" stroke-width="0.01"/></g><g><rect data-type="rect" data-label="schematic_component_2" data-x="2.7" data-y="1.3" x="314.87092999999993" y="189.86652500000008" width="110.25814000000008" height="38.8910699999999" fill="hsl(24, 100%, 50%, 0.8)" stroke="black" stroke-width="0.01"/></g><g><rect data-type="rect" data-label="schematic_component_3" data-x="4.4" data-y="0" x="480.0000000000001" y="319.31206000000003" width="120" height="40" fill="hsl(24, 100%, 50%, 0.8)" stroke="black" stroke-width="0.01"/></g><g><rect data-type="rect" data-label="schematic_component_4" data-x="4.4" data-y="-0.9" x="480.0000000000001" y="409.31206000000003" width="120" height="40" fill="hsl(24, 100%, 50%, 0.8)" stroke="black" stroke-width="0.01"/></g><g><rect data-type="rect" data-label="schematic_component_5" data-x="2" data-y="-1.1" x="255.41992" y="422.8152500000001" width="89.16015999999999" height="52.99361999999985" fill="hsl(24, 100%, 50%, 0.8)" stroke="black" stroke-width="0.01"/></g><g><rect data-type="rect" data-label="netId: solderjumper.JP8 > port.pin2 to .U1 > .pin6
|
|
2
4
|
globalConnNetId: connectivity_net3" data-x="2.2284928" data-y="-0.5175159500000004" x="300.34928" y="381.06365500000004" width="45" height="19.999999999999943" fill="hsl(40, 100%, 50%, 0.35)" stroke="black" stroke-width="0.01"/></g><g><rect data-type="rect" data-label="netId: resistor.R1 > port.pin1 to .U1 > .pin1
|
|
3
5
|
globalConnNetId: connectivity_net1" data-x="1.3997266500000003" data-y="1.5262093000000003" x="229.97266500000006" y="164.19113" width="20.00000000000003" height="45.00000000000003" fill="hsl(40, 100%, 50%, 0.35)" stroke="black" stroke-width="0.01"/></g><g><rect data-type="rect" data-label="netId: PAD
|
|
4
6
|
globalConnNetId: connectivity_net2" data-x="3.4256453500000004" data-y="1.5247267500000008" x="432.5645350000001" y="164.33938499999994" width="20" height="45.00000000000003" fill="hsl(40, 100%, 50%, 0.35)" stroke="black" stroke-width="0.01"/></g><g><circle data-type="point" data-label="U1.6
|
|
@@ -26,7 +28,7 @@ orientation: y+" data-x="3.4256453500000004" data-y="1.2997267500000007" cx="442
|
|
|
26
28
|
const h = svg.getElementById('crosshair-h');
|
|
27
29
|
const v = svg.getElementById('crosshair-v');
|
|
28
30
|
const coords = svg.getElementById('coordinates');
|
|
29
|
-
|
|
31
|
+
|
|
30
32
|
crosshair.style.display = 'block';
|
|
31
33
|
h.setAttribute('x1', '0');
|
|
32
34
|
h.setAttribute('x2', '640');
|
|
@@ -45,13 +47,13 @@ orientation: y+" data-x="3.4256453500000004" data-y="1.2997267500000007" cx="442
|
|
|
45
47
|
// y' = (y - ty) / sy
|
|
46
48
|
const sx = matrix.a;
|
|
47
49
|
const sy = matrix.d;
|
|
48
|
-
const tx = matrix.e;
|
|
50
|
+
const tx = matrix.e;
|
|
49
51
|
const ty = matrix.f;
|
|
50
52
|
const realPoint = {
|
|
51
53
|
x: (x - tx) / sx,
|
|
52
54
|
y: (y - ty) / sy // Flip y back since we used negative scale
|
|
53
55
|
}
|
|
54
|
-
|
|
56
|
+
|
|
55
57
|
coords.textContent = `(${realPoint.x.toFixed(2)}, ${realPoint.y.toFixed(2)})`;
|
|
56
58
|
coords.setAttribute('x', (x + 5).toString());
|
|
57
59
|
coords.setAttribute('y', (y - 5).toString());
|
|
@@ -59,4 +61,41 @@ orientation: y+" data-x="3.4256453500000004" data-y="1.2997267500000007" cx="442
|
|
|
59
61
|
document.currentScript.parentElement.addEventListener('mouseleave', () => {
|
|
60
62
|
document.currentScript.parentElement.getElementById('crosshair').style.display = 'none';
|
|
61
63
|
});
|
|
62
|
-
]]></script
|
|
64
|
+
]]></script>
|
|
65
|
+
</g>
|
|
66
|
+
<g transform="translate(1216, 200)">
|
|
67
|
+
<style>
|
|
68
|
+
.boundary { fill: rgb(245, 241, 237); }
|
|
69
|
+
.schematic-boundary { fill: none; stroke: #fff; }
|
|
70
|
+
.component { fill: none; stroke: rgb(132, 0, 0); }
|
|
71
|
+
.chip { fill: rgb(255, 255, 194); stroke: rgb(132, 0, 0); }
|
|
72
|
+
.component-pin { fill: none; stroke: rgb(132, 0, 0); }
|
|
73
|
+
.text { font-family: sans-serif; fill: rgb(0, 150, 0); }
|
|
74
|
+
.pin-number { fill: rgb(169, 0, 0); }
|
|
75
|
+
.port-label { fill: rgb(0, 100, 100); }
|
|
76
|
+
.component-name { fill: rgb(0, 100, 100); }
|
|
77
|
+
|
|
78
|
+
</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 447.62826646641497 456.9744019651163 L 447.62826646641497 476.02737882083625 L 371.3903183874175 476.02737882083625 L 371.3903183874175 456.743994316 L 295.15237030842 456.743994316" class="trace-invisible-hover-outline sch-trace-hitbox" stroke="rgb(0, 150, 0)" fill="none" stroke-width="30.484762969151998px" stroke-linecap="round" opacity="0" stroke-linejoin="round"/><path class="sch-trace-path" d="M 447.62826646641497 456.9744019651163 L 447.62826646641497 476.02737882083625 L 371.3903183874175 476.02737882083625 L 371.3903183874175 456.743994316 L 295.15237030842 456.743994316" stroke="rgb(0, 150, 0)" fill="none" stroke-width="3.8105953711439997px" 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 590.2275947998031 209.00323293238188 L 447.5241038419449 209.00323293238188 L 447.5241038419449 246.93084125396373" class="trace-invisible-hover-outline sch-trace-hitbox" stroke="rgb(0, 150, 0)" fill="none" stroke-width="30.484762969151998px" stroke-linecap="round" opacity="0" stroke-linejoin="round"/><path class="sch-trace-path" d="M 590.2275947998031 209.00323293238188 L 447.5241038419449 209.00323293238188 L 447.5241038419449 246.93084125396373" stroke="rgb(0, 150, 0)" fill="none" stroke-width="3.8105953711439997px" 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 295.15237030842 418.63804060456 L 371.33823707518246 418.63804060456 L 371.33823707518246 208.82488754252375 L 447.5241038419449 208.82488754252375 L 447.5241038419449 246.93084125396373" class="trace-invisible-hover-outline sch-trace-hitbox" stroke="rgb(0, 150, 0)" fill="none" stroke-width="30.484762969151998px" stroke-linecap="round" opacity="0" stroke-linejoin="round"/><path class="sch-trace-path" d="M 295.15237030842 418.63804060456 L 371.33823707518246 418.63804060456 L 371.33823707518246 208.82488754252375 L 447.5241038419449 208.82488754252375 L 447.5241038419449 246.93084125396373" stroke="rgb(0, 150, 0)" fill="none" stroke-width="3.8105953711439997px" 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 904.84762969146 628.22078601748 L 866.7416759800201 628.22078601748 L 866.7416759800201 456.743994316 L 904.84762969146 456.743994316" class="trace-invisible-hover-outline sch-trace-hitbox" stroke="rgb(0, 150, 0)" fill="none" stroke-width="30.484762969151998px" stroke-linecap="round" opacity="0" stroke-linejoin="round"/><path class="sch-trace-path" d="M 904.84762969146 628.22078601748 L 866.7416759800201 628.22078601748 L 866.7416759800201 456.743994316 L 904.84762969146 456.743994316" stroke="rgb(0, 150, 0)" fill="none" stroke-width="3.8105953711439997px" 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 800.3021737572769 209.10735745089815 L 866.7416759800199 209.10735745089815 L 866.7416759800199 456.743994316 L 904.84762969146 456.743994316" class="trace-invisible-hover-outline sch-trace-hitbox" stroke="rgb(0, 150, 0)" fill="none" stroke-width="30.484762969151998px" stroke-linecap="round" opacity="0" stroke-linejoin="round"/><path class="sch-trace-path" d="M 800.3021737572769 209.10735745089815 L 866.7416759800199 209.10735745089815 L 866.7416759800199 456.743994316 L 904.84762969146 456.743994316" stroke="rgb(0, 150, 0)" fill="none" stroke-width="3.8105953711439997px" 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 562.5595286641166 615.842428960879 L 562.5595286641166 494.84994802744 L 295.15237030842 494.84994802744" class="trace-invisible-hover-outline sch-trace-hitbox" stroke="rgb(0, 150, 0)" fill="none" stroke-width="30.484762969151998px" stroke-linecap="round" opacity="0" stroke-linejoin="round"/><path class="sch-trace-path" d="M 562.5595286641166 615.842428960879 L 562.5595286641166 494.84994802744 L 295.15237030842 494.84994802744" stroke="rgb(0, 150, 0)" fill="none" stroke-width="3.8105953711439997px" 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="447.5241038419449" cy="246.93084125396373" r="5.715893056715999" 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"><circle cx="866.7416759800201" cy="456.743994316" r="5.715893056715999" class="trace-junction sch-trace-junction" fill="rgb(0, 150, 0)"/><circle cx="904.84762969146" cy="456.743994316" r="5.715893056715999" 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="sch-component" data-circuit-json-type="schematic_component" data-schematic-component-id="schematic_component_0__stack1"><rect class="component chip sch-component-body" x="142.72855546265998" y="380.53208689312" width="76.21190742288002" height="152.42381484576003" stroke-width="3.8105953711439997px" fill="rgb(255, 255, 194)" stroke="rgb(132, 0, 0)"/><rect class="component-overlay sch-component-overlay" x="142.72855546265998" y="380.53208689312" width="76.21190742288002" height="152.42381484576003" fill="transparent"/><text class="sch-text" x="180.8345091741" y="456.743994316" fill="#0f172a" text-anchor="middle" dominant-baseline="middle" font-family="sans-serif" font-size="34.295358340296px" transform="rotate(0, 180.8345091741, 456.743994316)">U1</text><line class="component-pin sch-component-pin sch-port-line" x1="218.94046288554" y1="494.84994802744" x2="295.15237030842" y2="494.84994802744" stroke-width="3.8105953711439997px"/><g class="sch-port" data-schematic-port-id="source_port_0_0__stack1"><rect x="291.341774937276" y="491.039352656296" width="7.621190742287999" height="7.621190742287999" opacity="0"/></g><text class="pin-number sch-pin-number" x="257.04641659698" y="491.039352656296" style="font-family: sans-serif;" fill="rgb(169, 0, 0)" text-anchor="middle" dominant-baseline="auto" font-size="28.579465283579996px" transform="">6</text><line class="component-pin sch-component-pin sch-port-line" x1="218.94046288554" y1="456.743994316" x2="295.15237030842" y2="456.743994316" stroke-width="3.8105953711439997px"/><g class="sch-port" data-schematic-port-id="source_port_0_1__stack1"><rect x="291.341774937276" y="452.933398944856" width="7.621190742287999" height="7.621190742287999" opacity="0"/></g><text class="pin-number sch-pin-number" x="257.04641659698" y="452.933398944856" style="font-family: sans-serif;" fill="rgb(169, 0, 0)" text-anchor="middle" dominant-baseline="auto" font-size="28.579465283579996px" transform="">8</text><line class="component-pin sch-component-pin sch-port-line" x1="218.94046288554" y1="418.63804060456" x2="295.15237030842" y2="418.63804060456" stroke-width="3.8105953711439997px"/><g class="sch-port" data-schematic-port-id="source_port_0_2__stack1"><rect x="291.341774937276" y="414.827445233416" width="7.621190742287999" height="7.621190742287999" opacity="0"/></g><text class="pin-number sch-pin-number" x="257.04641659698" y="414.82744523341603" style="font-family: sans-serif;" fill="rgb(169, 0, 0)" text-anchor="middle" dominant-baseline="auto" font-size="28.579465283579996px" transform="">1</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="391.5054793120536" y="246.93084125396376" width="112.03724905978265" height="210.04358653877523" fill="transparent"/><path class="sch-component-symbol-path" d="M 447.5241038419449 246.93084125396376 L 447.5241038419449 330.94827586947383" stroke="rgb(132, 0, 0)" fill="none" stroke-width="3.8105953711439997px" stroke-linecap="round"/><path class="sch-component-symbol-path" d="M 447.5241038419449 372.9569931772289 L 447.5241038419449 456.974427792739" stroke="rgb(132, 0, 0)" fill="none" stroke-width="3.8105953711439997px" stroke-linecap="round"/><path class="sch-component-symbol-path" d="M 391.5054793120536 330.94827586947383 L 503.54272837183623 330.94827586947383" stroke="rgb(132, 0, 0)" fill="none" stroke-width="3.8105953711439997px" stroke-linecap="round"/><path class="sch-component-symbol-path" d="M 391.5054793120536 372.9569931772289 L 503.54272837183623 372.9569931772289" stroke="rgb(132, 0, 0)" fill="none" stroke-width="3.8105953711439997px" stroke-linecap="round"/><text class="sch-component-name sch-component-text" x="480.7810050439177" y="281.93810567709295" stroke="rgb(245, 241, 237)" stroke-width="3.8105953711439997px" paint-order="stroke" fill="rgb(15, 15, 15)" font-family="sans-serif" text-anchor="start" dominant-baseline="ideographic" font-size="34.295358340296px">C2</text><text class="sch-component-text" x="480.7810050439176" y="421.9671633696098" fill="rgb(15, 15, 15)" font-family="sans-serif" text-anchor="start" dominant-baseline="hanging" font-size="34.295358340296px"></text></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="590.227594799803" y="181.00028811755502" width="210.07460476239203" height="56.00588962965372" fill="transparent"/><path class="sch-component-symbol-path" d="M 590.227594799803 209.00323293238188 L 625.2470314136938 209.00323293238188" stroke="rgb(132, 0, 0)" fill="none" stroke-width="3.8105953711439997px" stroke-linecap="round"/><path class="sch-component-symbol-path" d="M 765.2827629483043 209.00323293238188 L 800.302199562195 209.00323293238188" stroke="rgb(132, 0, 0)" fill="none" stroke-width="3.8105953711439997px" stroke-linecap="round"/><path class="sch-component-symbol-path" d="M 625.2470314136938 181.00028811755502 L 765.2827629483043 181.00028811755502 L 765.2827629483043 237.00617774720874 L 625.2470314136938 237.00617774720874 L 625.2470314136938 181.00028811755502" stroke="rgb(132, 0, 0)" fill="none" stroke-width="3.8105953711439997px" stroke-linecap="round"/><text class="sch-component-name sch-component-text" x="695.264897180999" y="152.98333832907736" stroke="rgb(245, 241, 237)" stroke-width="3.8105953711439997px" paint-order="stroke" fill="rgb(15, 15, 15)" font-family="sans-serif" text-anchor="middle" dominant-baseline="ideographic" font-size="34.295358340296px">R1</text><text class="sch-component-text" x="695.264897180999" y="265.0231275356864" fill="rgb(15, 15, 15)" font-family="sans-serif" text-anchor="middle" dominant-baseline="hanging" font-size="34.295358340296px"></text></g><g class="sch-component" data-circuit-json-type="schematic_component" data-schematic-component-id="schematic_component_3__stack1"><rect class="component chip sch-component-body" x="981.05953711434" y="418.63804060456" width="76.21190742288013" height="76.21190742288002" stroke-width="3.8105953711439997px" fill="rgb(255, 255, 194)" stroke="rgb(132, 0, 0)"/><rect class="component-overlay sch-component-overlay" x="981.05953711434" y="418.63804060456" width="76.21190742288013" height="76.21190742288002" fill="transparent"/><text class="sch-text" x="1019.1654908257799" y="456.743994316" fill="#0f172a" text-anchor="middle" dominant-baseline="middle" font-family="sans-serif" font-size="25.403969140959997px" transform="rotate(0, 1019.1654908257799, 456.743994316)">JP5</text><line class="component-pin sch-component-pin sch-port-line" x1="981.05953711434" y1="456.743994316" x2="904.84762969146" y2="456.743994316" stroke-width="3.8105953711439997px"/><g class="sch-port" data-schematic-port-id="source_port_3_0__stack1"><rect x="901.037034320316" y="452.933398944856" width="7.621190742287999" height="7.621190742287999" opacity="0"/></g><text class="pin-number sch-pin-number" x="942.9535834029" y="452.933398944856" style="font-family: sans-serif;" fill="rgb(169, 0, 0)" text-anchor="middle" dominant-baseline="auto" font-size="28.579465283579996px" transform="">1</text></g><g class="sch-component" data-circuit-json-type="schematic_component" data-schematic-component-id="schematic_component_4__stack1"><rect class="component chip sch-component-body" x="981.05953711434" y="590.11483230604" width="76.21190742288013" height="76.21190742288002" stroke-width="3.8105953711439997px" fill="rgb(255, 255, 194)" stroke="rgb(132, 0, 0)"/><rect class="component-overlay sch-component-overlay" x="981.05953711434" y="590.11483230604" width="76.21190742288013" height="76.21190742288002" fill="transparent"/><text class="sch-text" x="1019.1654908257799" y="628.22078601748" fill="#0f172a" text-anchor="middle" dominant-baseline="middle" font-family="sans-serif" font-size="25.403969140959997px" transform="rotate(0, 1019.1654908257799, 628.22078601748)">JP9</text><line class="component-pin sch-component-pin sch-port-line" x1="981.05953711434" y1="628.22078601748" x2="904.84762969146" y2="628.22078601748" stroke-width="3.8105953711439997px"/><g class="sch-port" data-schematic-port-id="source_port_4_0__stack1"><rect x="901.037034320316" y="624.410190646336" width="7.621190742287999" height="7.621190742287999" opacity="0"/></g><text class="pin-number sch-pin-number" x="942.9535834029" y="624.410190646336" style="font-family: sans-serif;" fill="rgb(169, 0, 0)" text-anchor="middle" dominant-baseline="auto" font-size="28.579465283579996px" transform="">1</text></g><g class="sch-component" data-circuit-json-type="schematic_component" data-schematic-component-id="schematic_component_5__stack1"><rect class="component chip sch-component-body" x="552.36755786064" y="656.80025130106" width="19.052976855719976" height="19.052976855719976" stroke-width="3.8105953711439997px" fill="rgb(255, 255, 194)" stroke="rgb(132, 0, 0)"/><rect class="component-overlay sch-component-overlay" x="552.36755786064" y="656.80025130106" width="19.052976855719976" height="19.052976855719976" fill="transparent"/><text class="sch-text" x="561.8940462885" y="666.32673972892" fill="#0f172a" text-anchor="middle" dominant-baseline="middle" font-family="sans-serif" font-size="33.65620717869394px" transform="rotate(0, 561.8940462885, 666.32673972892)">JP8</text><line class="component-pin sch-component-pin sch-port-line" x1="571.42053471636" y1="685.6821388656426" x2="643.0217741639706" y2="685.6821388656426" stroke-width="3.8105953711439997px"/><g class="sch-port" data-schematic-port-id="source_port_5_0__stack1"><circle class="component-pin sch-component-pin sch-port-terminal" cx="646.8323695351146" cy="685.6821388656426" r="3.8105953711439997" stroke-width="3.8105953711439997px"/><rect x="643.0217741639706" y="681.8715434944986" width="7.621190742287999" height="7.621190742287999" opacity="0"/></g><text class="pin-number sch-pin-number" x="609.1264521257372" y="681.8715434944986" style="font-family: sans-serif;" fill="rgb(169, 0, 0)" text-anchor="middle" dominant-baseline="auto" font-size="28.579465283579996px" transform="">1</text><line class="component-pin sch-component-pin sch-port-line" x1="562.5595286641166" y1="656.80025130106" x2="562.5595286641166" y2="615.842428960879" stroke-width="3.8105953711439997px"/><g class="sch-port" data-schematic-port-id="source_port_5_1__stack1"><rect x="558.7489332929725" y="612.031833589735" width="7.621190742287999" height="7.621190742287999" opacity="0"/></g><text class="pin-number sch-pin-number" x="558.7489332929725" y="636.3213401309696" style="font-family: sans-serif;" fill="rgb(169, 0, 0)" text-anchor="middle" dominant-baseline="auto" font-size="28.579465283579996px" transform="rotate(-90 558.7489332929725 636.3213401309696)">2</text><line class="component-pin sch-component-pin sch-port-line" x1="552.36755786064" y1="685.658436962434" x2="480.76631841302935" y2="685.658436962434" stroke-width="3.8105953711439997px"/><g class="sch-port" data-schematic-port-id="source_port_5_2__stack1"><circle class="component-pin sch-component-pin sch-port-terminal" cx="476.9557230418854" cy="685.658436962434" r="3.8105953711439997" stroke-width="3.8105953711439997px"/><rect x="473.1451276707414" y="681.84784159129" width="7.621190742287999" height="7.621190742287999" opacity="0"/></g><text class="pin-number sch-pin-number" x="514.6616404512627" y="681.84784159129" style="font-family: sans-serif;" fill="rgb(169, 0, 0)" text-anchor="middle" dominant-baseline="auto" font-size="28.579465283579996px" transform="">3</text></g><g class="schematic-port-hover sch-port-hover" data-schematic-port-id="source_port_0_0__stack1"><circle cx="295.15237030842" cy="494.84994802744" r="7.621190742287999" fill="red" opacity="0"/></g><g class="schematic-port-hover sch-port-hover" data-schematic-port-id="source_port_0_1__stack1"><circle cx="295.15237030842" cy="456.743994316" r="7.621190742287999" fill="red" opacity="0"/></g><g class="schematic-port-hover sch-port-hover" data-schematic-port-id="source_port_0_2__stack1"><circle cx="295.15237030842" cy="418.63804060456" r="7.621190742287999" fill="red" opacity="0"/></g><g class="schematic-port-hover sch-port-hover" data-schematic-port-id="source_port_1_0__stack1"><circle cx="447.62826646641497" cy="504.8372646673439" r="7.621190742287999" fill="red" opacity="0"/></g><g class="schematic-port-hover sch-port-hover" data-schematic-port-id="source_port_1_1__stack1"><circle cx="447.5241038419449" cy="294.7937039561914" r="7.621190742287999" fill="red" opacity="0"/></g><g class="schematic-port-hover sch-port-hover" data-schematic-port-id="source_port_2_0__stack1"><circle cx="638.1059666138392" cy="209.00323293238188" r="7.621190742287999" fill="red" opacity="0"/></g><g class="schematic-port-hover sch-port-hover" data-schematic-port-id="source_port_2_1__stack1"><circle cx="848.1805455713129" cy="209.10735745089815" r="7.621190742287999" fill="red" opacity="0"/></g><g class="schematic-port-hover sch-port-hover" data-schematic-port-id="source_port_3_0__stack1"><circle cx="904.84762969146" cy="456.743994316" r="7.621190742287999" fill="red" opacity="0"/></g><g class="schematic-port-hover sch-port-hover" data-schematic-port-id="source_port_4_0__stack1"><circle cx="904.84762969146" cy="628.22078601748" r="7.621190742287999" fill="red" opacity="0"/></g><g class="schematic-port-hover sch-port-hover" data-schematic-port-id="source_port_5_0__stack1"><circle cx="646.8323695351146" cy="685.6821388656426" r="7.621190742287999" fill="red" opacity="0"/></g><g class="schematic-port-hover sch-port-hover" data-schematic-port-id="source_port_5_1__stack1"><circle cx="562.5595286641166" cy="615.842428960879" r="7.621190742287999" fill="red" opacity="0"/></g><g class="schematic-port-hover sch-port-hover" data-schematic-port-id="source_port_5_2__stack1"><circle cx="476.9557230418854" cy="685.658436962434" r="7.621190742287999" 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="
|
|
79
|
+
M 562.5595286641166,555.3461884941596
|
|
80
|
+
L 572.8481361662053,536.2932116384396
|
|
81
|
+
L 638.1871447967544,536.2932116384396
|
|
82
|
+
L 638.1871447967544,574.3991653498796
|
|
83
|
+
L 572.8481361662053,574.3991653498796
|
|
84
|
+
Z
|
|
85
|
+
" fill="rgba(255, 255, 255, 0.6)" stroke="rgb(132, 0, 0)" stroke-width="3.8105953711439997px"/><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="579.7072078342645" y="555.3461884941596" fill="rgb(132, 0, 0)" text-anchor="start" dominant-baseline="central" font-family="sans-serif" font-variant-numeric="tabular-nums" font-size="34.295358340296px" 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_1__stack1" d="
|
|
86
|
+
M 447.5241038419449,208.82488754252375
|
|
87
|
+
L 428.47112698622493,198.53628004043495
|
|
88
|
+
L 428.47112698622493,133.19727140988584
|
|
89
|
+
L 466.5770806976649,133.19727140988584
|
|
90
|
+
L 466.5770806976649,198.53628004043495
|
|
91
|
+
Z
|
|
92
|
+
" fill="rgba(255, 255, 255, 0.6)" stroke="rgb(132, 0, 0)" stroke-width="3.8105953711439997px"/><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="447.5241038419449" y="191.67720837237576" fill="rgb(132, 0, 0)" text-anchor="start" dominant-baseline="central" font-family="sans-serif" font-variant-numeric="tabular-nums" font-size="34.295358340296px" transform="rotate(-90 447.5241038419449 191.67720837237576)">XX</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="
|
|
93
|
+
M 833.5219248686485,209.10735745089815
|
|
94
|
+
L 814.4689480129285,198.81874994880934
|
|
95
|
+
L 814.4689480129285,133.47974131826024
|
|
96
|
+
L 852.5749017243685,133.47974131826024
|
|
97
|
+
L 852.5749017243685,198.81874994880934
|
|
98
|
+
Z
|
|
99
|
+
" fill="rgba(255, 255, 255, 0.6)" stroke="rgb(132, 0, 0)" stroke-width="3.8105953711439997px"/><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="833.5219248686485" y="191.95967828075015" fill="rgb(132, 0, 0)" text-anchor="start" dominant-baseline="central" font-family="sans-serif" font-variant-numeric="tabular-nums" font-size="34.295358340296px" transform="rotate(-90 833.5219248686485 191.95967828075015)">XX</text>
|
|
100
|
+
</g>
|
|
101
|
+
</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.2000000000000002,-0.30000000000000004 1.6,1.7049999999999998" data-type="line" data-label="" points="308.80000000000007,443.42400000000004 353.6,218.86400000000003" fill="none" stroke="hsl(157, 100%, 50%, 0.8)" stroke-width="1px" stroke-dasharray="4 2"/></g><g><polyline data-points="1.2000000000000002,0.30000000000000004 1.6,2.105" data-type="line" data-label="" points="308.80000000000007,376.224 353.6,174.06400000000002" fill="none" stroke="hsl(190, 100%, 50%, 0.8)" stroke-width="1px" stroke-dasharray="4 2"/></g><g><polyline data-points="1.2000000000000002,0.30000000000000004 1.299,0.30000000000000004 1.299,1.2025000000000001 1.049,1.2025000000000001 1.049,2.105 1.6,2.105" data-type="line" data-label="" points="308.80000000000007,376.224 319.88800000000003,376.224 319.88800000000003,275.144 291.88800000000003,275.144 291.88800000000003,174.06400000000002 353.6,174.06400000000002" fill="none" stroke="purple" stroke-width="1px"/></g><g><polyline data-points="1.2000000000000002,-0.30000000000000004 1.3010000000000002,-0.30000000000000004 1.3010000000000002,-0.5010000000000001" data-type="line" data-label="" points="308.80000000000007,443.42400000000004 320.1120000000001,443.42400000000004 320.1120000000001,465.93600000000004" fill="none" stroke="purple" stroke-width="1px"/></g><g><polyline data-points="1.6,1.7049999999999998 1.499,1.7049999999999998 1.499,1.504" data-type="line" data-label="" points="353.6,218.86400000000003 342.288,218.86400000000003 342.288,241.376" fill="none" stroke="purple" stroke-width="1px"/></g><g><rect data-type="rect" data-label="schematic_component_0" data-x="0" data-y="0" x="40" y="353.824" width="268.80000000000007" height="112" fill="hsl(24, 100%, 50%, 0.8)" stroke="black" stroke-width="0.008928571428571428"/></g><g><rect data-type="rect" data-label="schematic_component_1" data-x="2.7" data-y="1.9049999999999998" x="353.6000000000001" y="151.66400000000004" width="246.39999999999998" height="89.59999999999997" fill="hsl(24, 100%, 50%, 0.8)" stroke="black" stroke-width="0.008928571428571428"/></g><g><rect data-type="rect" data-label="netId: GND
|
|
2
4
|
globalConnNetId: connectivity_net0" data-x="1.3010000000000002" data-y="-0.7260000000000001" x="308.91200000000003" y="465.93600000000004" width="22.400000000000034" height="50.39999999999998" fill="#00000066" stroke="#000000" stroke-width="0.008928571428571428"/></g><g><rect data-type="rect" data-label="netId: GND
|
|
3
5
|
globalConnNetId: connectivity_net0" data-x="1.499" data-y="1.279" x="331.08799999999997" y="241.37599999999998" width="22.400000000000034" height="50.40000000000006" fill="#00000066" stroke="#000000" stroke-width="0.008928571428571428"/></g><g><rect data-type="rect" data-label="netId: VCC
|
|
4
6
|
globalConnNetId: connectivity_net1" data-x="1.049" data-y="2.33" x="280.68800000000005" y="123.66399999999996" width="22.399999999999977" height="50.400000000000034" fill="#ef444466" stroke="#ef4444" stroke-width="0.008928571428571428"/></g><g><circle data-type="point" data-label="U1.1
|
|
@@ -25,7 +27,7 @@ orientation: y+" data-x="1.049" data-y="2.105" cx="291.88800000000003" cy="174.0
|
|
|
25
27
|
const h = svg.getElementById('crosshair-h');
|
|
26
28
|
const v = svg.getElementById('crosshair-v');
|
|
27
29
|
const coords = svg.getElementById('coordinates');
|
|
28
|
-
|
|
30
|
+
|
|
29
31
|
crosshair.style.display = 'block';
|
|
30
32
|
h.setAttribute('x1', '0');
|
|
31
33
|
h.setAttribute('x2', '640');
|
|
@@ -44,13 +46,13 @@ orientation: y+" data-x="1.049" data-y="2.105" cx="291.88800000000003" cy="174.0
|
|
|
44
46
|
// y' = (y - ty) / sy
|
|
45
47
|
const sx = matrix.a;
|
|
46
48
|
const sy = matrix.d;
|
|
47
|
-
const tx = matrix.e;
|
|
49
|
+
const tx = matrix.e;
|
|
48
50
|
const ty = matrix.f;
|
|
49
51
|
const realPoint = {
|
|
50
52
|
x: (x - tx) / sx,
|
|
51
53
|
y: (y - ty) / sy // Flip y back since we used negative scale
|
|
52
54
|
}
|
|
53
|
-
|
|
55
|
+
|
|
54
56
|
coords.textContent = `(${realPoint.x.toFixed(2)}, ${realPoint.y.toFixed(2)})`;
|
|
55
57
|
coords.setAttribute('x', (x + 5).toString());
|
|
56
58
|
coords.setAttribute('y', (y - 5).toString());
|
|
@@ -58,4 +60,41 @@ orientation: y+" data-x="1.049" data-y="2.105" cx="291.88800000000003" cy="174.0
|
|
|
58
60
|
document.currentScript.parentElement.addEventListener('mouseleave', () => {
|
|
59
61
|
document.currentScript.parentElement.getElementById('crosshair').style.display = 'none';
|
|
60
62
|
});
|
|
61
|
-
]]></script
|
|
63
|
+
]]></script>
|
|
64
|
+
</g>
|
|
65
|
+
<g transform="translate(1216, 200)">
|
|
66
|
+
<style>
|
|
67
|
+
.boundary { fill: rgb(245, 241, 237); }
|
|
68
|
+
.schematic-boundary { fill: none; stroke: #fff; }
|
|
69
|
+
.component { fill: none; stroke: rgb(132, 0, 0); }
|
|
70
|
+
.chip { fill: rgb(255, 255, 194); stroke: rgb(132, 0, 0); }
|
|
71
|
+
.component-pin { fill: none; stroke: rgb(132, 0, 0); }
|
|
72
|
+
.text { font-family: sans-serif; fill: rgb(0, 150, 0); }
|
|
73
|
+
.pin-number { fill: rgb(169, 0, 0); }
|
|
74
|
+
.port-label { fill: rgb(0, 100, 100); }
|
|
75
|
+
.component-name { fill: rgb(0, 100, 100); }
|
|
76
|
+
|
|
77
|
+
</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 627.273553744 491.27549319679997 L 645.274099215073 491.27549319679997 L 645.274099215073 327.17961150343245 L 599.818176308323 327.17961150343245 L 599.818176308323 163.083729810065 L 700.0030303947999 163.083729810065" class="trace-invisible-hover-outline sch-trace-hitbox" stroke="rgb(0, 150, 0)" fill="none" stroke-width="29.091790660319997px" stroke-linecap="round" opacity="0" stroke-linejoin="round"/><path class="sch-trace-path" d="M 627.273553744 491.27549319679997 L 645.274099215073 491.27549319679997 L 645.274099215073 327.17961150343245 L 599.818176308323 327.17961150343245 L 599.818176308323 163.083729810065 L 700.0030303947999 163.083729810065" stroke="rgb(0, 150, 0)" fill="none" stroke-width="3.6364738325399997px" 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 627.273553744 600.3697081729999 L 645.637746598327 600.3697081729999 L 645.637746598327 636.9162701900269" class="trace-invisible-hover-outline sch-trace-hitbox" stroke="rgb(0, 150, 0)" fill="none" stroke-width="29.091790660319997px" stroke-linecap="round" opacity="0" stroke-linejoin="round"/><path class="sch-trace-path" d="M 627.273553744 600.3697081729999 L 645.637746598327 600.3697081729999 L 645.637746598327 636.9162701900269" stroke="rgb(0, 150, 0)" fill="none" stroke-width="3.6364738325399997px" 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 700.0030303947999 235.813206460865 L 681.638837540473 235.813206460865 L 681.638837540473 272.359768477892" class="trace-invisible-hover-outline sch-trace-hitbox" stroke="rgb(0, 150, 0)" fill="none" stroke-width="29.091790660319997px" stroke-linecap="round" opacity="0" stroke-linejoin="round"/><path class="sch-trace-path" d="M 700.0030303947999 235.813206460865 L 681.638837540473 235.813206460865 L 681.638837540473 272.359768477892" stroke="rgb(0, 150, 0)" fill="none" stroke-width="3.6364738325399997px" 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="sch-component" data-circuit-json-type="schematic_component" data-schematic-component-id="schematic_component_0__stack1"><rect class="component chip sch-component-body" x="263.62617048999994" y="454.91075487139994" width="290.9179066032001" height="181.82369162700002" stroke-width="3.6364738325399997px" fill="rgb(255, 255, 194)" stroke="rgb(132, 0, 0)"/><rect class="component-overlay sch-component-overlay" x="263.62617048999994" y="454.91075487139994" width="290.9179066032001" height="181.82369162700002" fill="transparent"/><text class="sch-text" x="409.0851237916" y="545.8226006849" fill="#0f172a" text-anchor="middle" dominant-baseline="middle" font-family="sans-serif" font-size="32.72826449286px" transform="rotate(0, 409.0851237916, 545.8226006849)">U1</text><line class="component-pin sch-component-pin sch-port-line" x1="554.5440770932" y1="600.3697081729999" x2="627.273553744" y2="600.3697081729999" stroke-width="3.6364738325399997px"/><g class="sch-port" data-schematic-port-id="source_port_0_0__stack1"><rect x="623.63707991146" y="596.73323434046" width="7.272947665079999" height="7.272947665079999" opacity="0"/></g><text class="pin-number sch-pin-number" x="590.9088154185999" y="596.73323434046" style="font-family: sans-serif;" fill="rgb(169, 0, 0)" text-anchor="middle" dominant-baseline="auto" font-size="27.273553744049998px" transform="">1</text><line class="component-pin sch-component-pin sch-port-line" x1="263.62617048999994" y1="600.3697081729999" x2="194.53316767173996" y2="600.3697081729999" stroke-width="3.6364738325399997px"/><g class="sch-port" data-schematic-port-id="source_port_0_1__stack1"><circle class="component-pin sch-component-pin sch-port-terminal" cx="190.89669383919997" cy="600.3697081729999" r="3.6364738325399997" stroke-width="3.6364738325399997px"/><rect x="187.26022000665998" y="596.73323434046" width="7.272947665079999" height="7.272947665079999" opacity="0"/></g><text class="pin-number sch-pin-number" x="227.26143216459997" y="596.73323434046" style="font-family: sans-serif;" fill="rgb(169, 0, 0)" text-anchor="middle" dominant-baseline="auto" font-size="27.273553744049998px" transform="">2</text><line class="component-pin sch-component-pin sch-port-line" x1="554.5440770932" y1="527.6402315222" x2="623.63707991146" y2="527.6402315222" stroke-width="3.6364738325399997px"/><g class="sch-port" data-schematic-port-id="source_port_0_2__stack1"><circle class="component-pin sch-component-pin sch-port-terminal" cx="627.273553744" cy="527.6402315222" r="3.6364738325399997" stroke-width="3.6364738325399997px"/><rect x="623.63707991146" y="524.00375768966" width="7.272947665079999" height="7.272947665079999" opacity="0"/></g><text class="pin-number sch-pin-number" x="590.9088154185999" y="524.00375768966" style="font-family: sans-serif;" fill="rgb(169, 0, 0)" text-anchor="middle" dominant-baseline="auto" font-size="27.273553744049998px" transform="">3</text><line class="component-pin sch-component-pin sch-port-line" x1="263.62617048999994" y1="491.27549319679997" x2="194.53316767173996" y2="491.27549319679997" stroke-width="3.6364738325399997px"/><g class="sch-port" data-schematic-port-id="source_port_0_3__stack1"><circle class="component-pin sch-component-pin sch-port-terminal" cx="190.89669383919997" cy="491.27549319679997" r="3.6364738325399997" stroke-width="3.6364738325399997px"/><rect x="187.26022000665998" y="487.63901936426" width="7.272947665079999" height="7.272947665079999" opacity="0"/></g><text class="pin-number sch-pin-number" x="227.26143216459997" y="487.6390193642599" style="font-family: sans-serif;" fill="rgb(169, 0, 0)" text-anchor="middle" dominant-baseline="auto" font-size="27.273553744049998px" transform="">4</text><line class="component-pin sch-component-pin sch-port-line" x1="263.62617048999994" y1="527.6402315222" x2="194.53316767173996" y2="527.6402315222" stroke-width="3.6364738325399997px"/><g class="sch-port" data-schematic-port-id="source_port_0_4__stack1"><circle class="component-pin sch-component-pin sch-port-terminal" cx="190.89669383919997" cy="527.6402315222" r="3.6364738325399997" stroke-width="3.6364738325399997px"/><rect x="187.26022000665998" y="524.00375768966" width="7.272947665079999" height="7.272947665079999" opacity="0"/></g><text class="pin-number sch-pin-number" x="227.26143216459997" y="524.00375768966" style="font-family: sans-serif;" fill="rgb(169, 0, 0)" text-anchor="middle" dominant-baseline="auto" font-size="27.273553744049998px" transform="">5</text><line class="component-pin sch-component-pin sch-port-line" x1="263.62617048999994" y1="564.0049698475999" x2="194.53316767173996" y2="564.0049698475999" stroke-width="3.6364738325399997px"/><g class="sch-port" data-schematic-port-id="source_port_0_5__stack1"><circle class="component-pin sch-component-pin sch-port-terminal" cx="190.89669383919997" cy="564.0049698475999" r="3.6364738325399997" stroke-width="3.6364738325399997px"/><rect x="187.26022000665998" y="560.3684960150599" width="7.272947665079999" height="7.272947665079999" opacity="0"/></g><text class="pin-number sch-pin-number" x="227.26143216459997" y="560.3684960150599" style="font-family: sans-serif;" fill="rgb(169, 0, 0)" text-anchor="middle" dominant-baseline="auto" font-size="27.273553744049998px" transform="">6</text><line class="component-pin sch-component-pin sch-port-line" x1="554.5440770932" y1="564.0049698475999" x2="623.63707991146" y2="564.0049698475999" stroke-width="3.6364738325399997px"/><g class="sch-port" data-schematic-port-id="source_port_0_6__stack1"><circle class="component-pin sch-component-pin sch-port-terminal" cx="627.273553744" cy="564.0049698475999" r="3.6364738325399997" stroke-width="3.6364738325399997px"/><rect x="623.63707991146" y="560.3684960150599" width="7.272947665079999" height="7.272947665079999" opacity="0"/></g><text class="pin-number sch-pin-number" x="590.9088154185999" y="560.3684960150599" style="font-family: sans-serif;" fill="rgb(169, 0, 0)" text-anchor="middle" dominant-baseline="auto" font-size="27.273553744049998px" transform="">7</text><line class="component-pin sch-component-pin sch-port-line" x1="554.5440770932" y1="491.27549319679997" x2="627.273553744" y2="491.27549319679997" stroke-width="3.6364738325399997px"/><g class="sch-port" data-schematic-port-id="source_port_0_7__stack1"><rect x="623.63707991146" y="487.63901936426" width="7.272947665079999" height="7.272947665079999" opacity="0"/></g><text class="pin-number sch-pin-number" x="590.9088154185999" y="487.6390193642599" style="font-family: sans-serif;" fill="rgb(169, 0, 0)" text-anchor="middle" dominant-baseline="auto" font-size="27.273553744049998px" transform="">8</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="772.7325070456" y="126.71899148466503" width="254.55316827780007" height="145.4589533016" stroke-width="3.6364738325399997px" fill="rgb(255, 255, 194)" stroke="rgb(132, 0, 0)"/><rect class="component-overlay sch-component-overlay" x="772.7325070456" y="126.71899148466503" width="254.55316827780007" height="145.4589533016" fill="transparent"/><text class="sch-text" x="900.0090911845" y="199.44846813546502" fill="#0f172a" text-anchor="middle" dominant-baseline="middle" font-family="sans-serif" font-size="32.72826449286px" transform="rotate(0, 900.0090911845, 199.44846813546502)">J1</text><line class="component-pin sch-component-pin sch-port-line" x1="772.7325070456" y1="163.083729810065" x2="700.0030303947999" y2="163.083729810065" stroke-width="3.6364738325399997px"/><g class="sch-port" data-schematic-port-id="source_port_1_0__stack1"><rect x="696.3665565622599" y="159.447255977525" width="7.272947665079999" height="7.272947665079999" opacity="0"/></g><text class="pin-number sch-pin-number" x="736.3677687202" y="159.447255977525" style="font-family: sans-serif;" fill="rgb(169, 0, 0)" text-anchor="middle" dominant-baseline="auto" font-size="27.273553744049998px" transform="">1</text><line class="component-pin sch-component-pin sch-port-line" x1="772.7325070456" y1="199.44846813546502" x2="703.63950422734" y2="199.44846813546502" stroke-width="3.6364738325399997px"/><g class="sch-port" data-schematic-port-id="source_port_1_1__stack1"><circle class="component-pin sch-component-pin sch-port-terminal" cx="700.0030303947999" cy="199.44846813546502" r="3.6364738325399997" stroke-width="3.6364738325399997px"/><rect x="696.3665565622599" y="195.81199430292503" width="7.272947665079999" height="7.272947665079999" opacity="0"/></g><text class="pin-number sch-pin-number" x="736.3677687202" y="195.81199430292503" style="font-family: sans-serif;" fill="rgb(169, 0, 0)" text-anchor="middle" dominant-baseline="auto" font-size="27.273553744049998px" transform="">2</text><line class="component-pin sch-component-pin sch-port-line" x1="772.7325070456" y1="235.813206460865" x2="700.0030303947999" y2="235.813206460865" stroke-width="3.6364738325399997px"/><g class="sch-port" data-schematic-port-id="source_port_1_2__stack1"><rect x="696.3665565622599" y="232.176732628325" width="7.272947665079999" height="7.272947665079999" opacity="0"/></g><text class="pin-number sch-pin-number" x="736.3677687202" y="232.176732628325" style="font-family: sans-serif;" fill="rgb(169, 0, 0)" text-anchor="middle" dominant-baseline="auto" font-size="27.273553744049998px" transform="">3</text></g><g class="schematic-port-hover sch-port-hover" data-schematic-port-id="source_port_0_0__stack1"><circle cx="627.273553744" cy="600.3697081729999" r="7.272947665079999" fill="red" opacity="0"/></g><g class="schematic-port-hover sch-port-hover" data-schematic-port-id="source_port_0_1__stack1"><circle cx="190.89669383919997" cy="600.3697081729999" r="7.272947665079999" fill="red" opacity="0"/></g><g class="schematic-port-hover sch-port-hover" data-schematic-port-id="source_port_0_2__stack1"><circle cx="627.273553744" cy="527.6402315222" r="7.272947665079999" fill="red" opacity="0"/></g><g class="schematic-port-hover sch-port-hover" data-schematic-port-id="source_port_0_3__stack1"><circle cx="190.89669383919997" cy="491.27549319679997" r="7.272947665079999" fill="red" opacity="0"/></g><g class="schematic-port-hover sch-port-hover" data-schematic-port-id="source_port_0_4__stack1"><circle cx="190.89669383919997" cy="527.6402315222" r="7.272947665079999" fill="red" opacity="0"/></g><g class="schematic-port-hover sch-port-hover" data-schematic-port-id="source_port_0_5__stack1"><circle cx="190.89669383919997" cy="564.0049698475999" r="7.272947665079999" fill="red" opacity="0"/></g><g class="schematic-port-hover sch-port-hover" data-schematic-port-id="source_port_0_6__stack1"><circle cx="627.273553744" cy="564.0049698475999" r="7.272947665079999" fill="red" opacity="0"/></g><g class="schematic-port-hover sch-port-hover" data-schematic-port-id="source_port_0_7__stack1"><circle cx="627.273553744" cy="491.27549319679997" r="7.272947665079999" fill="red" opacity="0"/></g><g class="schematic-port-hover sch-port-hover" data-schematic-port-id="source_port_1_0__stack1"><circle cx="700.0030303947999" cy="163.083729810065" r="7.272947665079999" fill="red" opacity="0"/></g><g class="schematic-port-hover sch-port-hover" data-schematic-port-id="source_port_1_1__stack1"><circle cx="700.0030303947999" cy="199.44846813546502" r="7.272947665079999" fill="red" opacity="0"/></g><g class="schematic-port-hover sch-port-hover" data-schematic-port-id="source_port_1_2__stack1"><circle cx="700.0030303947999" cy="235.813206460865" r="7.272947665079999" 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="
|
|
78
|
+
M 645.637746598327,636.9162701900269
|
|
79
|
+
L 663.820115761027,646.7347495378849
|
|
80
|
+
L 663.820115761027,709.0881541865041
|
|
81
|
+
L 627.455377435627,709.0881541865041
|
|
82
|
+
L 627.455377435627,646.7347495378849
|
|
83
|
+
Z
|
|
84
|
+
" fill="rgba(255, 255, 255, 0.6)" stroke="rgb(132, 0, 0)" stroke-width="3.6364738325399997px"/><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="645.637746598327" y="653.2804024364569" fill="rgb(132, 0, 0)" text-anchor="start" dominant-baseline="central" font-family="sans-serif" font-variant-numeric="tabular-nums" font-size="32.72826449286px" transform="rotate(90 645.637746598327 653.2804024364569)">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="
|
|
85
|
+
M 681.638837540473,272.359768477892
|
|
86
|
+
L 699.821206703173,282.17824782574996
|
|
87
|
+
L 699.821206703173,344.53165247436914
|
|
88
|
+
L 663.456468377773,344.53165247436914
|
|
89
|
+
L 663.456468377773,282.17824782574996
|
|
90
|
+
Z
|
|
91
|
+
" fill="rgba(255, 255, 255, 0.6)" stroke="rgb(132, 0, 0)" stroke-width="3.6364738325399997px"/><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="681.638837540473" y="288.723900724322" fill="rgb(132, 0, 0)" text-anchor="start" dominant-baseline="central" font-family="sans-serif" font-variant-numeric="tabular-nums" font-size="32.72826449286px" transform="rotate(90 681.638837540473 288.723900724322)">XX</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="
|
|
92
|
+
M 599.818176308323,163.083729810065
|
|
93
|
+
L 581.6358071456231,153.265250462207
|
|
94
|
+
L 581.6358071456231,90.9118458135878
|
|
95
|
+
L 618.000545471023,90.9118458135878
|
|
96
|
+
L 618.000545471023,153.265250462207
|
|
97
|
+
Z
|
|
98
|
+
" fill="rgba(255, 255, 255, 0.6)" stroke="rgb(132, 0, 0)" stroke-width="3.6364738325399997px"/><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="599.818176308323" y="146.719597563635" fill="rgb(132, 0, 0)" text-anchor="start" dominant-baseline="central" font-family="sans-serif" font-variant-numeric="tabular-nums" font-size="32.72826449286px" transform="rotate(-90 599.818176308323 146.719597563635)">XX</text>
|
|
99
|
+
</g>
|
|
100
|
+
</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="6.7,-0.39999999999999925 5.785,-0.3999999999999999" data-type="line" data-label="" points="582.8736295441432,300.6439699942296 523.7391806116561,300.6439699942296" fill="none" stroke="hsl(176, 100%, 50%, 0.8)" stroke-width="1px"/></g><g><polyline data-points="2.8699999999999997,-1.2 3.785,-0.29999999999999993" data-type="line" data-label="" points="335.3491055972303,352.34622042700516 394.4835545297173,294.18118869013273" fill="none" stroke="hsl(8, 100%, 50%, 0.8)" stroke-width="1px"/></g><g><polyline data-points="2.9752723250000006,-0.4999999999999998 3.785,-0.4999999999999999" data-type="line" data-label="" points="342.1526257357185,307.10675129832657 394.4835545297173,307.10675129832657" fill="none" stroke="hsl(272, 100%, 50%, 0.8)" stroke-width="1px"/></g><g><polyline data-points="-1.4,-0.6 1.4,-0.6" data-type="line" data-label="" points="59.38834391229081,313.5695326024235 240.34622042700522,313.5695326024235" fill="none" stroke="hsl(157, 100%, 50%, 0.8)" stroke-width="1px" stroke-dasharray="4 2"/></g><g><polyline data-points="-1.4,-0.6 4.785,-1.2999999999999998" data-type="line" data-label="" points="59.38834391229081,313.5695326024235 459.11136757068675,358.8090017311021" fill="none" stroke="hsl(157, 100%, 50%, 0.8)" stroke-width="1px" stroke-dasharray="4 2"/></g><g><polyline data-points="-1.4,-0.6 6.7,-1.4999999999999993" data-type="line" data-label="" points="59.38834391229081,313.5695326024235 582.8736295441432,371.73456433929596" fill="none" stroke="hsl(157, 100%, 50%, 0.8)" stroke-width="1px" stroke-dasharray="4 2"/></g><g><polyline data-points="-1.4,-0.6 2.8699999999999997,-2.3" data-type="line" data-label="" points="59.38834391229081,313.5695326024235 335.3491055972303,423.43681477207156" fill="none" stroke="hsl(157, 100%, 50%, 0.8)" stroke-width="1px" stroke-dasharray="4 2"/></g><g><polyline data-points="1.4,-0.6 4.785,-1.2999999999999998" data-type="line" data-label="" points="240.34622042700522,313.5695326024235 459.11136757068675,358.8090017311021" fill="none" stroke="hsl(157, 100%, 50%, 0.8)" stroke-width="1px" stroke-dasharray="4 2"/></g><g><polyline data-points="1.4,-0.6 6.7,-1.4999999999999993" data-type="line" data-label="" points="240.34622042700522,313.5695326024235 582.8736295441432,371.73456433929596" fill="none" stroke="hsl(157, 100%, 50%, 0.8)" stroke-width="1px" stroke-dasharray="4 2"/></g><g><polyline data-points="1.4,-0.6 2.8699999999999997,-2.3" data-type="line" data-label="" points="240.34622042700522,313.5695326024235 335.3491055972303,423.43681477207156" fill="none" stroke="hsl(157, 100%, 50%, 0.8)" stroke-width="1px" stroke-dasharray="4 2"/></g><g><polyline data-points="4.785,-1.2999999999999998 6.7,-1.4999999999999993" data-type="line" data-label="" points="459.11136757068675,358.8090017311021 582.8736295441432,371.73456433929596" fill="none" stroke="hsl(157, 100%, 50%, 0.8)" stroke-width="1px" stroke-dasharray="4 2"/></g><g><polyline data-points="4.785,-1.2999999999999998 2.8699999999999997,-2.3" data-type="line" data-label="" points="459.11136757068675,358.8090017311021 335.3491055972303,423.43681477207156" fill="none" stroke="hsl(157, 100%, 50%, 0.8)" stroke-width="1px" stroke-dasharray="4 2"/></g><g><polyline data-points="6.7,-1.4999999999999993 2.8699999999999997,-2.3" data-type="line" data-label="" points="582.8736295441432,371.73456433929596 335.3491055972303,423.43681477207156" fill="none" stroke="hsl(157, 100%, 50%, 0.8)" stroke-width="1px" stroke-dasharray="4 2"/></g><g><polyline data-points="-1.4,0.6 3.785,-0.29999999999999993" data-type="line" data-label="" points="59.38834391229081,236.01615695326024 394.4835545297173,294.18118869013273" fill="none" stroke="hsl(27, 100%, 50%, 0.8)" stroke-width="1px" stroke-dasharray="4 2"/></g><g><polyline data-points="-1.4,0.6 2.8699999999999997,-1.2" data-type="line" data-label="" points="59.38834391229081,236.01615695326024 335.3491055972303,352.34622042700516" fill="none" stroke="hsl(27, 100%, 50%, 0.8)" stroke-width="1px" stroke-dasharray="4 2"/></g><g><polyline data-points="-1.4,0.6 2.9752723250000006,0.6000000000000003" data-type="line" data-label="" points="59.38834391229081,236.01615695326024 342.1526257357185,236.0161569532602" fill="none" stroke="hsl(27, 100%, 50%, 0.8)" stroke-width="1px" stroke-dasharray="4 2"/></g><g><polyline data-points="3.785,-0.29999999999999993 2.8699999999999997,-1.2" data-type="line" data-label="" points="394.4835545297173,294.18118869013273 335.3491055972303,352.34622042700516" fill="none" stroke="hsl(27, 100%, 50%, 0.8)" stroke-width="1px" stroke-dasharray="4 2"/></g><g><polyline data-points="3.785,-0.29999999999999993 2.9752723250000006,0.6000000000000003" data-type="line" data-label="" points="394.4835545297173,294.18118869013273 342.1526257357185,236.0161569532602" fill="none" stroke="hsl(27, 100%, 50%, 0.8)" stroke-width="1px" stroke-dasharray="4 2"/></g><g><polyline data-points="2.8699999999999997,-1.2 2.9752723250000006,0.6000000000000003" data-type="line" data-label="" points="335.3491055972303,352.34622042700516 342.1526257357185,236.0161569532602" fill="none" stroke="hsl(27, 100%, 50%, 0.8)" stroke-width="1px" stroke-dasharray="4 2"/></g><g><polyline data-points="1.4,0.6 5.785,-0.3999999999999999" data-type="line" data-label="" points="240.34622042700522,236.01615695326024 523.7391806116561,300.6439699942296" fill="none" stroke="hsl(64, 100%, 50%, 0.8)" stroke-width="1px" stroke-dasharray="4 2"/></g><g><polyline data-points="1.4,0.6 6.7,-0.39999999999999925" data-type="line" data-label="" points="240.34622042700522,236.01615695326024 582.8736295441432,300.6439699942296" fill="none" stroke="hsl(64, 100%, 50%, 0.8)" stroke-width="1px" stroke-dasharray="4 2"/></g><g><polyline data-points="5.785,-0.3999999999999999 6.7,-0.39999999999999925" data-type="line" data-label="" points="523.7391806116561,300.6439699942296 582.8736295441432,300.6439699942296" fill="none" stroke="hsl(64, 100%, 50%, 0.8)" stroke-width="1px" stroke-dasharray="4 2"/></g><g><polyline data-points="3.785,-0.4999999999999999 2.9752723250000006,-0.4999999999999998" data-type="line" data-label="" points="394.4835545297173,307.10675129832657 342.1526257357185,307.10675129832657" fill="none" stroke="hsl(345, 100%, 50%, 0.8)" stroke-width="1px" stroke-dasharray="4 2"/></g><g><polyline data-points="5.785,-0.3999999999999999 6.2425,-0.3999999999999999 6.2425,-0.19999999999999923 6.7,-0.19999999999999923 6.7,-0.39999999999999925" data-type="line" data-label="" points="523.7391806116561,300.6439699942296 553.3064050778996,300.6439699942296 553.3064050778996,287.7184073860357 582.8736295441432,287.7184073860357 582.8736295441432,300.6439699942296" fill="none" stroke="purple" stroke-width="1px"/></g><g><polyline data-points="3.785,-0.30000000000000004 3.3801361625000004,-0.30000000000000004 3.3801361625000004,-0.7999999999999997 2.8699999999999997,-0.7999999999999997 2.8699999999999997,-1.2" data-type="line" data-label="" points="394.4835545297173,294.18118869013273 368.3180901327179,294.18118869013273 368.3180901327179,326.4950952106174 335.3491055972303,326.4950952106174 335.3491055972303,352.34622042700516" fill="none" stroke="purple" stroke-width="1px"/></g><g><polyline data-points="2.9752723250000006,0.6000000000000003 2.9752723250000006,0.8000000000000005 3.3801361625000004,0.8000000000000005 3.3801361625000004,-0.30000000000000004 3.785,-0.30000000000000004" data-type="line" data-label="" points="342.1526257357185,236.0161569532602 342.1526257357185,223.0905943450663 368.3180901327179,223.0905943450663 368.3180901327179,294.18118869013273 394.4835545297173,294.18118869013273" fill="none" stroke="purple" stroke-width="1px"/></g><g><polyline data-points="2.9752723250000006,-0.4999999999999998 2.9752723250000006,-0.6 3.585,-0.6 3.585,-0.4999999999999998 3.785,-0.4999999999999998" data-type="line" data-label="" points="342.1526257357185,307.10675129832657 342.1526257357185,313.5695326024235 381.5579919215234,313.5695326024235 381.5579919215234,307.10675129832657 394.4835545297173,307.10675129832657" fill="none" stroke="purple" stroke-width="1px"/></g><g><polyline data-points="4.785,-1.2999999999999998 4.785,-1.6999999999999993 6.7,-1.6999999999999993 6.7,-1.4999999999999991" data-type="line" data-label="" points="459.11136757068675,358.8090017311021 459.11136757068675,384.66012694748986 582.8736295441432,384.66012694748986 582.8736295441432,371.73456433929596" fill="none" stroke="purple" stroke-width="1px"/></g><g><polyline data-points="-1.4,-0.6 -1.5999999999999999,-0.6 -1.5999999999999999,-1.2 1.5999999999999996,-1.2 1.5999999999999996,-0.6 1.3999999999999995,-0.6" data-type="line" data-label="" points="59.38834391229081,313.5695326024235 46.462781304096936,313.5695326024235 46.462781304096936,352.34622042700516 253.27178303519906,352.34622042700516 253.27178303519906,313.5695326024235 240.34622042700516,313.5695326024235" fill="none" stroke="purple" stroke-width="1px"/></g><g><polyline data-points="2.8699999999999997,-2.3 2.8699999999999997,-2.5 6.700000000000001,-2.5 6.700000000000001,-1.4999999999999991" data-type="line" data-label="" points="335.3491055972303,423.43681477207156 335.3491055972303,436.36237738026546 582.8736295441432,436.36237738026546 582.8736295441432,371.73456433929596" fill="none" stroke="purple" stroke-width="1px"/></g><g><polyline data-points="-1.4,0.6 -1.501,0.6 -1.501,1.001" data-type="line" data-label="" points="59.38834391229081,236.01615695326024 52.8609347951529,236.01615695326024 52.8609347951529,210.1004039238315" fill="none" stroke="purple" stroke-width="1px"/></g><g><polyline data-points="1.4,0.6 1.501,0.6 1.501,1.001" data-type="line" data-label="" points="240.34622042700522,236.01615695326024 246.8736295441431,236.01615695326024 246.8736295441431,210.1004039238315" fill="none" stroke="purple" stroke-width="1px"/></g><g><rect data-type="rect" data-label="schematic_component_0" data-x="0" data-y="0" x="59.38834391229079" y="210.16503173687244" width="180.95787651471443" height="129.25562608193889" fill="hsl(24, 100%, 50%, 0.8)" stroke="black" stroke-width="0.015473214285714283"/></g><g><rect data-type="rect" data-label="schematic_component_1" data-x="4.785" data-y="-0.3999999999999999" x="394.48355452971737" y="242.47893825735713" width="129.25562608193883" height="116.33006347374496" fill="hsl(24, 100%, 50%, 0.8)" stroke="black" stroke-width="0.015473214285714283"/></g><g><rect data-type="rect" data-label="schematic_component_2" data-x="6.7" data-y="-0.9499999999999993" x="565.7472590882863" y="300.64396999422956" width="34.25274091171377" height="71.09059434506634" fill="hsl(24, 100%, 50%, 0.8)" stroke="black" stroke-width="0.015473214285714283"/></g><g><rect data-type="rect" data-label="schematic_component_3" data-x="2.8699999999999997" data-y="-1.75" x="318.2227351413734" y="352.34622042700516" width="34.25274091171383" height="71.09059434506639" fill="hsl(24, 100%, 50%, 0.8)" stroke="black" stroke-width="0.015473214285714283"/></g><g><rect data-type="rect" data-label="schematic_component_4" data-x="2.9752723250000006" data-y="0.050000000000000266" x="331.8297754183498" y="236.01615695326018" width="20.64570063473741" height="71.09059434506636" fill="hsl(24, 100%, 50%, 0.8)" stroke="black" stroke-width="0.015473214285714283"/></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="6.7,-0.39999999999999925 5.785,-0.3999999999999999" data-type="line" data-label="" points="582.8736295441432,300.6439699942296 523.7391806116561,300.6439699942296" fill="none" stroke="hsl(176, 100%, 50%, 0.8)" stroke-width="1px"/></g><g><polyline data-points="2.8699999999999997,-1.2 3.785,-0.29999999999999993" data-type="line" data-label="" points="335.3491055972303,352.34622042700516 394.4835545297173,294.18118869013273" fill="none" stroke="hsl(8, 100%, 50%, 0.8)" stroke-width="1px"/></g><g><polyline data-points="2.9752723250000006,-0.4999999999999998 3.785,-0.4999999999999999" data-type="line" data-label="" points="342.1526257357185,307.10675129832657 394.4835545297173,307.10675129832657" fill="none" stroke="hsl(272, 100%, 50%, 0.8)" stroke-width="1px"/></g><g><polyline data-points="-1.4,-0.6 1.4,-0.6" data-type="line" data-label="" points="59.38834391229081,313.5695326024235 240.34622042700522,313.5695326024235" fill="none" stroke="hsl(157, 100%, 50%, 0.8)" stroke-width="1px" stroke-dasharray="4 2"/></g><g><polyline data-points="-1.4,-0.6 4.785,-1.2999999999999998" data-type="line" data-label="" points="59.38834391229081,313.5695326024235 459.11136757068675,358.8090017311021" fill="none" stroke="hsl(157, 100%, 50%, 0.8)" stroke-width="1px" stroke-dasharray="4 2"/></g><g><polyline data-points="-1.4,-0.6 6.7,-1.4999999999999993" data-type="line" data-label="" points="59.38834391229081,313.5695326024235 582.8736295441432,371.73456433929596" fill="none" stroke="hsl(157, 100%, 50%, 0.8)" stroke-width="1px" stroke-dasharray="4 2"/></g><g><polyline data-points="-1.4,-0.6 2.8699999999999997,-2.3" data-type="line" data-label="" points="59.38834391229081,313.5695326024235 335.3491055972303,423.43681477207156" fill="none" stroke="hsl(157, 100%, 50%, 0.8)" stroke-width="1px" stroke-dasharray="4 2"/></g><g><polyline data-points="1.4,-0.6 4.785,-1.2999999999999998" data-type="line" data-label="" points="240.34622042700522,313.5695326024235 459.11136757068675,358.8090017311021" fill="none" stroke="hsl(157, 100%, 50%, 0.8)" stroke-width="1px" stroke-dasharray="4 2"/></g><g><polyline data-points="1.4,-0.6 6.7,-1.4999999999999993" data-type="line" data-label="" points="240.34622042700522,313.5695326024235 582.8736295441432,371.73456433929596" fill="none" stroke="hsl(157, 100%, 50%, 0.8)" stroke-width="1px" stroke-dasharray="4 2"/></g><g><polyline data-points="1.4,-0.6 2.8699999999999997,-2.3" data-type="line" data-label="" points="240.34622042700522,313.5695326024235 335.3491055972303,423.43681477207156" fill="none" stroke="hsl(157, 100%, 50%, 0.8)" stroke-width="1px" stroke-dasharray="4 2"/></g><g><polyline data-points="4.785,-1.2999999999999998 6.7,-1.4999999999999993" data-type="line" data-label="" points="459.11136757068675,358.8090017311021 582.8736295441432,371.73456433929596" fill="none" stroke="hsl(157, 100%, 50%, 0.8)" stroke-width="1px" stroke-dasharray="4 2"/></g><g><polyline data-points="4.785,-1.2999999999999998 2.8699999999999997,-2.3" data-type="line" data-label="" points="459.11136757068675,358.8090017311021 335.3491055972303,423.43681477207156" fill="none" stroke="hsl(157, 100%, 50%, 0.8)" stroke-width="1px" stroke-dasharray="4 2"/></g><g><polyline data-points="6.7,-1.4999999999999993 2.8699999999999997,-2.3" data-type="line" data-label="" points="582.8736295441432,371.73456433929596 335.3491055972303,423.43681477207156" fill="none" stroke="hsl(157, 100%, 50%, 0.8)" stroke-width="1px" stroke-dasharray="4 2"/></g><g><polyline data-points="-1.4,0.6 3.785,-0.29999999999999993" data-type="line" data-label="" points="59.38834391229081,236.01615695326024 394.4835545297173,294.18118869013273" fill="none" stroke="hsl(27, 100%, 50%, 0.8)" stroke-width="1px" stroke-dasharray="4 2"/></g><g><polyline data-points="-1.4,0.6 2.8699999999999997,-1.2" data-type="line" data-label="" points="59.38834391229081,236.01615695326024 335.3491055972303,352.34622042700516" fill="none" stroke="hsl(27, 100%, 50%, 0.8)" stroke-width="1px" stroke-dasharray="4 2"/></g><g><polyline data-points="-1.4,0.6 2.9752723250000006,0.6000000000000003" data-type="line" data-label="" points="59.38834391229081,236.01615695326024 342.1526257357185,236.0161569532602" fill="none" stroke="hsl(27, 100%, 50%, 0.8)" stroke-width="1px" stroke-dasharray="4 2"/></g><g><polyline data-points="3.785,-0.29999999999999993 2.8699999999999997,-1.2" data-type="line" data-label="" points="394.4835545297173,294.18118869013273 335.3491055972303,352.34622042700516" fill="none" stroke="hsl(27, 100%, 50%, 0.8)" stroke-width="1px" stroke-dasharray="4 2"/></g><g><polyline data-points="3.785,-0.29999999999999993 2.9752723250000006,0.6000000000000003" data-type="line" data-label="" points="394.4835545297173,294.18118869013273 342.1526257357185,236.0161569532602" fill="none" stroke="hsl(27, 100%, 50%, 0.8)" stroke-width="1px" stroke-dasharray="4 2"/></g><g><polyline data-points="2.8699999999999997,-1.2 2.9752723250000006,0.6000000000000003" data-type="line" data-label="" points="335.3491055972303,352.34622042700516 342.1526257357185,236.0161569532602" fill="none" stroke="hsl(27, 100%, 50%, 0.8)" stroke-width="1px" stroke-dasharray="4 2"/></g><g><polyline data-points="1.4,0.6 5.785,-0.3999999999999999" data-type="line" data-label="" points="240.34622042700522,236.01615695326024 523.7391806116561,300.6439699942296" fill="none" stroke="hsl(64, 100%, 50%, 0.8)" stroke-width="1px" stroke-dasharray="4 2"/></g><g><polyline data-points="1.4,0.6 6.7,-0.39999999999999925" data-type="line" data-label="" points="240.34622042700522,236.01615695326024 582.8736295441432,300.6439699942296" fill="none" stroke="hsl(64, 100%, 50%, 0.8)" stroke-width="1px" stroke-dasharray="4 2"/></g><g><polyline data-points="5.785,-0.3999999999999999 6.7,-0.39999999999999925" data-type="line" data-label="" points="523.7391806116561,300.6439699942296 582.8736295441432,300.6439699942296" fill="none" stroke="hsl(64, 100%, 50%, 0.8)" stroke-width="1px" stroke-dasharray="4 2"/></g><g><polyline data-points="3.785,-0.4999999999999999 2.9752723250000006,-0.4999999999999998" data-type="line" data-label="" points="394.4835545297173,307.10675129832657 342.1526257357185,307.10675129832657" fill="none" stroke="hsl(345, 100%, 50%, 0.8)" stroke-width="1px" stroke-dasharray="4 2"/></g><g><polyline data-points="5.785,-0.3999999999999999 6.2425,-0.3999999999999999 6.2425,-0.19999999999999923 6.7,-0.19999999999999923 6.7,-0.39999999999999925" data-type="line" data-label="" points="523.7391806116561,300.6439699942296 553.3064050778996,300.6439699942296 553.3064050778996,287.7184073860357 582.8736295441432,287.7184073860357 582.8736295441432,300.6439699942296" fill="none" stroke="purple" stroke-width="1px"/></g><g><polyline data-points="3.785,-0.30000000000000004 3.3801361625000004,-0.30000000000000004 3.3801361625000004,-0.7999999999999997 2.8699999999999997,-0.7999999999999997 2.8699999999999997,-1.2" data-type="line" data-label="" points="394.4835545297173,294.18118869013273 368.3180901327179,294.18118869013273 368.3180901327179,326.4950952106174 335.3491055972303,326.4950952106174 335.3491055972303,352.34622042700516" fill="none" stroke="purple" stroke-width="1px"/></g><g><polyline data-points="2.9752723250000006,0.6000000000000003 2.9752723250000006,0.8000000000000005 3.3801361625000004,0.8000000000000005 3.3801361625000004,-0.30000000000000004 3.785,-0.30000000000000004" data-type="line" data-label="" points="342.1526257357185,236.0161569532602 342.1526257357185,223.0905943450663 368.3180901327179,223.0905943450663 368.3180901327179,294.18118869013273 394.4835545297173,294.18118869013273" fill="none" stroke="purple" stroke-width="1px"/></g><g><polyline data-points="2.9752723250000006,-0.4999999999999998 2.9752723250000006,-0.6 3.585,-0.6 3.585,-0.4999999999999998 3.785,-0.4999999999999998" data-type="line" data-label="" points="342.1526257357185,307.10675129832657 342.1526257357185,313.5695326024235 381.5579919215234,313.5695326024235 381.5579919215234,307.10675129832657 394.4835545297173,307.10675129832657" fill="none" stroke="purple" stroke-width="1px"/></g><g><polyline data-points="4.785,-1.2999999999999998 4.785,-1.6999999999999993 6.7,-1.6999999999999993 6.7,-1.4999999999999991" data-type="line" data-label="" points="459.11136757068675,358.8090017311021 459.11136757068675,384.66012694748986 582.8736295441432,384.66012694748986 582.8736295441432,371.73456433929596" fill="none" stroke="purple" stroke-width="1px"/></g><g><polyline data-points="-1.4,-0.6 -1.5999999999999999,-0.6 -1.5999999999999999,-1.2 1.5999999999999996,-1.2 1.5999999999999996,-0.6 1.3999999999999995,-0.6" data-type="line" data-label="" points="59.38834391229081,313.5695326024235 46.462781304096936,313.5695326024235 46.462781304096936,352.34622042700516 253.27178303519906,352.34622042700516 253.27178303519906,313.5695326024235 240.34622042700516,313.5695326024235" fill="none" stroke="purple" stroke-width="1px"/></g><g><polyline data-points="2.8699999999999997,-2.3 2.8699999999999997,-2.5 6.700000000000001,-2.5 6.700000000000001,-1.4999999999999991" data-type="line" data-label="" points="335.3491055972303,423.43681477207156 335.3491055972303,436.36237738026546 582.8736295441432,436.36237738026546 582.8736295441432,371.73456433929596" fill="none" stroke="purple" stroke-width="1px"/></g><g><polyline data-points="-1.4,0.6 -1.501,0.6 -1.501,1.001" data-type="line" data-label="" points="59.38834391229081,236.01615695326024 52.8609347951529,236.01615695326024 52.8609347951529,210.1004039238315" fill="none" stroke="purple" stroke-width="1px"/></g><g><polyline data-points="1.4,0.6 1.501,0.6 1.501,1.001" data-type="line" data-label="" points="240.34622042700522,236.01615695326024 246.8736295441431,236.01615695326024 246.8736295441431,210.1004039238315" fill="none" stroke="purple" stroke-width="1px"/></g><g><rect data-type="rect" data-label="schematic_component_0" data-x="0" data-y="0" x="59.38834391229079" y="210.16503173687244" width="180.95787651471443" height="129.25562608193889" fill="hsl(24, 100%, 50%, 0.8)" stroke="black" stroke-width="0.015473214285714283"/></g><g><rect data-type="rect" data-label="schematic_component_1" data-x="4.785" data-y="-0.3999999999999999" x="394.48355452971737" y="242.47893825735713" width="129.25562608193883" height="116.33006347374496" fill="hsl(24, 100%, 50%, 0.8)" stroke="black" stroke-width="0.015473214285714283"/></g><g><rect data-type="rect" data-label="schematic_component_2" data-x="6.7" data-y="-0.9499999999999993" x="565.7472590882863" y="300.64396999422956" width="34.25274091171377" height="71.09059434506634" fill="hsl(24, 100%, 50%, 0.8)" stroke="black" stroke-width="0.015473214285714283"/></g><g><rect data-type="rect" data-label="schematic_component_3" data-x="2.8699999999999997" data-y="-1.75" x="318.2227351413734" y="352.34622042700516" width="34.25274091171383" height="71.09059434506639" fill="hsl(24, 100%, 50%, 0.8)" stroke="black" stroke-width="0.015473214285714283"/></g><g><rect data-type="rect" data-label="schematic_component_4" data-x="2.9752723250000006" data-y="0.050000000000000266" x="331.8297754183498" y="236.01615695326018" width="20.64570063473741" height="71.09059434506636" fill="hsl(24, 100%, 50%, 0.8)" stroke="black" stroke-width="0.015473214285714283"/></g><g><rect data-type="rect" data-label="netId: GND
|
|
2
4
|
globalConnNetId: connectivity_net3" data-x="-1.5999999999999999" data-y="-1.3499999999999999" x="39.999999999999986" y="352.34622042700516" width="12.9255626081939" height="19.38834391229085" fill="#00000066" stroke="#000000" stroke-width="0.015473214285714283"/></g><g><rect data-type="rect" data-label="netId: GND
|
|
3
5
|
globalConnNetId: connectivity_net3" data-x="2.8699999999999997" data-y="-2.65" x="328.8863242931333" y="436.36237738026546" width="12.9255626081939" height="19.388343912290793" fill="#00000066" stroke="#000000" stroke-width="0.015473214285714283"/></g><g><rect data-type="rect" data-label="netId: VIN
|
|
4
6
|
globalConnNetId: connectivity_net1" data-x="2.9752723250000006" data-y="0.9500000000000005" x="335.68984443162157" y="203.7022504327755" width="12.9255626081939" height="19.38834391229082" fill="#ef444466" stroke="#ef4444" stroke-width="0.015473214285714283"/></g><g><rect data-type="rect" data-label="netId: VIN
|
|
@@ -36,7 +38,7 @@ orientation: x-" data-x="2.9752723250000006" data-y="-0.6" cx="342.1526257357185
|
|
|
36
38
|
const h = svg.getElementById('crosshair-h');
|
|
37
39
|
const v = svg.getElementById('crosshair-v');
|
|
38
40
|
const coords = svg.getElementById('coordinates');
|
|
39
|
-
|
|
41
|
+
|
|
40
42
|
crosshair.style.display = 'block';
|
|
41
43
|
h.setAttribute('x1', '0');
|
|
42
44
|
h.setAttribute('x2', '640');
|
|
@@ -55,13 +57,13 @@ orientation: x-" data-x="2.9752723250000006" data-y="-0.6" cx="342.1526257357185
|
|
|
55
57
|
// y' = (y - ty) / sy
|
|
56
58
|
const sx = matrix.a;
|
|
57
59
|
const sy = matrix.d;
|
|
58
|
-
const tx = matrix.e;
|
|
60
|
+
const tx = matrix.e;
|
|
59
61
|
const ty = matrix.f;
|
|
60
62
|
const realPoint = {
|
|
61
63
|
x: (x - tx) / sx,
|
|
62
64
|
y: (y - ty) / sy // Flip y back since we used negative scale
|
|
63
65
|
}
|
|
64
|
-
|
|
66
|
+
|
|
65
67
|
coords.textContent = `(${realPoint.x.toFixed(2)}, ${realPoint.y.toFixed(2)})`;
|
|
66
68
|
coords.setAttribute('x', (x + 5).toString());
|
|
67
69
|
coords.setAttribute('y', (y - 5).toString());
|
|
@@ -69,4 +71,69 @@ orientation: x-" data-x="2.9752723250000006" data-y="-0.6" cx="342.1526257357185
|
|
|
69
71
|
document.currentScript.parentElement.addEventListener('mouseleave', () => {
|
|
70
72
|
document.currentScript.parentElement.getElementById('crosshair').style.display = 'none';
|
|
71
73
|
});
|
|
72
|
-
]]></script
|
|
74
|
+
]]></script>
|
|
75
|
+
</g>
|
|
76
|
+
<g transform="translate(1216, 200)">
|
|
77
|
+
<style>
|
|
78
|
+
.boundary { fill: rgb(245, 241, 237); }
|
|
79
|
+
.schematic-boundary { fill: none; stroke: #fff; }
|
|
80
|
+
.component { fill: none; stroke: rgb(132, 0, 0); }
|
|
81
|
+
.chip { fill: rgb(255, 255, 194); stroke: rgb(132, 0, 0); }
|
|
82
|
+
.component-pin { fill: none; stroke: rgb(132, 0, 0); }
|
|
83
|
+
.text { font-family: sans-serif; fill: rgb(0, 150, 0); }
|
|
84
|
+
.pin-number { fill: rgb(169, 0, 0); }
|
|
85
|
+
.port-label { fill: rgb(0, 100, 100); }
|
|
86
|
+
.component-name { fill: rgb(0, 100, 100); }
|
|
87
|
+
|
|
88
|
+
</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 937.1149144252765 365.87579462106 L 990.8068459656033 365.87579462106 L 990.8068459656033 342.4039119804799 L 1044.49877750593 342.4039119804799 L 1044.49877750593 365.8757946210599" class="trace-invisible-hover-outline sch-trace-hitbox" stroke="rgb(0, 150, 0)" fill="none" stroke-width="18.777506112464px" stroke-linecap="round" opacity="0" stroke-linejoin="round"/><path class="sch-trace-path" d="M 937.1149144252765 365.87579462106 L 990.8068459656033 365.87579462106 L 990.8068459656033 342.4039119804799 L 1044.49877750593 342.4039119804799 L 1044.49877750593 365.8757946210599" stroke="rgb(0, 150, 0)" fill="none" stroke-width="2.347188264058px" 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 702.3960880194766 354.13985330077 L 654.8815056234023 354.13985330077 L 654.8815056234023 412.81955990221996 L 595.012224938823 412.81955990221996 L 595.012224938823 459.76332518338" class="trace-invisible-hover-outline sch-trace-hitbox" stroke="rgb(0, 150, 0)" fill="none" stroke-width="18.777506112464px" stroke-linecap="round" opacity="0" stroke-linejoin="round"/><path class="sch-trace-path" d="M 702.3960880194766 354.13985330077 L 654.8815056234023 354.13985330077 L 654.8815056234023 412.81955990221996 L 595.012224938823 412.81955990221996 L 595.012224938823 459.76332518338" stroke="rgb(0, 150, 0)" fill="none" stroke-width="2.347188264058px" 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 607.366923227328 248.51638141815997 L 607.366923227328 225.04449877757995 L 654.8815056234023 225.04449877757995 L 654.8815056234023 354.13985330077 L 702.3960880194766 354.13985330077" class="trace-invisible-hover-outline sch-trace-hitbox" stroke="rgb(0, 150, 0)" fill="none" stroke-width="18.777506112464px" stroke-linecap="round" opacity="0" stroke-linejoin="round"/><path class="sch-trace-path" d="M 607.366923227328 248.51638141815997 L 607.366923227328 225.04449877757995 L 654.8815056234023 225.04449877757995 L 654.8815056234023 354.13985330077 L 702.3960880194766 354.13985330077" stroke="rgb(0, 150, 0)" fill="none" stroke-width="2.347188264058px" 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 607.366923227328 377.61173594135 L 607.366923227328 389.34767726164 L 678.9242053788964 389.34767726164 L 678.9242053788964 377.61173594135 L 702.3960880194766 377.61173594135" class="trace-invisible-hover-outline sch-trace-hitbox" stroke="rgb(0, 150, 0)" fill="none" stroke-width="18.777506112464px" stroke-linecap="round" opacity="0" stroke-linejoin="round"/><path class="sch-trace-path" d="M 607.366923227328 377.61173594135 L 607.366923227328 389.34767726164 L 678.9242053788964 389.34767726164 L 678.9242053788964 377.61173594135 L 702.3960880194766 377.61173594135" stroke="rgb(0, 150, 0)" fill="none" stroke-width="2.347188264058px" 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 819.7555012223766 471.49926650367 L 819.7555012223766 518.4430317848299 L 1044.49877750593 518.4430317848299 L 1044.49877750593 494.9711491442499" class="trace-invisible-hover-outline sch-trace-hitbox" stroke="rgb(0, 150, 0)" fill="none" stroke-width="18.777506112464px" stroke-linecap="round" opacity="0" stroke-linejoin="round"/><path class="sch-trace-path" d="M 819.7555012223766 471.49926650367 L 819.7555012223766 518.4430317848299 L 1044.49877750593 518.4430317848299 L 1044.49877750593 494.9711491442499" stroke="rgb(0, 150, 0)" fill="none" stroke-width="2.347188264058px" 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 93.88753056243999 389.34767726164 L 70.41564792186 389.34767726164 L 70.41564792186 459.76332518338 L 445.96577017114 459.76332518338 L 445.96577017114 389.34767726164 L 422.49388753055996 389.34767726164" class="trace-invisible-hover-outline sch-trace-hitbox" stroke="rgb(0, 150, 0)" fill="none" stroke-width="18.777506112464px" stroke-linecap="round" opacity="0" stroke-linejoin="round"/><path class="sch-trace-path" d="M 93.88753056243999 389.34767726164 L 70.41564792186 389.34767726164 L 70.41564792186 459.76332518338 L 445.96577017114 459.76332518338 L 445.96577017114 389.34767726164 L 422.49388753055996 389.34767726164" stroke="rgb(0, 150, 0)" fill="none" stroke-width="2.347188264058px" 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 595.012224938823 588.85867970657 L 595.012224938823 612.33056234715 L 1044.49877750593 612.33056234715 L 1044.49877750593 494.9711491442499" class="trace-invisible-hover-outline sch-trace-hitbox" stroke="rgb(0, 150, 0)" fill="none" stroke-width="18.777506112464px" stroke-linecap="round" opacity="0" stroke-linejoin="round"/><path class="sch-trace-path" d="M 595.012224938823 588.85867970657 L 595.012224938823 612.33056234715 L 1044.49877750593 612.33056234715 L 1044.49877750593 494.9711491442499" stroke="rgb(0, 150, 0)" fill="none" stroke-width="2.347188264058px" 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 93.88753056243999 248.51638141816 L 82.0342298289471 248.51638141816 L 82.0342298289471 201.4552567237971" class="trace-invisible-hover-outline sch-trace-hitbox" stroke="rgb(0, 150, 0)" fill="none" stroke-width="18.777506112464px" stroke-linecap="round" opacity="0" stroke-linejoin="round"/><path class="sch-trace-path" d="M 93.88753056243999 248.51638141816 L 82.0342298289471 248.51638141816 L 82.0342298289471 201.4552567237971" stroke="rgb(0, 150, 0)" fill="none" stroke-width="2.347188264058px" 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 422.49388753055996 248.51638141816 L 434.3471882640529 248.51638141816 L 434.3471882640529 201.4552567237971" class="trace-invisible-hover-outline sch-trace-hitbox" stroke="rgb(0, 150, 0)" fill="none" stroke-width="18.777506112464px" stroke-linecap="round" opacity="0" stroke-linejoin="round"/><path class="sch-trace-path" d="M 422.49388753055996 248.51638141816 L 434.3471882640529 248.51638141816 L 434.3471882640529 201.4552567237971" stroke="rgb(0, 150, 0)" fill="none" stroke-width="2.347188264058px" 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="702.3960880194766" cy="354.13985330077" r="3.5207823960869997" class="trace-junction sch-trace-junction" fill="rgb(0, 150, 0)"/><circle cx="654.8815056234023" cy="354.13985330077" r="3.5207823960869997" 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"><circle cx="1044.49877750593" cy="494.9711491442499" r="3.5207823960869997" 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_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="140.8312958436" y="201.572616137" width="234.71882640579997" height="234.71882640579997" stroke-width="2.347188264058px" fill="rgb(255, 255, 194)" stroke="rgb(132, 0, 0)"/><rect class="component-overlay sch-component-overlay" x="140.8312958436" y="201.572616137" width="234.71882640579997" height="234.71882640579997" fill="transparent"/><text class="sch-text" x="258.1907090465" y="318.9320293399" fill="#0f172a" text-anchor="middle" dominant-baseline="middle" font-family="sans-serif" font-size="21.124694376522px" transform="rotate(0, 258.1907090465, 318.9320293399)">CORNERS</text><line class="component-pin sch-component-pin sch-port-line" x1="140.8312958436" y1="389.34767726164" x2="93.88753056243999" y2="389.34767726164" stroke-width="2.347188264058px"/><g class="sch-port" data-schematic-port-id="source_port_0_0__stack1"><rect x="91.54034229838199" y="387.000488997582" width="4.694376528116" height="4.694376528116" opacity="0"/></g><text class="pin-number sch-pin-number" x="117.35941320301998" y="387.000488997582" style="font-family: sans-serif;" fill="rgb(169, 0, 0)" text-anchor="middle" dominant-baseline="auto" font-size="17.603911980435px" transform="">1</text><line class="component-pin sch-component-pin sch-port-line" x1="140.8312958436" y1="248.51638141816" x2="93.88753056243999" y2="248.51638141816" stroke-width="2.347188264058px"/><g class="sch-port" data-schematic-port-id="source_port_0_1__stack1"><rect x="91.54034229838199" y="246.169193154102" width="4.694376528116" height="4.694376528116" opacity="0"/></g><text class="pin-number sch-pin-number" x="117.35941320301998" y="246.169193154102" style="font-family: sans-serif;" fill="rgb(169, 0, 0)" text-anchor="middle" dominant-baseline="auto" font-size="17.603911980435px" transform="">2</text><line class="component-pin sch-component-pin sch-port-line" x1="375.5501222494" y1="248.51638141816" x2="422.49388753055996" y2="248.51638141816" stroke-width="2.347188264058px"/><g class="sch-port" data-schematic-port-id="source_port_0_2__stack1"><rect x="420.14669926650197" y="246.169193154102" width="4.694376528116" height="4.694376528116" opacity="0"/></g><text class="pin-number sch-pin-number" x="399.02200488998" y="246.169193154102" style="font-family: sans-serif;" fill="rgb(169, 0, 0)" text-anchor="middle" dominant-baseline="auto" font-size="17.603911980435px" transform="">3</text><line class="component-pin sch-component-pin sch-port-line" x1="375.5501222494" y1="389.34767726164" x2="422.49388753055996" y2="389.34767726164" stroke-width="2.347188264058px"/><g class="sch-port" data-schematic-port-id="source_port_0_3__stack1"><rect x="420.14669926650197" y="387.000488997582" width="4.694376528116" height="4.694376528116" opacity="0"/></g><text class="pin-number sch-pin-number" x="399.02200488998" y="387.000488997582" style="font-family: sans-serif;" fill="rgb(169, 0, 0)" text-anchor="middle" dominant-baseline="auto" font-size="17.603911980435px" transform="">4</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="749.3398533006366" y="307.19608801961" width="140.8312958434799" height="117.35941320289999" stroke-width="2.347188264058px" fill="rgb(255, 255, 194)" stroke="rgb(132, 0, 0)"/><rect class="component-overlay sch-component-overlay" x="749.3398533006366" y="307.19608801961" width="140.8312958434799" height="117.35941320289999" fill="transparent"/><text class="sch-text" x="819.7555012223766" y="365.87579462106" fill="#0f172a" text-anchor="middle" dominant-baseline="middle" font-family="sans-serif" font-size="21.124694376522px" transform="rotate(0, 819.7555012223766, 365.87579462106)">U100</text><line class="component-pin sch-component-pin sch-port-line" x1="749.3398533006366" y1="354.13985330076997" x2="702.3960880194766" y2="354.13985330076997" stroke-width="2.347188264058px"/><g class="sch-port" data-schematic-port-id="source_port_1_0__stack1"><rect x="700.0488997554186" y="351.792665036712" width="4.694376528116" height="4.694376528116" opacity="0"/></g><text class="pin-number sch-pin-number" x="725.8679706600565" y="351.792665036712" style="font-family: sans-serif;" fill="rgb(169, 0, 0)" text-anchor="middle" dominant-baseline="auto" font-size="17.603911980435px" transform="">1</text><line class="component-pin sch-component-pin sch-port-line" x1="819.7555012223766" y1="424.55550122251" x2="819.7555012223766" y2="471.49926650367" stroke-width="2.347188264058px"/><g class="sch-port" data-schematic-port-id="source_port_1_1__stack1"><rect x="817.4083129583186" y="469.152078239612" width="4.694376528116" height="4.694376528116" opacity="0"/></g><text class="pin-number sch-pin-number" x="817.4083129583184" y="448.02738386309" style="font-family: sans-serif;" fill="rgb(169, 0, 0)" text-anchor="middle" dominant-baseline="auto" font-size="17.603911980435px" transform="rotate(-90 817.4083129583184 448.02738386309)">2</text><line class="component-pin sch-component-pin sch-port-line" x1="749.3398533006366" y1="377.61173594135" x2="702.3960880194766" y2="377.61173594135" stroke-width="2.347188264058px"/><g class="sch-port" data-schematic-port-id="source_port_1_2__stack1"><rect x="700.0488997554186" y="375.264547677292" width="4.694376528116" height="4.694376528116" opacity="0"/></g><text class="pin-number sch-pin-number" x="725.8679706600565" y="375.264547677292" style="font-family: sans-serif;" fill="rgb(169, 0, 0)" text-anchor="middle" dominant-baseline="auto" font-size="17.603911980435px" transform="">3</text><line class="component-pin sch-component-pin sch-port-line" x1="890.1711491441165" y1="365.87579462106" x2="937.1149144252765" y2="365.87579462106" stroke-width="2.347188264058px"/><g class="sch-port" data-schematic-port-id="source_port_1_3__stack1"><rect x="934.7677261612185" y="363.528606357002" width="4.694376528116" height="4.694376528116" opacity="0"/></g><text class="pin-number sch-pin-number" x="913.6430317846964" y="363.528606357002" style="font-family: sans-serif;" fill="rgb(169, 0, 0)" text-anchor="middle" dominant-baseline="auto" font-size="17.603911980435px" transform="">5</text></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="1010.0690464545953" y="365.87579462105987" width="68.85946210266957" height="129.09535452319005" fill="transparent"/><path class="sch-component-symbol-path" d="M 1044.49877750593 494.9711491442499 L 1044.49877750593 443.3330073349739" stroke="rgb(132, 0, 0)" fill="none" stroke-width="2.347188264058px" stroke-linecap="round"/><path class="sch-component-symbol-path" d="M 1044.49877750593 417.5139364303359 L 1044.49877750593 365.87579462105987" stroke="rgb(132, 0, 0)" fill="none" stroke-width="2.347188264058px" stroke-linecap="round"/><path class="sch-component-symbol-path" d="M 1078.9285085572649 443.3330073349739 L 1010.0690464545953 443.3330073349739" stroke="rgb(132, 0, 0)" fill="none" stroke-width="2.347188264058px" stroke-linecap="round"/><path class="sch-component-symbol-path" d="M 1078.9285085572649 417.5139364303359 L 1010.0690464545953 417.5139364303359" stroke="rgb(132, 0, 0)" fill="none" stroke-width="2.347188264058px" stroke-linecap="round"/><text class="sch-component-name sch-component-text" x="1069.2420537895416" y="387.3916870415916" stroke="rgb(245, 241, 237)" stroke-width="2.347188264058px" paint-order="stroke" fill="rgb(15, 15, 15)" font-family="sans-serif" text-anchor="start" dominant-baseline="ideographic" font-size="21.124694376522px">C101</text><text class="sch-component-text" x="1069.2420537895416" y="473.4552567237182" fill="rgb(15, 15, 15)" font-family="sans-serif" text-anchor="start" dominant-baseline="hanging" font-size="21.124694376522px"></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="560.5824938874882" y="459.76332518337995" width="68.85946210266957" height="129.09535452319005" fill="transparent"/><path class="sch-component-symbol-path" d="M 595.012224938823 588.85867970657 L 595.012224938823 537.220537897294" stroke="rgb(132, 0, 0)" fill="none" stroke-width="2.347188264058px" stroke-linecap="round"/><path class="sch-component-symbol-path" d="M 595.012224938823 511.40146699265597 L 595.012224938823 459.76332518337995" stroke="rgb(132, 0, 0)" fill="none" stroke-width="2.347188264058px" stroke-linecap="round"/><path class="sch-component-symbol-path" d="M 629.4419559901578 537.220537897294 L 560.5824938874882 537.220537897294" stroke="rgb(132, 0, 0)" fill="none" stroke-width="2.347188264058px" stroke-linecap="round"/><path class="sch-component-symbol-path" d="M 629.4419559901578 511.40146699265597 L 560.5824938874882 511.40146699265597" stroke="rgb(132, 0, 0)" fill="none" stroke-width="2.347188264058px" stroke-linecap="round"/><text class="sch-component-name sch-component-text" x="619.7555012224344" y="481.27921760391166" stroke="rgb(245, 241, 237)" stroke-width="2.347188264058px" paint-order="stroke" fill="rgb(15, 15, 15)" font-family="sans-serif" text-anchor="start" dominant-baseline="ideographic" font-size="21.124694376522px">C100</text><text class="sch-component-text" x="619.7555012224344" y="567.3427872860383" fill="rgb(15, 15, 15)" font-family="sans-serif" text-anchor="start" dominant-baseline="hanging" font-size="21.124694376522px"></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="590.1585124693868" y="248.51638141815997" width="34.416821515882475" height="129.09535452318997" fill="transparent"/><path class="sch-component-symbol-path" d="M 607.366923227328 248.51638141815997 L 607.366923227328 270.0365770171757" stroke="rgb(132, 0, 0)" fill="none" stroke-width="2.347188264058px" stroke-linecap="round"/><path class="sch-component-symbol-path" d="M 607.366923227328 356.0915403423342 L 607.366923227328 377.61173594134993" stroke="rgb(132, 0, 0)" fill="none" stroke-width="2.347188264058px" stroke-linecap="round"/><path class="sch-component-symbol-path" d="M 624.5753339852693 270.0365770171757 L 624.5753339852693 356.0915403423342 L 590.1585124693868 356.0915403423342 L 590.1585124693868 270.0365770171757 L 624.5753339852693 270.0365770171757" stroke="rgb(132, 0, 0)" fill="none" stroke-width="2.347188264058px" stroke-linecap="round"/><text class="sch-component-name sch-component-text" x="641.7923511001787" y="278.6386308069043" stroke="rgb(245, 241, 237)" stroke-width="2.347188264058px" paint-order="stroke" fill="rgb(15, 15, 15)" font-family="sans-serif" text-anchor="start" dominant-baseline="middle" font-size="21.124694376522px">R100</text><text class="sch-component-text" x="641.7923511001787" y="347.4894865526056" fill="rgb(15, 15, 15)" font-family="sans-serif" text-anchor="start" dominant-baseline="middle" font-size="21.124694376522px"></text></g><g class="schematic-port-hover sch-port-hover" data-schematic-port-id="source_port_0_0__stack1"><circle cx="93.88753056243999" cy="389.34767726164" r="4.694376528116" fill="red" opacity="0"/></g><g class="schematic-port-hover sch-port-hover" data-schematic-port-id="source_port_0_1__stack1"><circle cx="93.88753056243999" cy="248.51638141816" r="4.694376528116" fill="red" opacity="0"/></g><g class="schematic-port-hover sch-port-hover" data-schematic-port-id="source_port_0_2__stack1"><circle cx="422.49388753055996" cy="248.51638141816" r="4.694376528116" fill="red" opacity="0"/></g><g class="schematic-port-hover sch-port-hover" data-schematic-port-id="source_port_0_3__stack1"><circle cx="422.49388753055996" cy="389.34767726164" r="4.694376528116" fill="red" opacity="0"/></g><g class="schematic-port-hover sch-port-hover" data-schematic-port-id="source_port_1_0__stack1"><circle cx="702.3960880194766" cy="354.13985330076997" r="4.694376528116" fill="red" opacity="0"/></g><g class="schematic-port-hover sch-port-hover" data-schematic-port-id="source_port_1_1__stack1"><circle cx="819.7555012223766" cy="471.49926650367" r="4.694376528116" fill="red" opacity="0"/></g><g class="schematic-port-hover sch-port-hover" data-schematic-port-id="source_port_1_2__stack1"><circle cx="702.3960880194766" cy="377.61173594135" r="4.694376528116" fill="red" opacity="0"/></g><g class="schematic-port-hover sch-port-hover" data-schematic-port-id="source_port_1_3__stack1"><circle cx="937.1149144252765" cy="365.87579462106" r="4.694376528116" fill="red" opacity="0"/></g><g class="schematic-port-hover sch-port-hover" data-schematic-port-id="source_port_2_0__stack1"><circle cx="1044.49877750593" cy="395.2156479217849" r="4.694376528116" fill="red" opacity="0"/></g><g class="schematic-port-hover sch-port-hover" data-schematic-port-id="source_port_2_1__stack1"><circle cx="1044.49877750593" cy="524.311002444975" r="4.694376528116" fill="red" opacity="0"/></g><g class="schematic-port-hover sch-port-hover" data-schematic-port-id="source_port_3_0__stack1"><circle cx="595.012224938823" cy="489.103178484105" r="4.694376528116" fill="red" opacity="0"/></g><g class="schematic-port-hover sch-port-hover" data-schematic-port-id="source_port_3_1__stack1"><circle cx="595.012224938823" cy="618.198533007295" r="4.694376528116" fill="red" opacity="0"/></g><g class="schematic-port-hover sch-port-hover" data-schematic-port-id="source_port_4_0__stack1"><circle cx="607.366923227328" cy="277.856234718885" r="4.694376528116" fill="red" opacity="0"/></g><g class="schematic-port-hover sch-port-hover" data-schematic-port-id="source_port_4_1__stack1"><circle cx="607.366923227328" cy="406.951589242075" r="4.694376528116" 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="
|
|
89
|
+
M 70.41564792186,459.76332518338
|
|
90
|
+
L 82.15158924215,466.1007334963366
|
|
91
|
+
L 82.15158924215001,492.5613691931504
|
|
92
|
+
L 58.679706601570004,492.5613691931504
|
|
93
|
+
L 58.67970660157,466.1007334963366
|
|
94
|
+
Z
|
|
95
|
+
" fill="rgba(255, 255, 255, 0.6)" stroke="rgb(132, 0, 0)" stroke-width="2.347188264058px"/><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="70.41564792186" y="470.325672371641" fill="rgb(132, 0, 0)" text-anchor="start" dominant-baseline="central" font-family="sans-serif" font-variant-numeric="tabular-nums" font-size="21.124694376522px" transform="rotate(90 70.41564792186 470.325672371641)">X</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="
|
|
96
|
+
M 595.012224938823,612.33056234715
|
|
97
|
+
L 606.748166259113,618.6679706601067
|
|
98
|
+
L 606.748166259113,645.1286063569205
|
|
99
|
+
L 583.2762836185331,645.1286063569205
|
|
100
|
+
L 583.2762836185331,618.6679706601067
|
|
101
|
+
Z
|
|
102
|
+
" fill="rgba(255, 255, 255, 0.6)" stroke="rgb(132, 0, 0)" stroke-width="2.347188264058px"/><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="595.012224938823" y="622.892909535411" fill="rgb(132, 0, 0)" text-anchor="start" dominant-baseline="central" font-family="sans-serif" font-variant-numeric="tabular-nums" font-size="21.124694376522px" transform="rotate(90 595.012224938823 622.892909535411)">X</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="
|
|
103
|
+
M 607.366923227328,225.04449877757995
|
|
104
|
+
L 595.6309819070381,218.70709046462335
|
|
105
|
+
L 595.6309819070381,192.2464547678095
|
|
106
|
+
L 619.102864547618,192.2464547678095
|
|
107
|
+
L 619.102864547618,218.70709046462335
|
|
108
|
+
Z
|
|
109
|
+
" fill="rgba(255, 255, 255, 0.6)" stroke="rgb(132, 0, 0)" stroke-width="2.347188264058px"/><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="607.366923227328" y="214.48215158931896" fill="rgb(132, 0, 0)" text-anchor="start" dominant-baseline="central" font-family="sans-serif" font-variant-numeric="tabular-nums" font-size="21.124694376522px" transform="rotate(-90 607.366923227328 214.48215158931896)">X</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="
|
|
110
|
+
M 82.0342298289471,201.4552567237971
|
|
111
|
+
L 70.29828850865711,195.1178484108405
|
|
112
|
+
L 70.29828850865711,168.65721271402666
|
|
113
|
+
L 93.77017114923711,168.65721271402666
|
|
114
|
+
L 93.7701711492371,195.1178484108405
|
|
115
|
+
Z
|
|
116
|
+
" fill="rgba(255, 255, 255, 0.6)" stroke="rgb(132, 0, 0)" stroke-width="2.347188264058px"/><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="82.0342298289471" y="190.8929095355361" fill="rgb(132, 0, 0)" text-anchor="start" dominant-baseline="central" font-family="sans-serif" font-variant-numeric="tabular-nums" font-size="21.124694376522px" transform="rotate(-90 82.0342298289471 190.8929095355361)">X</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="
|
|
117
|
+
M 1044.49877750593,342.4039119804799
|
|
118
|
+
L 1032.76283618564,336.0665036675233
|
|
119
|
+
L 1032.76283618564,295.8200488998088
|
|
120
|
+
L 1056.2347188262202,295.8200488998088
|
|
121
|
+
L 1056.2347188262202,336.0665036675233
|
|
122
|
+
Z
|
|
123
|
+
" fill="rgba(255, 255, 255, 0.6)" stroke="rgb(132, 0, 0)" stroke-width="2.347188264058px"/><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="1044.49877750593" y="331.8415647922189" fill="rgb(132, 0, 0)" text-anchor="start" dominant-baseline="central" font-family="sans-serif" font-variant-numeric="tabular-nums" font-size="21.124694376522px" transform="rotate(-90 1044.49877750593 331.8415647922189)">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="
|
|
124
|
+
M 434.3471882640529,201.4552567237971
|
|
125
|
+
L 422.61124694376286,195.1178484108405
|
|
126
|
+
L 422.61124694376286,154.871393643126
|
|
127
|
+
L 446.0831295843429,154.871393643126
|
|
128
|
+
L 446.0831295843429,195.1178484108405
|
|
129
|
+
Z
|
|
130
|
+
" fill="rgba(255, 255, 255, 0.6)" stroke="rgb(132, 0, 0)" stroke-width="2.347188264058px"/><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="434.3471882640529" y="190.8929095355361" fill="rgb(132, 0, 0)" text-anchor="start" dominant-baseline="central" font-family="sans-serif" font-variant-numeric="tabular-nums" font-size="21.124694376522px" transform="rotate(-90 434.3471882640529 190.8929095355361)">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="
|
|
131
|
+
M 607.366923227328,389.34767726164
|
|
132
|
+
L 601.0295149143714,401.08361858193
|
|
133
|
+
L 533.2114220048556,401.08361858193
|
|
134
|
+
L 533.2114220048556,377.61173594135
|
|
135
|
+
L 601.0295149143714,377.61173594135
|
|
136
|
+
Z
|
|
137
|
+
" fill="rgba(255, 255, 255, 0.6)" stroke="rgb(132, 0, 0)" stroke-width="2.347188264058px"/><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="596.804576039067" y="389.34767726164" fill="rgb(132, 0, 0)" text-anchor="end" dominant-baseline="central" font-family="sans-serif" font-variant-numeric="tabular-nums" font-size="21.124694376522px" transform="">XXXX</text>
|
|
138
|
+
</g>
|
|
139
|
+
</svg>
|