@tscircuit/schematic-trace-solver 0.0.149 → 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 +28 -1
- package/dist/index.js +26 -4
- package/lib/solvers/InlineNetLabelSolver/InlineNetLabelSolver.ts +14 -4
- 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/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 +590 -5
- 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 +30 -5
- 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/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 +23 -5
- package/tests/solvers/InlineNetLabelSolver/fallback-net-label-width.test.ts +10 -1
- 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="-0.4458008,0.00006220000000001225 1.1458008,1.1899378" data-type="line" data-label="" points="82.08836873900444,385.92099171420324 305.38141882696914,218.98791502638952" fill="none" stroke="hsl(16, 100%, 50%, 0.8)" stroke-width="1px"/></g><g><polyline data-points="3.0458008,-0.08006219999999957 1.9058008000000002,1.1899378" data-type="line" data-label="" points="571.9410875073304,397.1620093548415 412.0052862991136,218.98791502638952" fill="none" stroke="hsl(16, 100%, 50%, 0.8)" stroke-width="1px"/></g><g><polyline data-points="2.4458008,-0.08006219999999949 0.4458008,-0.00006220000000001225" data-type="line" data-label="" points="487.7643500293216,397.1620093548415 207.1752251026255,385.9384443577737" fill="none" stroke="hsl(0, 100%, 50%, 0.8)" stroke-width="1px"/></g><g><polyline data-points="1.7458008,-0.00006219999999993796 1.9058008000000002,1.1899378" data-type="line" data-label="" points="389.55815630497796,385.9384443577737 412.0052862991136,218.98791502638952" fill="none" stroke="hsl(32, 100%, 50%, 0.8)" stroke-width="1px"/></g><g><polyline data-points="1.1458008,-0.00006219999999986448 0.4458008,-0.00006220000000001225" data-type="line" data-label="" points="305.38141882696914,385.9384443577737 207.1752251026255,385.9384443577737" fill="none" stroke="hsl(32, 100%, 50%, 0.8)" stroke-width="1px"/></g><g><polyline data-points="-0.4458008,0.00006220000000001225 -0.6458008,0.00006220000000001225 -0.6458008,1.1899378 1.1458008,1.1899378" data-type="line" data-label="" points="82.08836873900444,385.92099171420324 54.029456246334846,385.92099171420324 54.029456246334846,218.98791502638952 305.38141882696914,218.98791502638952" fill="none" stroke="purple" stroke-width="1px"/></g><g><polyline data-points="1.9058008000000002,1.1899378 2.1058008000000004,1.1899378 2.1058008000000004,-0.00006219999999993796 1.7458008,-0.00006219999999993796" data-type="line" data-label="" points="412.0052862991136,218.98791502638952 440.06419879178327,218.98791502638952 440.06419879178327,385.9384443577737 389.55815630497796,385.9384443577737" fill="none" stroke="purple" stroke-width="1px"/></g><g><polyline data-points="0.4458008,-0.00006220000000001225 1.1458008,-0.00006219999999986448" data-type="line" data-label="" points="207.1752251026255,385.9384443577737 305.38141882696914,385.9384443577737" fill="none" stroke="purple" stroke-width="1px"/></g><g><polyline data-points="3.0458008,-0.08006219999999957 3.2458008,-0.08006219999999957 3.2458008,0.5949378000000001 2.1058008000000004,0.5949378000000001" data-type="line" data-label="" points="571.9410875073304,397.1620093548415 600,397.1620093548415 600,302.4631796920816 440.06419879178327,302.4631796920816" fill="none" stroke="purple" stroke-width="1px"/></g><g><polyline data-points="2.4458008,-0.08006219999999949 2.2458008,-0.08006219999999949 2.2458008,-0.7000621999999994 0.7958008,-0.7000621999999994 0.7958008,-0.00006219999999993836" data-type="line" data-label="" points="487.7643500293216,397.1620093548415 459.70543753665197,397.1620093548415 459.70543753665197,484.14463808211724 256.27832196479727,484.14463808211724 256.27832196479727,385.9384443577737" 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="82.08836873900444" y="323.3059010698864" width="125.08685636362105" height="125.24763393220417" fill="hsl(24, 100%, 50%, 0.8)" stroke="black" stroke-width="0.007127860000000001"/></g><g><rect data-type="rect" data-label="schematic_component_1" data-x="1.5258008" data-y="1.1899378" x="305.38141882696914" y="183.9142744105525" width="106.62386747214447" height="70.14728123167401" fill="hsl(24, 100%, 50%, 0.8)" stroke="black" stroke-width="0.007127860000000001"/></g><g><rect data-type="rect" data-label="schematic_component_2" data-x="2.7458008" data-y="-0.0800621999999995" x="487.7643500293216" y="338.2382931202353" width="84.17673747800882" height="117.84743246921232" fill="hsl(24, 100%, 50%, 0.8)" stroke="black" stroke-width="0.007127860000000001"/></g><g><rect data-type="rect" data-label="schematic_component_3" data-x="1.4458008" data-y="-0.00006219999999990122" x="305.38141882696914" y="338.2382931202353" width="84.17673747800882" height="95.40030247507667" fill="hsl(24, 100%, 50%, 0.8)" stroke="black" stroke-width="0.007127860000000001"/></g><g><rect data-type="rect" data-label="netId: VS1.1 to SW1.1
|
|
2
4
|
globalConnNetId: connectivity_net0" data-x="-0.6458008" data-y="-0.2249378" x="40.00000000000004" y="385.92099171420324" width="28.058912492669606" height="63.13255310850661" fill="hsl(40, 100%, 50%, 0.35)" stroke="black" stroke-width="0.007127860000000001"/></g><g><rect data-type="rect" data-label="netId: .R1 > .pin2 to VS1.2
|
|
3
5
|
globalConnNetId: connectivity_net2" data-x="0.7958008" data-y="0.22493780000000008" x="242.24886571846247" y="322.80589124926706" width="28.058912492669577" height="63.13255310850661" fill="hsl(40, 100%, 50%, 0.35)" stroke="black" stroke-width="0.007127860000000001"/></g><g><rect data-type="rect" data-label="netId: .R1 > .pin1 to SW1.2
|
|
4
6
|
globalConnNetId: connectivity_net1" data-x="2.1058008000000004" data-y="1.4149378000000001" x="426.03474254544847" y="155.85536191788287" width="28.058912492669606" height="63.13255310850664" fill="hsl(40, 100%, 50%, 0.35)" stroke="black" stroke-width="0.007127860000000001"/></g><g><circle data-type="point" data-label="VS1.1
|
|
@@ -22,7 +24,7 @@ orientation: y+" data-x="2.1058008000000004" data-y="1.1899378" cx="440.06419879
|
|
|
22
24
|
const h = svg.getElementById('crosshair-h');
|
|
23
25
|
const v = svg.getElementById('crosshair-v');
|
|
24
26
|
const coords = svg.getElementById('coordinates');
|
|
25
|
-
|
|
27
|
+
|
|
26
28
|
crosshair.style.display = 'block';
|
|
27
29
|
h.setAttribute('x1', '0');
|
|
28
30
|
h.setAttribute('x2', '640');
|
|
@@ -41,13 +43,13 @@ orientation: y+" data-x="2.1058008000000004" data-y="1.1899378" cx="440.06419879
|
|
|
41
43
|
// y' = (y - ty) / sy
|
|
42
44
|
const sx = matrix.a;
|
|
43
45
|
const sy = matrix.d;
|
|
44
|
-
const tx = matrix.e;
|
|
46
|
+
const tx = matrix.e;
|
|
45
47
|
const ty = matrix.f;
|
|
46
48
|
const realPoint = {
|
|
47
49
|
x: (x - tx) / sx,
|
|
48
50
|
y: (y - ty) / sy // Flip y back since we used negative scale
|
|
49
51
|
}
|
|
50
|
-
|
|
52
|
+
|
|
51
53
|
coords.textContent = `(${realPoint.x.toFixed(2)}, ${realPoint.y.toFixed(2)})`;
|
|
52
54
|
coords.setAttribute('x', (x + 5).toString());
|
|
53
55
|
coords.setAttribute('y', (y - 5).toString());
|
|
@@ -55,4 +57,41 @@ orientation: y+" data-x="2.1058008000000004" data-y="1.1899378" cx="440.06419879
|
|
|
55
57
|
document.currentScript.parentElement.addEventListener('mouseleave', () => {
|
|
56
58
|
document.currentScript.parentElement.getElementById('crosshair').style.display = 'none';
|
|
57
59
|
});
|
|
58
|
-
]]></script
|
|
60
|
+
]]></script>
|
|
61
|
+
</g>
|
|
62
|
+
<g transform="translate(1216, 200)">
|
|
63
|
+
<style>
|
|
64
|
+
.boundary { fill: rgb(245, 241, 237); }
|
|
65
|
+
.schematic-boundary { fill: none; stroke: #fff; }
|
|
66
|
+
.component { fill: none; stroke: rgb(132, 0, 0); }
|
|
67
|
+
.chip { fill: rgb(255, 255, 194); stroke: rgb(132, 0, 0); }
|
|
68
|
+
.component-pin { fill: none; stroke: rgb(132, 0, 0); }
|
|
69
|
+
.text { font-family: sans-serif; fill: rgb(0, 150, 0); }
|
|
70
|
+
.pin-number { fill: rgb(169, 0, 0); }
|
|
71
|
+
.port-label { fill: rgb(0, 100, 100); }
|
|
72
|
+
.component-name { fill: rgb(0, 100, 100); }
|
|
73
|
+
|
|
74
|
+
</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 190.41568060436208 499.57365929113297 L 142.81176045328206 499.57365929113297 L 142.81176045328206 216.35994403054093 L 569.2480579980179 216.35994403054093" class="trace-invisible-hover-outline sch-trace-hitbox" stroke="rgb(0, 150, 0)" fill="none" stroke-width="38.083136120864005px" stroke-linecap="round" opacity="0" stroke-linejoin="round"/><path class="sch-trace-path" d="M 190.41568060436208 499.57365929113297 L 142.81176045328206 499.57365929113297 L 142.81176045328206 216.35994403054093 L 569.2480579980179 216.35994403054093" stroke="rgb(0, 150, 0)" fill="none" stroke-width="4.760392015108001px" 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 750.142954572122 216.35994403054093 L 797.7468747232019 216.35994403054093 L 797.7468747232019 499.60326892946694 L 712.0598184512579 499.60326892946694" class="trace-invisible-hover-outline sch-trace-hitbox" stroke="rgb(0, 150, 0)" fill="none" stroke-width="38.083136120864005px" stroke-linecap="round" opacity="0" stroke-linejoin="round"/><path class="sch-trace-path" d="M 750.142954572122 216.35994403054093 L 797.7468747232019 216.35994403054093 L 797.7468747232019 499.60326892946694 L 712.0598184512579 499.60326892946694" stroke="rgb(0, 150, 0)" fill="none" stroke-width="4.760392015108001px" 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 402.6343374692379 499.603268929467 L 569.2480579980179 499.60326892946694" class="trace-invisible-hover-outline sch-trace-hitbox" stroke="rgb(0, 150, 0)" fill="none" stroke-width="38.083136120864005px" stroke-linecap="round" opacity="0" stroke-linejoin="round"/><path class="sch-trace-path" d="M 402.6343374692379 499.603268929467 L 569.2480579980179 499.60326892946694" stroke="rgb(0, 150, 0)" fill="none" stroke-width="4.760392015108001px" 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 1021.485299433278 518.6448369898989 L 1069.089219584358 518.6448369898989 L 1069.089219584358 357.98160648000396 L 797.7468747232019 357.98160648000396" class="trace-invisible-hover-outline sch-trace-hitbox" stroke="rgb(0, 150, 0)" fill="none" stroke-width="38.083136120864005px" stroke-linecap="round" opacity="0" stroke-linejoin="round"/><path class="sch-trace-path" d="M 1021.485299433278 518.6448369898989 L 1069.089219584358 518.6448369898989 L 1069.089219584358 357.98160648000396 L 797.7468747232019 357.98160648000396" stroke="rgb(0, 150, 0)" fill="none" stroke-width="4.760392015108001px" 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 878.6735389800381 518.6448369898989 L 831.069618828958 518.6448369898989 L 831.069618828958 666.2169894582469 L 485.9411977336279 666.2169894582469 L 485.9411977336279 499.60326892946694" class="trace-invisible-hover-outline sch-trace-hitbox" stroke="rgb(0, 150, 0)" fill="none" stroke-width="38.083136120864005px" stroke-linecap="round" opacity="0" stroke-linejoin="round"/><path class="sch-trace-path" d="M 878.6735389800381 518.6448369898989 L 831.069618828958 518.6448369898989 L 831.069618828958 666.2169894582469 L 485.9411977336279 666.2169894582469 L 485.9411977336279 499.60326892946694" stroke="rgb(0, 150, 0)" fill="none" stroke-width="4.760392015108001px" stroke-linecap="round" stroke-linejoin="round"/></g><g class="trace-overlays sch-trace-overlays" data-layer="overlay" data-circuit-json-type="schematic_trace" data-schematic-trace-id="schematic_trace_0__stack1"/><g class="trace-overlays sch-trace-overlays" data-layer="overlay" data-circuit-json-type="schematic_trace" data-schematic-trace-id="schematic_trace_1__stack1"/><g class="trace-overlays sch-trace-overlays" data-layer="overlay" data-circuit-json-type="schematic_trace" data-schematic-trace-id="schematic_trace_2__stack1"/><g class="trace-overlays sch-trace-overlays" data-layer="overlay" data-circuit-json-type="schematic_trace" data-schematic-trace-id="schematic_trace_3__stack1"/><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="sch-component" data-circuit-json-type="schematic_component" data-schematic-component-id="schematic_component_0__stack1"><rect class="component-overlay sch-component-overlay" x="190.41568060436208" y="479.924625740144" width="212.20956235068138" height="51.08748723257139" fill="transparent"/><path class="sch-component-symbol-path" d="M 190.41568060436208 499.573659291133 L 237.57336112673573 497.60875593603413" stroke="rgb(132, 0, 0)" fill="none" stroke-width="4.760392015108001px" stroke-linecap="round"/><path class="sch-component-symbol-path" d="M 353.5026590775709 497.60875593603413 L 402.62524295504346 497.60875593603413" stroke="rgb(132, 0, 0)" fill="none" stroke-width="4.760392015108001px" stroke-linecap="round"/><path class="sch-component-symbol-path" d="M 316.1694953306918 479.924625740144 L 296.52046177970277 517.2577894870232 L 274.90652487361484 479.924625740144" stroke="rgb(132, 0, 0)" fill="none" stroke-width="4.760392015108001px" stroke-linecap="round"/><path class="sch-component-symbol-path" d="M 296.52046177970277 531.0121129727154 L 310.27478526539505 527.0823062625176" stroke="rgb(132, 0, 0)" fill="none" stroke-width="4.760392015108001px" stroke-linecap="round"/><path class="sch-component-symbol-path" d="M 310.27478526539505 527.0823062625176 L 324.0291087510874 531.0121129727154" stroke="rgb(132, 0, 0)" fill="none" stroke-width="4.760392015108001px" stroke-linecap="round"/><path class="sch-component-symbol-path" d="M 267.04691145321925 531.0121129727154 L 282.7661382940105 527.0823062625176" stroke="rgb(132, 0, 0)" fill="none" stroke-width="4.760392015108001px" stroke-linecap="round"/><path class="sch-component-symbol-path" d="M 282.7661382940105 527.0823062625176 L 296.52046177970277 531.0121129727154" stroke="rgb(132, 0, 0)" fill="none" stroke-width="4.760392015108001px" stroke-linecap="round"/><text class="sch-component-name sch-component-text" x="296.52046177970277" y="425.0143502586103" stroke="rgb(245, 241, 237)" stroke-width="4.760392015108001px" paint-order="stroke" fill="rgb(15, 15, 15)" font-family="sans-serif" text-anchor="middle" dominant-baseline="ideographic" font-size="42.843528135972px">VS1</text><text class="sch-component-text" x="296.52046177970277" y="585.9223884542491" fill="rgb(15, 15, 15)" font-family="sans-serif" text-anchor="middle" dominant-baseline="hanging" font-size="42.843528135972px"></text><circle class="sch-component-symbol-circle" cx="296.52046177970277" cy="497.60875593603413" r="69.025684219066px" stroke-width="4.760392015108001px" 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="569.2480579980179" y="183.03719992478491" width="180.894896574104" height="35.70294011331001" fill="transparent"/><path class="sch-component-symbol-path" d="M 569.2480579980179 216.35994403054093 L 631.1331541944219 218.74014003809492" stroke="rgb(132, 0, 0)" fill="none" stroke-width="4.760392015108001px" stroke-linecap="round"/><path class="sch-component-symbol-path" d="M 643.0341342321918 213.97974802298694 L 683.4974663606099 183.03719992478491" stroke="rgb(132, 0, 0)" fill="none" stroke-width="4.760392015108001px" stroke-linecap="round"/><path class="sch-component-symbol-path" d="M 688.2578583757179 218.74014003809492 L 750.1429545721219 216.35994403054093" stroke="rgb(132, 0, 0)" fill="none" stroke-width="4.760392015108001px" stroke-linecap="round"/><text class="sch-component-name sch-component-text" x="659.6955062850699" y="156.85504384169093" stroke="rgb(245, 241, 237)" stroke-width="4.760392015108001px" paint-order="stroke" fill="rgb(15, 15, 15)" font-family="sans-serif" text-anchor="middle" dominant-baseline="ideographic" font-size="42.843528135972px">SW1</text><text class="sch-component-text" x="659.6955062850699" y="275.86484421939093" fill="rgb(15, 15, 15)" font-family="sans-serif" text-anchor="middle" dominant-baseline="hanging" font-size="42.843528135972px"></text><circle class="sch-component-symbol-circle" cx="683.4974663606099" cy="216.35994403054093" r="4.760392015108001px" stroke-width="4.760392015108001px" fill="none" stroke="rgb(132, 0, 0)"/><circle class="sch-component-symbol-circle" cx="635.8935462095299" cy="216.35994403054093" r="4.760392015108001px" stroke-width="4.760392015108001px" fill="none" stroke="rgb(132, 0, 0)"/></g><g class="sch-component" data-circuit-json-type="schematic_component" data-schematic-component-id="schematic_component_2__stack1"><rect class="component-overlay sch-component-overlay" x="878.6735389800381" y="480.5569404770198" width="142.8117604532399" height="76.17579302575814" fill="transparent"/><path class="sch-component-symbol-path" d="M 1021.485299433278 518.6448369898989 L 964.360595251982 518.6448369898989" stroke="rgb(132, 0, 0)" fill="none" stroke-width="4.760392015108001px" stroke-linecap="round"/><path class="sch-component-symbol-path" d="M 935.7982431613341 518.6448369898989 L 878.6735389800381 518.6448369898989" stroke="rgb(132, 0, 0)" fill="none" stroke-width="4.760392015108001px" stroke-linecap="round"/><path class="sch-component-symbol-path" d="M 964.360595251982 480.5569404770198 L 964.360595251982 556.7327335027779" stroke="rgb(132, 0, 0)" fill="none" stroke-width="4.760392015108001px" stroke-linecap="round"/><path class="sch-component-symbol-path" d="M 935.7982431613341 480.5569404770198 L 935.7982431613341 556.7327335027779" stroke="rgb(132, 0, 0)" fill="none" stroke-width="4.760392015108001px" stroke-linecap="round"/><text class="sch-component-name sch-component-text" x="950.079419206658" y="461.5201328086029" stroke="rgb(245, 241, 237)" stroke-width="4.760392015108001px" paint-order="stroke" fill="rgb(15, 15, 15)" font-family="sans-serif" text-anchor="middle" dominant-baseline="ideographic" font-size="42.843528135972px">C1</text><text class="sch-component-text" x="950.079419206658" y="575.7695411711949" fill="rgb(15, 15, 15)" font-family="sans-serif" text-anchor="middle" dominant-baseline="hanging" font-size="42.843528135972px"></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="569.2480579980179" y="480.56646126105005" width="142.8117604532399" height="38.073615336833825" fill="transparent"/><path class="sch-component-symbol-path" d="M 712.0598184512578 499.60326892946694 L 688.2530979837028 499.60326892946694" stroke="rgb(132, 0, 0)" fill="none" stroke-width="4.760392015108001px" stroke-linecap="round"/><path class="sch-component-symbol-path" d="M 593.0547784655729 499.60326892946694 L 569.2480579980179 499.60326892946694" stroke="rgb(132, 0, 0)" fill="none" stroke-width="4.760392015108001px" stroke-linecap="round"/><path class="sch-component-symbol-path" d="M 688.2530979837028 518.6400765978839 L 593.0547784655729 518.6400765978839 L 593.0547784655729 480.56646126105005 L 688.2530979837028 480.56646126105005 L 688.2530979837028 518.6400765978839" stroke="rgb(132, 0, 0)" fill="none" stroke-width="4.760392015108001px" stroke-linecap="round"/><text class="sch-component-name sch-component-text" x="640.6539382246378" y="461.5201328086029" stroke="rgb(245, 241, 237)" stroke-width="4.760392015108001px" paint-order="stroke" fill="rgb(15, 15, 15)" font-family="sans-serif" text-anchor="middle" dominant-baseline="ideographic" font-size="42.843528135972px">R1</text><text class="sch-component-text" x="640.6539382246378" y="537.6864050503309" fill="rgb(15, 15, 15)" font-family="sans-serif" text-anchor="middle" dominant-baseline="hanging" font-size="42.843528135972px"></text></g><g class="schematic-port-hover sch-port-hover" data-schematic-port-id="source_port_0_0__stack1"><circle cx="167.98987737178675" cy="498.3277813337677" r="9.520784030216001" fill="red" opacity="0"/></g><g class="schematic-port-hover sch-port-hover" data-schematic-port-id="source_port_0_1__stack1"><circle cx="380.20853423666256" cy="498.35739097210165" r="9.520784030216001" fill="red" opacity="0"/></g><g class="schematic-port-hover sch-port-hover" data-schematic-port-id="source_port_1_0__stack1"><circle cx="569.2480579980179" cy="216.35994403054093" r="9.520784030216001" fill="red" opacity="0"/></g><g class="schematic-port-hover sch-port-hover" data-schematic-port-id="source_port_1_1__stack1"><circle cx="750.142954572122" cy="216.35994403054093" r="9.520784030216001" fill="red" opacity="0"/></g><g class="schematic-port-hover sch-port-hover" data-schematic-port-id="source_port_2_0__stack1"><circle cx="1021.485299433278" cy="518.6448369898989" r="9.520784030216001" fill="red" opacity="0"/></g><g class="schematic-port-hover sch-port-hover" data-schematic-port-id="source_port_2_1__stack1"><circle cx="878.6735389800381" cy="518.6448369898989" r="9.520784030216001" fill="red" opacity="0"/></g><g class="schematic-port-hover sch-port-hover" data-schematic-port-id="source_port_3_0__stack1"><circle cx="712.0598184512579" cy="499.60326892946694" r="9.520784030216001" fill="red" opacity="0"/></g><g class="schematic-port-hover sch-port-hover" data-schematic-port-id="source_port_3_1__stack1"><circle cx="569.2480579980179" cy="499.60326892946694" r="9.520784030216001" 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="
|
|
75
|
+
M 142.81176045328206,499.57365929113297
|
|
76
|
+
L 166.61372052882206,512.4267177319246
|
|
77
|
+
L 166.61372052882206,594.0515728176431
|
|
78
|
+
L 119.00980037774207,594.0515728176431
|
|
79
|
+
L 119.00980037774207,512.4267177319246
|
|
80
|
+
Z
|
|
81
|
+
" fill="rgba(255, 255, 255, 0.6)" stroke="rgb(132, 0, 0)" stroke-width="4.760392015108001px"/><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="142.81176045328206" y="520.995423359119" fill="rgb(132, 0, 0)" text-anchor="start" dominant-baseline="central" font-family="sans-serif" font-variant-numeric="tabular-nums" font-size="42.843528135972px" transform="rotate(90 142.81176045328206 520.995423359119)">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="
|
|
82
|
+
M 485.9411977336279,499.60326892946694
|
|
83
|
+
L 462.1392376580879,486.75021048867535
|
|
84
|
+
L 462.13923765808795,405.1253554029568
|
|
85
|
+
L 509.74315780916794,405.1253554029568
|
|
86
|
+
L 509.74315780916794,486.75021048867535
|
|
87
|
+
Z
|
|
88
|
+
" fill="rgba(255, 255, 255, 0.6)" stroke="rgb(132, 0, 0)" stroke-width="4.760392015108001px"/><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="485.9411977336279" y="478.18150486148096" fill="rgb(132, 0, 0)" text-anchor="start" dominant-baseline="central" font-family="sans-serif" font-variant-numeric="tabular-nums" font-size="42.843528135972px" transform="rotate(-90 485.9411977336279 478.18150486148096)">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="
|
|
89
|
+
M 797.7468747232019,216.35994403054093
|
|
90
|
+
L 773.9449146476619,203.50688558974932
|
|
91
|
+
L 773.9449146476619,121.88203050403082
|
|
92
|
+
L 821.548834798742,121.88203050403082
|
|
93
|
+
L 821.548834798742,203.50688558974934
|
|
94
|
+
Z
|
|
95
|
+
" fill="rgba(255, 255, 255, 0.6)" stroke="rgb(132, 0, 0)" stroke-width="4.760392015108001px"/><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="797.7468747232019" y="194.93817996255493" fill="rgb(132, 0, 0)" text-anchor="start" dominant-baseline="central" font-family="sans-serif" font-variant-numeric="tabular-nums" font-size="42.843528135972px" transform="rotate(-90 797.7468747232019 194.93817996255493)">XX</text>
|
|
96
|
+
</g>
|
|
97
|
+
</svg>
|