@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="-4.005,0.54 -2.6500000000000004,1.1" data-type="line" data-label="" points="59.628455897300256,302.8492191804944 144.13503048068222,267.92399278441036" fill="none" stroke="hsl(168, 100%, 50%, 0.8)" stroke-width="1px"/></g><g><polyline data-points="-4.005,0.54 -2.6500000000000004,-1.1" data-type="line" data-label="" points="59.628455897300256,302.8492191804944 144.13503048068222,405.1302393404549" fill="none" stroke="hsl(128, 100%, 50%, 0.8)" stroke-width="1px"/></g><g><polyline data-points="-3.995,-0.54 2.6500000000000004,-1.1" data-type="line" data-label="" points="60.25212065437316,370.2050129443709 474.6773517293351,405.1302393404549" fill="none" stroke="hsl(128, 100%, 50%, 0.8)" stroke-width="1px"/></g><g><polyline data-points="-3.995,-0.54 2.6500000000000004,1.1" data-type="line" data-label="" points="60.25212065437316,370.2050129443709 474.6773517293351,267.92399278441036" fill="none" stroke="hsl(168, 100%, 50%, 0.8)" stroke-width="1px"/></g><g><polyline data-points="-0.04999999999999982,1.1 0.04999999999999982,1.1" data-type="line" data-label="" points="306.287867319644,267.92399278441036 312.52451489037327,267.92399278441036" fill="none" stroke="hsl(104, 100%, 50%, 0.8)" stroke-width="1px"/></g><g><polyline data-points="-0.04999999999999982,1.1 4,0.55" data-type="line" data-label="" points="306.287867319644,267.92399278441036 558.8720939341806,302.2255544234215" fill="none" stroke="hsl(200, 100%, 50%, 0.8)" stroke-width="1px"/></g><g><polyline data-points="0.04999999999999982,-1.1 -0.04999999999999982,-1.1" data-type="line" data-label="" points="312.52451489037327,405.1302393404549 306.287867319644,405.1302393404549" fill="none" stroke="hsl(96, 100%, 50%, 0.8)" stroke-width="1px"/></g><g><polyline data-points="0.04999999999999982,-1.1 4,-0.55" data-type="line" data-label="" points="312.52451489037327,405.1302393404549 558.8720939341806,370.8286777014438" fill="none" stroke="hsl(216, 100%, 50%, 0.8)" stroke-width="1px"/></g><g><polyline data-points="-4.005,0.54 -4.005,1.1 -2.6500000000000004,1.1" data-type="line" data-label="" points="59.628455897300256,302.8492191804944 59.628455897300256,267.92399278441036 144.13503048068222,267.92399278441036" fill="none" stroke="purple" stroke-width="1px"/></g><g><polyline data-points="-2.6500000000000004,-1.1 -2.8500000000000005,-1.1 -2.8500000000000005,1.1 -2.6500000000000004,1.1" data-type="line" data-label="" points="144.13503048068222,405.1302393404549 131.6617353392236,405.1302393404549 131.6617353392236,267.92399278441036 144.13503048068222,267.92399278441036" fill="none" stroke="purple" stroke-width="1px"/></g><g><polyline data-points="2.6500000000000004,1.1 2.8500000000000005,1.1 2.8500000000000005,-1.1 2.6500000000000004,-1.1" data-type="line" data-label="" points="474.6773517293351,267.92399278441036 487.1506468707937,267.92399278441036 487.1506468707937,405.1302393404549 474.6773517293351,405.1302393404549" fill="none" stroke="purple" stroke-width="1px"/></g><g><polyline data-points="-3.995,-0.54 -3.995,-1.6600000000000001 2.8500000000000005,-1.6600000000000001 2.8500000000000005,-1.1 2.6500000000000004,-1.1" data-type="line" data-label="" points="60.25212065437316,370.2050129443709 60.25212065437316,440.055465736539 487.1506468707937,440.055465736539 487.1506468707937,405.1302393404549 474.6773517293351,405.1302393404549" fill="none" stroke="purple" stroke-width="1px"/></g><g><polyline data-points="0.04999999999999982,1.1 -0.04999999999999982,1.1" data-type="line" data-label="" points="312.52451489037327,267.92399278441036 306.287867319644,267.92399278441036" fill="none" stroke="purple" stroke-width="1px"/></g><g><polyline data-points="4,0.55 4,2.19 0,2.19 0,1.1 0.04999999999999982,1.1" data-type="line" data-label="" points="558.8720939341806,302.2255544234215 558.8720939341806,199.944534263461 309.40619110500865,199.944534263461 309.40619110500865,267.92399278441036 312.52451489037327,267.92399278441036" fill="none" stroke="purple" stroke-width="1px"/></g><g><polyline data-points="-0.04999999999999982,-1.1 0.04999999999999982,-1.1" data-type="line" data-label="" points="306.287867319644,405.1302393404549 312.52451489037327,405.1302393404549" fill="none" stroke="purple" stroke-width="1px"/></g><g><polyline data-points="4,-0.55 4,-1.46 0,-1.46 0,-1.1 0.04999999999999982,-1.1" data-type="line" data-label="" points="558.8720939341806,370.8286777014438 558.8720939341806,427.5821705950804 309.40619110500865,427.5821705950804 309.40619110500865,405.1302393404549 312.52451489037327,405.1302393404549" fill="none" stroke="purple" stroke-width="1px"/></g><g><rect data-type="rect" data-label="schematic_component_0" data-x="-4" data-y="0" x="39.999999999999986" y="302.8492191804944" width="39.88057655167344" height="67.35579376387648" fill="hsl(24, 100%, 50%, 0.8)" stroke="black" stroke-width="0.016034255401785713"/></g><g><rect data-type="rect" data-label="schematic_component_1" data-x="-1.35" data-y="1.1" x="144.1350304806822" y="255.45069764295175" width="162.1528368389618" height="24.946590282917214" fill="hsl(24, 100%, 50%, 0.8)" stroke="black" stroke-width="0.016034255401785713"/></g><g><rect data-type="rect" data-label="schematic_component_2" data-x="1.35" data-y="-1.1" x="312.5245148903733" y="392.6569441989963" width="162.15283683896183" height="24.946590282917214" fill="hsl(24, 100%, 50%, 0.8)" stroke="black" stroke-width="0.016034255401785713"/></g><g><rect data-type="rect" data-label="schematic_component_3" data-x="1.35" data-y="1.1" x="312.5245148903733" y="255.45069764295175" width="162.15283683896183" height="24.946590282917214" fill="hsl(24, 100%, 50%, 0.8)" stroke="black" stroke-width="0.016034255401785713"/></g><g><rect data-type="rect" data-label="schematic_component_4" data-x="-1.35" data-y="-1.1" x="144.1350304806822" y="392.6569441989963" width="162.1528368389618" height="24.946590282917214" fill="hsl(24, 100%, 50%, 0.8)" stroke="black" stroke-width="0.016034255401785713"/></g><g><rect data-type="rect" data-label="schematic_component_5" data-x="4.2498638375" data-y="0" x="548.9104417715107" y="302.2255544234215" width="51.089558228489295" height="68.60312327802228" fill="hsl(24, 100%, 50%, 0.8)" stroke="black" stroke-width="0.016034255401785713"/></g><g><rect data-type="rect" data-label="D1" data-x="-2.13" data-y="1.415" x="165.33963222116185" y="240.48274347320142" width="22.451931254625492" height="15.591618926823287" fill="rgba(160, 0, 220, 0.14)" stroke="black" stroke-width="0.016034255401785713"/></g><g><rect data-type="rect" data-label="D2" data-x="0.57" data-y="-0.7850000000000001" x="333.7291166308529" y="377.68899002924604" width="22.451931254625492" height="15.59161892682323" fill="rgba(160, 0, 220, 0.14)" stroke="black" stroke-width="0.016034255401785713"/></g><g><rect data-type="rect" data-label="D3" data-x="0.57" data-y="1.415" x="333.7291166308529" y="240.48274347320142" width="22.451931254625492" height="15.591618926823287" fill="rgba(160, 0, 220, 0.14)" stroke="black" stroke-width="0.016034255401785713"/></g><g><rect data-type="rect" data-label="D4" data-x="-2.13" data-y="-0.7850000000000001" x="165.33963222116185" y="377.68899002924604" width="22.451931254625492" height="15.59161892682323" fill="rgba(160, 0, 220, 0.14)" stroke="black" stroke-width="0.016034255401785713"/></g><g><rect data-type="rect" data-label="netId: .V1 > .pin1 to .D4 > .CATHODE
|
|
2
4
|
globalConnNetId: connectivity_net0" data-x="-3.78" data-y="0.8200000000000001" x="59.628455897300256" y="279.1499584117231" width="28.064914068281837" height="12.473295141458607" fill="hsl(40, 100%, 50%, 0.35)" stroke="black" stroke-width="0.016034255401785713"/></g><g><rect data-type="rect" data-label="netId: .V1 > .pin2 to .D3 > .ANODE
|
|
3
5
|
globalConnNetId: connectivity_net1" data-x="2.8500000000000005" data-y="1.3250000000000002" x="480.9139993000644" y="239.85907871612852" width="12.473295141458607" height="28.064914068281865" fill="hsl(40, 100%, 50%, 0.35)" stroke="black" stroke-width="0.016034255401785713"/></g><g><rect data-type="rect" data-label="netId: .D1 > .CATHODE to .D3 > .CATHODE
|
|
4
6
|
globalConnNetId: connectivity_net2" data-x="4.225" data-y="1.37" x="558.8720939341806" y="244.84839677271196" width="28.064914068281723" height="12.473295141458578" fill="hsl(40, 100%, 50%, 0.35)" stroke="black" stroke-width="0.016034255401785713"/></g><g><circle data-type="point" data-label="V1.1
|
|
@@ -26,7 +28,7 @@ orientation: x+" data-x="4" data-y="1.37" cx="558.8720939341806" cy="251.0850443
|
|
|
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: x+" data-x="4" data-y="1.37" cx="558.8720939341806" cy="251.0850443
|
|
|
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: x+" data-x="4" data-y="1.37" cx="558.8720939341806" cy="251.0850443
|
|
|
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 96.37254358334008 360.07778493672 L 96.37254358334008 293.8364799428 L 256.6528440597 293.8364799428" class="trace-invisible-hover-outline sch-trace-hitbox" stroke="rgb(0, 150, 0)" fill="none" stroke-width="18.92608714112px" stroke-linecap="round" opacity="0" stroke-linejoin="round"/><path class="sch-trace-path" d="M 96.37254358334008 360.07778493672 L 96.37254358334008 293.8364799428 L 256.6528440597 293.8364799428" stroke="rgb(0, 150, 0)" fill="none" stroke-width="2.36576089264px" 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 256.6528440597 554.0701781332 L 232.99523513329996 554.0701781332 L 232.99523513329996 293.8364799428 L 256.6528440597 293.8364799428" class="trace-invisible-hover-outline sch-trace-hitbox" stroke="rgb(0, 150, 0)" fill="none" stroke-width="18.92608714112px" stroke-linecap="round" opacity="0" stroke-linejoin="round"/><path class="sch-trace-path" d="M 256.6528440597 554.0701781332 L 232.99523513329996 554.0701781332 L 232.99523513329996 293.8364799428 L 256.6528440597 293.8364799428" stroke="rgb(0, 150, 0)" fill="none" stroke-width="2.36576089264px" 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 883.5794806093 293.8364799428 L 907.2370895357001 293.8364799428 L 907.2370895357001 554.0701781332 L 883.5794806093 554.0701781332" class="trace-invisible-hover-outline sch-trace-hitbox" stroke="rgb(0, 150, 0)" fill="none" stroke-width="18.92608714112px" stroke-linecap="round" opacity="0" stroke-linejoin="round"/><path class="sch-trace-path" d="M 883.5794806093 293.8364799428 L 907.2370895357001 293.8364799428 L 907.2370895357001 554.0701781332 L 883.5794806093 554.0701781332" stroke="rgb(0, 150, 0)" fill="none" stroke-width="2.36576089264px" 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 97.55542402966 487.82887313928 L 97.55542402966 620.31148312712 L 907.2370895357001 620.31148312712 L 907.2370895357001 554.0701781332 L 883.5794806093 554.0701781332" class="trace-invisible-hover-outline sch-trace-hitbox" stroke="rgb(0, 150, 0)" fill="none" stroke-width="18.92608714112px" stroke-linecap="round" opacity="0" stroke-linejoin="round"/><path class="sch-trace-path" d="M 97.55542402966 487.82887313928 L 97.55542402966 620.31148312712 L 907.2370895357001 620.31148312712 L 907.2370895357001 554.0701781332 L 883.5794806093 554.0701781332" stroke="rgb(0, 150, 0)" fill="none" stroke-width="2.36576089264px" 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 576.0305645661 293.8364799428 L 564.2017601029 293.8364799428" class="trace-invisible-hover-outline sch-trace-hitbox" stroke="rgb(0, 150, 0)" fill="none" stroke-width="18.92608714112px" stroke-linecap="round" opacity="0" stroke-linejoin="round"/><path class="sch-trace-path" d="M 576.0305645661 293.8364799428 L 564.2017601029 293.8364799428" stroke="rgb(0, 150, 0)" fill="none" stroke-width="2.36576089264px" 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 1043.2683408625 358.8949044904 L 1043.2683408625 164.90251129391999 L 570.1161623345 164.90251129391999 L 570.1161623345 293.8364799428 L 576.0305645661 293.8364799428" class="trace-invisible-hover-outline sch-trace-hitbox" stroke="rgb(0, 150, 0)" fill="none" stroke-width="18.92608714112px" stroke-linecap="round" opacity="0" stroke-linejoin="round"/><path class="sch-trace-path" d="M 1043.2683408625 358.8949044904 L 1043.2683408625 164.90251129391999 L 570.1161623345 164.90251129391999 L 570.1161623345 293.8364799428 L 576.0305645661 293.8364799428" stroke="rgb(0, 150, 0)" fill="none" stroke-width="2.36576089264px" 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 564.2017601029 554.0701781332 L 576.0305645661 554.0701781332" class="trace-invisible-hover-outline sch-trace-hitbox" stroke="rgb(0, 150, 0)" fill="none" stroke-width="18.92608714112px" stroke-linecap="round" opacity="0" stroke-linejoin="round"/><path class="sch-trace-path" d="M 564.2017601029 554.0701781332 L 576.0305645661 554.0701781332" stroke="rgb(0, 150, 0)" fill="none" stroke-width="2.36576089264px" 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 1043.2683408625 489.0117535856 L 1043.2683408625 596.65387420072 L 570.1161623345 596.65387420072 L 570.1161623345 554.0701781332 L 576.0305645661 554.0701781332" class="trace-invisible-hover-outline sch-trace-hitbox" stroke="rgb(0, 150, 0)" fill="none" stroke-width="18.92608714112px" stroke-linecap="round" opacity="0" stroke-linejoin="round"/><path class="sch-trace-path" d="M 1043.2683408625 489.0117535856 L 1043.2683408625 596.65387420072 L 570.1161623345 596.65387420072 L 570.1161623345 554.0701781332 L 576.0305645661 554.0701781332" stroke="rgb(0, 150, 0)" fill="none" stroke-width="2.36576089264px" 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"><circle cx="256.6528440597" cy="293.8364799428" r="3.5486413389599996" 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_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"><circle cx="907.2370895357001" cy="554.0701781332" r="3.5486413389599996" class="trace-junction sch-trace-junction" fill="rgb(0, 150, 0)"/><circle cx="883.5794806093" cy="554.0701781332" r="3.5486413389599996" 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_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="576.0305645661" cy="293.8364799428" r="3.5486413389599996" 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"><circle cx="576.0305645661" cy="554.0701781332" r="3.5486413389599996" 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_7__stack1"/><g class="sch-component" data-circuit-json-type="schematic_component" data-schematic-component-id="schematic_component_0__stack1"><rect class="component-overlay sch-component-overlay" x="77.44645644222004" y="360.07778493672004" width="30.754891604319994" height="127.75108820255997" fill="transparent"/><path class="sch-component-symbol-path" d="M 96.37254358334003 360.07778493672004 L 97.55542402966003 388.4669156484" stroke="rgb(132, 0, 0)" fill="none" stroke-width="2.36576089264px" stroke-linecap="round"/><path class="sch-component-symbol-path" d="M 97.55542402966005 458.25686198128 L 97.55542402966005 487.82887313928" stroke="rgb(132, 0, 0)" fill="none" stroke-width="2.36576089264px" stroke-linecap="round"/><path class="sch-component-symbol-path" d="M 108.20134804654003 435.7821335012 L 85.72661956646004 423.95332903800005 L 108.20134804654003 410.94164412848" stroke="rgb(132, 0, 0)" fill="none" stroke-width="2.36576089264px" stroke-linecap="round"/><path class="sch-component-symbol-path" d="M 77.44645644222004 423.95332903800005 L 79.81221733486004 432.23349216224" stroke="rgb(132, 0, 0)" fill="none" stroke-width="2.36576089264px" stroke-linecap="round"/><path class="sch-component-symbol-path" d="M 79.81221733486004 432.23349216224 L 77.44645644222004 440.51365528648" stroke="rgb(132, 0, 0)" fill="none" stroke-width="2.36576089264px" stroke-linecap="round"/><path class="sch-component-symbol-path" d="M 77.44645644222004 406.2101223432 L 79.81221733486004 415.67316591376004" stroke="rgb(132, 0, 0)" fill="none" stroke-width="2.36576089264px" stroke-linecap="round"/><path class="sch-component-symbol-path" d="M 79.81221733486004 415.67316591376004 L 77.44645644222004 423.95332903800005" stroke="rgb(132, 0, 0)" fill="none" stroke-width="2.36576089264px" stroke-linecap="round"/><text class="sch-component-name sch-component-text" x="138.89181406735116" y="406.2101223432" stroke="rgb(245, 241, 237)" stroke-width="2.36576089264px" paint-order="stroke" fill="rgb(15, 15, 15)" font-family="sans-serif" text-anchor="start" dominant-baseline="middle" font-size="21.291848033759997px">V1</text><text class="sch-component-text" x="138.89181406735116" y="441.69653573280004" fill="rgb(15, 15, 15)" font-family="sans-serif" text-anchor="start" dominant-baseline="middle" font-size="21.291848033759997px"></text><circle class="sch-component-symbol-circle" cx="97.55542402966005" cy="423.95332903800005" r="34.30353294328px" stroke-width="2.36576089264px" fill="none" stroke="rgb(132, 0, 0)"/></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="256.6528440597" y="252.4356643216" width="307.54891604320005" height="79.84443012660003" fill="transparent"/><path class="sch-component-symbol-path" d="M 451.82811770250004 293.8364799428 L 374.9408886917 332.28009444820003" stroke="rgb(132, 0, 0)" fill="none" stroke-width="2.36576089264px" stroke-linecap="round"/><path class="sch-component-symbol-path" d="M 374.9408886917 252.4356643216 L 451.82811770250004 293.8364799428" stroke="rgb(132, 0, 0)" fill="none" stroke-width="2.36576089264px" stroke-linecap="round"/><path class="sch-component-symbol-path" d="M 374.9408886917 332.28009444820003 L 374.9408886917 252.4356643216" stroke="rgb(132, 0, 0)" fill="none" stroke-width="2.36576089264px" stroke-linecap="round"/><path class="sch-component-symbol-path" d="M 451.82811770250004 252.4356643216 L 451.82811770250004 332.28009444820003" stroke="rgb(132, 0, 0)" fill="none" stroke-width="2.36576089264px" stroke-linecap="round"/><path class="sch-component-symbol-path" d="M 374.9408886917 293.8364799428 L 256.6528440597 293.8364799428" stroke="rgb(132, 0, 0)" fill="none" stroke-width="2.36576089264px" stroke-linecap="round"/><path class="sch-component-symbol-path" d="M 564.2017601029 293.8364799428 L 454.7853188183 293.8364799428" stroke="rgb(132, 0, 0)" fill="none" stroke-width="2.36576089264px" stroke-linecap="round"/><text class="sch-component-name sch-component-text" x="407.4701009655" y="225.8208542794" stroke="rgb(245, 241, 237)" stroke-width="2.36576089264px" paint-order="stroke" fill="rgb(15, 15, 15)" font-family="sans-serif" text-anchor="middle" dominant-baseline="ideographic" font-size="21.291848033759997px">D1</text><text class="sch-component-text" x="410.4273020813" y="385.5097145326" fill="rgb(15, 15, 15)" font-family="sans-serif" text-anchor="middle" dominant-baseline="hanging" font-size="21.291848033759997px"></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="576.0305645661" y="512.6693625119999" width="307.54891604320005" height="79.84443012660006" fill="transparent"/><path class="sch-component-symbol-path" d="M 771.2058382089 554.0701781332 L 694.3186091981 592.5137926386" stroke="rgb(132, 0, 0)" fill="none" stroke-width="2.36576089264px" stroke-linecap="round"/><path class="sch-component-symbol-path" d="M 694.3186091981 512.6693625119999 L 771.2058382089 554.0701781332" stroke="rgb(132, 0, 0)" fill="none" stroke-width="2.36576089264px" stroke-linecap="round"/><path class="sch-component-symbol-path" d="M 694.3186091981 592.5137926386 L 694.3186091981 512.6693625119999" stroke="rgb(132, 0, 0)" fill="none" stroke-width="2.36576089264px" stroke-linecap="round"/><path class="sch-component-symbol-path" d="M 771.2058382089 512.6693625119999 L 771.2058382089 592.5137926386" stroke="rgb(132, 0, 0)" fill="none" stroke-width="2.36576089264px" stroke-linecap="round"/><path class="sch-component-symbol-path" d="M 694.3186091981 554.0701781332 L 576.0305645661 554.0701781332" stroke="rgb(132, 0, 0)" fill="none" stroke-width="2.36576089264px" stroke-linecap="round"/><path class="sch-component-symbol-path" d="M 883.5794806093 554.0701781332 L 774.1630393247 554.0701781332" stroke="rgb(132, 0, 0)" fill="none" stroke-width="2.36576089264px" stroke-linecap="round"/><text class="sch-component-name sch-component-text" x="726.8478214719" y="486.05455246979994" stroke="rgb(245, 241, 237)" stroke-width="2.36576089264px" paint-order="stroke" fill="rgb(15, 15, 15)" font-family="sans-serif" text-anchor="middle" dominant-baseline="ideographic" font-size="21.291848033759997px">D2</text><text class="sch-component-text" x="729.8050225877" y="645.743412723" fill="rgb(15, 15, 15)" font-family="sans-serif" text-anchor="middle" dominant-baseline="hanging" font-size="21.291848033759997px"></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="576.0305645661" y="255.39286543739996" width="307.54891604320005" height="79.8444301266" fill="transparent"/><path class="sch-component-symbol-path" d="M 688.4042069665 293.83647994279994 L 765.2914359773 255.39286543739996" stroke="rgb(132, 0, 0)" fill="none" stroke-width="2.36576089264px" stroke-linecap="round"/><path class="sch-component-symbol-path" d="M 765.2914359773 335.23729556399996 L 688.4042069665 293.83647994279994" stroke="rgb(132, 0, 0)" fill="none" stroke-width="2.36576089264px" stroke-linecap="round"/><path class="sch-component-symbol-path" d="M 765.2914359773 255.39286543739996 L 765.2914359773 335.23729556399996" stroke="rgb(132, 0, 0)" fill="none" stroke-width="2.36576089264px" stroke-linecap="round"/><path class="sch-component-symbol-path" d="M 688.4042069665 335.23729556399996 L 688.4042069665 255.39286543739996" stroke="rgb(132, 0, 0)" fill="none" stroke-width="2.36576089264px" stroke-linecap="round"/><path class="sch-component-symbol-path" d="M 765.2914359773 293.83647994279994 L 883.5794806093 293.83647994279994" stroke="rgb(132, 0, 0)" fill="none" stroke-width="2.36576089264px" stroke-linecap="round"/><path class="sch-component-symbol-path" d="M 576.0305645661 293.8364799428 L 685.4470058507001 293.83647994279994" stroke="rgb(132, 0, 0)" fill="none" stroke-width="2.36576089264px" stroke-linecap="round"/><text class="sch-component-name sch-component-text" x="732.7622237035" y="361.8521056062" stroke="rgb(245, 241, 237)" stroke-width="2.36576089264px" paint-order="stroke" fill="rgb(15, 15, 15)" font-family="sans-serif" text-anchor="middle" dominant-baseline="hanging" font-size="21.291848033759997px">D3</text><text class="sch-component-text" x="729.8050225877" y="202.16324535299992" fill="rgb(15, 15, 15)" font-family="sans-serif" text-anchor="middle" dominant-baseline="ideographic" font-size="21.291848033759997px"></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="256.6528440597" y="515.6265636277999" width="307.54891604320005" height="79.84443012660006" fill="transparent"/><path class="sch-component-symbol-path" d="M 369.0264864601 554.0701781332 L 445.9137154709 515.6265636277999" stroke="rgb(132, 0, 0)" fill="none" stroke-width="2.36576089264px" stroke-linecap="round"/><path class="sch-component-symbol-path" d="M 445.9137154709 595.4709937544 L 369.0264864601 554.0701781332" stroke="rgb(132, 0, 0)" fill="none" stroke-width="2.36576089264px" stroke-linecap="round"/><path class="sch-component-symbol-path" d="M 445.9137154709 515.6265636277999 L 445.9137154709 595.4709937544" stroke="rgb(132, 0, 0)" fill="none" stroke-width="2.36576089264px" stroke-linecap="round"/><path class="sch-component-symbol-path" d="M 369.0264864601 595.4709937544 L 369.0264864601 515.6265636277999" stroke="rgb(132, 0, 0)" fill="none" stroke-width="2.36576089264px" stroke-linecap="round"/><path class="sch-component-symbol-path" d="M 445.9137154709 554.0701781332 L 564.2017601029 554.0701781331999" stroke="rgb(132, 0, 0)" fill="none" stroke-width="2.36576089264px" stroke-linecap="round"/><path class="sch-component-symbol-path" d="M 256.6528440597 554.0701781332 L 366.0692853443 554.0701781332" stroke="rgb(132, 0, 0)" fill="none" stroke-width="2.36576089264px" stroke-linecap="round"/><text class="sch-component-name sch-component-text" x="413.3845031971" y="622.0858037966" stroke="rgb(245, 241, 237)" stroke-width="2.36576089264px" paint-order="stroke" fill="rgb(15, 15, 15)" font-family="sans-serif" text-anchor="middle" dominant-baseline="hanging" font-size="21.291848033759997px">D4</text><text class="sch-component-text" x="410.4273020813" y="462.3969435433999" fill="rgb(15, 15, 15)" font-family="sans-serif" text-anchor="middle" dominant-baseline="ideographic" font-size="21.291848033759997px"></text></g><g class="sch-component" data-circuit-json-type="schematic_component" data-schematic-component-id="schematic_component_5__stack1"><rect class="component-overlay sch-component-overlay" x="1025.92376487811" y="358.8949044904" width="34.68915196878015" height="130.1168490952" fill="transparent"/><path class="sch-component-symbol-path" d="M 1043.2683408625 358.8949044904 L 1043.2683408625 380.5853832345698" stroke="rgb(132, 0, 0)" fill="none" stroke-width="2.36576089264px" stroke-linecap="round"/><path class="sch-component-symbol-path" d="M 1043.2683408625 467.3212748414302 L 1043.2683408625 489.0117535856" stroke="rgb(132, 0, 0)" fill="none" stroke-width="2.36576089264px" stroke-linecap="round"/><path class="sch-component-symbol-path" d="M 1060.6129168468901 380.5853832345698 L 1060.6129168468901 467.3212748414302 L 1025.92376487811 467.3212748414302 L 1025.92376487811 380.5853832345698 L 1060.6129168468901 380.5853832345698" stroke="rgb(132, 0, 0)" fill="none" stroke-width="2.36576089264px" stroke-linecap="round"/><text class="sch-component-name sch-component-text" x="1077.9661672878867" y="389.2555026126133" stroke="rgb(245, 241, 237)" stroke-width="2.36576089264px" paint-order="stroke" fill="rgb(15, 15, 15)" font-family="sans-serif" text-anchor="start" dominant-baseline="middle" font-size="21.291848033759997px">R1</text><text class="sch-component-text" x="1077.9661672878867" y="458.65115546338666" fill="rgb(15, 15, 15)" font-family="sans-serif" text-anchor="start" dominant-baseline="middle" font-size="21.291848033759997px"></text></g><g class="schematic-port-hover sch-port-hover" data-schematic-port-id="source_port_0_0__stack1"><circle cx="96.37254358334008" cy="360.07778493672" r="4.73152178528" fill="red" opacity="0"/></g><g class="schematic-port-hover sch-port-hover" data-schematic-port-id="source_port_0_1__stack1"><circle cx="97.55542402966" cy="487.82887313928" r="4.73152178528" fill="red" opacity="0"/></g><g class="schematic-port-hover sch-port-hover" data-schematic-port-id="source_port_1_0__stack1"><circle cx="348.91751887266" cy="300.93376262072" r="4.73152178528" fill="red" opacity="0"/></g><g class="schematic-port-hover sch-port-hover" data-schematic-port-id="source_port_1_1__stack1"><circle cx="656.4664349158601" cy="300.93376262072" r="4.73152178528" fill="red" opacity="0"/></g><g class="schematic-port-hover sch-port-hover" data-schematic-port-id="source_port_2_0__stack1"><circle cx="668.29523937906" cy="561.16746081112" r="4.73152178528" fill="red" opacity="0"/></g><g class="schematic-port-hover sch-port-hover" data-schematic-port-id="source_port_2_1__stack1"><circle cx="975.8441554222601" cy="561.16746081112" r="4.73152178528" fill="red" opacity="0"/></g><g class="schematic-port-hover sch-port-hover" data-schematic-port-id="source_port_3_0__stack1"><circle cx="975.8441554222601" cy="300.93376262071996" r="4.73152178528" fill="red" opacity="0"/></g><g class="schematic-port-hover sch-port-hover" data-schematic-port-id="source_port_3_1__stack1"><circle cx="668.29523937906" cy="300.93376262071996" r="4.73152178528" fill="red" opacity="0"/></g><g class="schematic-port-hover sch-port-hover" data-schematic-port-id="source_port_4_0__stack1"><circle cx="656.4664349158601" cy="561.16746081112" r="4.73152178528" fill="red" opacity="0"/></g><g class="schematic-port-hover sch-port-hover" data-schematic-port-id="source_port_4_1__stack1"><circle cx="348.91751887266" cy="561.16746081112" r="4.73152178528" fill="red" opacity="0"/></g><g class="schematic-port-hover sch-port-hover" data-schematic-port-id="source_port_5_0__stack1"><circle cx="1043.2683408625" cy="388.4669156484" r="4.73152178528" fill="red" opacity="0"/></g><g class="schematic-port-hover sch-port-hover" data-schematic-port-id="source_port_5_1__stack1"><circle cx="1043.2683408625" cy="518.5837647436" r="4.73152178528" 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 96.37254358334008,326.95713243976
|
|
80
|
+
L 102.76009799346808,315.12832797656
|
|
81
|
+
L 143.32501143260194,315.12832797656
|
|
82
|
+
L 143.32501143260194,338.78593690296003
|
|
83
|
+
L 102.76009799346808,338.78593690296003
|
|
84
|
+
Z
|
|
85
|
+
" fill="rgba(255, 255, 255, 0.6)" stroke="rgb(132, 0, 0)" stroke-width="2.36576089264px"/><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="107.01846760022008" y="326.95713243976" fill="rgb(132, 0, 0)" text-anchor="start" dominant-baseline="central" font-family="sans-serif" font-variant-numeric="tabular-nums" font-size="21.291848033759997px" 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 907.2370895357001,293.8364799428
|
|
87
|
+
L 895.4082850725001,287.448925532672
|
|
88
|
+
L 895.4082850725001,246.88401209353813
|
|
89
|
+
L 919.0658939989,246.88401209353813
|
|
90
|
+
L 919.0658939989,287.448925532672
|
|
91
|
+
Z
|
|
92
|
+
" fill="rgba(255, 255, 255, 0.6)" stroke="rgb(132, 0, 0)" stroke-width="2.36576089264px"/><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="907.2370895357001" y="283.19055592592" fill="rgb(132, 0, 0)" text-anchor="start" dominant-baseline="central" font-family="sans-serif" font-variant-numeric="tabular-nums" font-size="21.291848033759997px" transform="rotate(-90 907.2370895357001 283.19055592592)">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 1043.2683408625,261.89870789216
|
|
94
|
+
L 1049.655895272628,250.06990342896003
|
|
95
|
+
L 1090.220808711762,250.06990342896003
|
|
96
|
+
L 1090.220808711762,273.72751235536003
|
|
97
|
+
L 1049.655895272628,273.72751235536003
|
|
98
|
+
Z
|
|
99
|
+
" fill="rgba(255, 255, 255, 0.6)" stroke="rgb(132, 0, 0)" stroke-width="2.36576089264px"/><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="1053.91426487938" y="261.89870789216" fill="rgb(132, 0, 0)" text-anchor="start" dominant-baseline="central" font-family="sans-serif" font-variant-numeric="tabular-nums" font-size="21.291848033759997px" transform="">XX</text><text class="sch-text" x="318.16262726834003" y="256.57574588372" fill="#7e22ce" text-anchor="middle" dominant-baseline="middle" font-family="sans-serif" font-size="21.291848033759997px" transform="rotate(0, 318.16262726834003, 256.57574588372)">D1</text><text class="sch-text" x="637.54034777474" y="516.80944407412" fill="#7e22ce" text-anchor="middle" dominant-baseline="middle" font-family="sans-serif" font-size="21.291848033759997px" transform="rotate(0, 637.54034777474, 516.80944407412)">D2</text><text class="sch-text" x="637.54034777474" y="256.57574588372" fill="#7e22ce" text-anchor="middle" dominant-baseline="middle" font-family="sans-serif" font-size="21.291848033759997px" transform="rotate(0, 637.54034777474, 256.57574588372)">D3</text><text class="sch-text" x="318.16262726834003" y="516.80944407412" fill="#7e22ce" text-anchor="middle" dominant-baseline="middle" font-family="sans-serif" font-size="21.291848033759997px" transform="rotate(0, 318.16262726834003, 516.80944407412)">D4</text><rect class="schematic-box sch-box" x="296.87077923458" y="241.78974030471997" width="42.58369606752001" height="29.572011158000038" stroke-width="2.36576089264px" stroke="rgb(132, 0, 0)" fill="transparent" stroke-dasharray="18.92608714112 9.46304357056"/><rect class="schematic-box sch-box" x="616.24849974098" y="502.02343849512" width="42.58369606752001" height="29.57201115800001" stroke-width="2.36576089264px" stroke="rgb(132, 0, 0)" fill="transparent" stroke-dasharray="18.92608714112 9.46304357056"/><rect class="schematic-box sch-box" x="616.24849974098" y="241.78974030471997" width="42.58369606752001" height="29.572011158000038" stroke-width="2.36576089264px" stroke="rgb(132, 0, 0)" fill="transparent" stroke-dasharray="18.92608714112 9.46304357056"/><rect class="schematic-box sch-box" x="296.87077923458" y="502.02343849512" width="42.58369606752001" height="29.57201115800001" stroke-width="2.36576089264px" stroke="rgb(132, 0, 0)" fill="transparent" stroke-dasharray="18.92608714112 9.46304357056"/>
|
|
100
|
+
</g>
|
|
101
|
+
</svg>
|