@tscircuit/schematic-trace-solver 0.0.26 → 0.0.27

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.
Files changed (28) hide show
  1. package/dist/index.d.ts +1 -0
  2. package/dist/index.js +8 -0
  3. package/lib/solvers/NetLabelPlacementSolver/SingleNetLabelPlacementSolver/SingleNetLabelPlacementSolver.ts +11 -0
  4. package/package.json +1 -1
  5. package/site/SingleNetLabelPlacementSolver/SingleNetLabelPlacementSolver01.page.tsx +574 -0
  6. package/site/examples/example11.page.tsx +1 -1
  7. package/site/examples/example12.page.tsx +1 -1
  8. package/site/examples/example13.page.tsx +219 -0
  9. package/site/examples/example14.page.tsx +210 -0
  10. package/tests/examples/__snapshots__/example01.snap.svg +4 -4
  11. package/tests/examples/__snapshots__/example02.snap.svg +4 -4
  12. package/tests/examples/__snapshots__/example03.snap.svg +68 -68
  13. package/tests/examples/__snapshots__/example04.snap.svg +12 -12
  14. package/tests/examples/__snapshots__/example05.snap.svg +1 -1
  15. package/tests/examples/__snapshots__/example06.snap.svg +11 -11
  16. package/tests/examples/__snapshots__/example07.snap.svg +48 -48
  17. package/tests/examples/__snapshots__/example08.snap.svg +25 -25
  18. package/tests/examples/__snapshots__/example09.snap.svg +131 -131
  19. package/tests/examples/__snapshots__/example10.snap.svg +26 -26
  20. package/tests/examples/__snapshots__/example11.snap.svg +162 -0
  21. package/tests/examples/__snapshots__/example12.snap.svg +145 -0
  22. package/tests/examples/__snapshots__/example13.snap.svg +316 -0
  23. package/tests/examples/__snapshots__/example14.snap.svg +213 -0
  24. package/tests/examples/example11.test.tsx +12 -0
  25. package/tests/examples/example12.test.tsx +12 -0
  26. package/tests/examples/example13.test.tsx +12 -0
  27. package/tests/examples/example14.test.tsx +12 -0
  28. package/tests/solvers/NetLabelPlacementSolver/SingleNetLabelPlacementSolver/SingleNetLabelPlacementSolver01.test.ts +13 -0
@@ -2,225 +2,225 @@
2
2
  <rect width="100%" height="100%" fill="white" />
3
3
  <g>
4
4
  <circle data-type="point" data-label="PIN1_PIN2.1
5
- x-" data-x="-3.5005768910000006" data-y="1.4489565000000004" cx="68.77810770793803" cy="216.01439845108" r="3" fill="hsl(328, 100%, 50%, 0.8)" />
5
+ x-" data-x="-3.5005768910000006" data-y="1.4489565000000004" cx="71.9568626609827" cy="217.33014662474903" r="3" fill="hsl(328, 100%, 50%, 0.8)" />
6
6
  </g>
7
7
  <g>
8
8
  <circle data-type="point" data-label="PIN1_PIN2.2
9
- x-" data-x="-3.5005768910000006" data-y="1.4489565000000004" cx="68.77810770793803" cy="216.01439845108" r="3" fill="hsl(328, 100%, 50%, 0.8)" />
9
+ x-" data-x="-3.5005768910000006" data-y="1.4489565000000004" cx="71.9568626609827" cy="217.33014662474903" r="3" fill="hsl(328, 100%, 50%, 0.8)" />
10
10
  </g>
11
11
  <g>
12
12
  <circle data-type="point" data-label="PIN1_PIN2.3
13
- x+" data-x="-2.4994231089999994" data-y="1.4485175000000003" cx="140.6267644924905" cy="216.04590366126402" r="3" fill="hsl(328, 100%, 50%, 0.8)" />
13
+ x+" data-x="-2.4994231089999994" data-y="1.4485175000000003" cx="142.8964057073185" cy="217.36125319394677" r="3" fill="hsl(328, 100%, 50%, 0.8)" />
14
14
  </g>
15
15
  <g>
16
16
  <circle data-type="point" data-label="PIN1_PIN2.4
17
- x+" data-x="-2.4994231089999994" data-y="1.4485175000000003" cx="140.6267644924905" cy="216.04590366126402" r="3" fill="hsl(328, 100%, 50%, 0.8)" />
17
+ x+" data-x="-2.4994231089999994" data-y="1.4485175000000003" cx="142.8964057073185" cy="217.36125319394677" r="3" fill="hsl(328, 100%, 50%, 0.8)" />
18
18
  </g>
19
19
  <g>
20
20
  <circle data-type="point" data-label="PIN1_PIN3.1
21
- x-" data-x="-0.5005768910000006" data-y="1.4489565000000004" cx="284.0756716077238" cy="216.01439845108" r="3" fill="hsl(208, 100%, 50%, 0.8)" />
21
+ x-" data-x="-0.5005768910000006" data-y="1.4489565000000004" cx="284.5302284768321" cy="217.33014662474903" r="3" fill="hsl(208, 100%, 50%, 0.8)" />
22
22
  </g>
23
23
  <g>
24
24
  <circle data-type="point" data-label="PIN1_PIN3.2
25
- x-" data-x="-0.5005768910000006" data-y="1.4489565000000004" cx="284.0756716077238" cy="216.01439845108" r="3" fill="hsl(208, 100%, 50%, 0.8)" />
25
+ x-" data-x="-0.5005768910000006" data-y="1.4489565000000004" cx="284.5302284768321" cy="217.33014662474903" r="3" fill="hsl(208, 100%, 50%, 0.8)" />
26
26
  </g>
27
27
  <g>
28
28
  <circle data-type="point" data-label="PIN1_PIN3.3
29
- x+" data-x="0.5005768910000006" data-y="1.4485175000000003" cx="355.9243283922762" cy="216.04590366126402" r="3" fill="hsl(208, 100%, 50%, 0.8)" />
29
+ x+" data-x="0.5005768910000006" data-y="1.4485175000000003" cx="355.4697715231679" cy="217.36125319394677" r="3" fill="hsl(208, 100%, 50%, 0.8)" />
30
30
  </g>
31
31
  <g>
32
32
  <circle data-type="point" data-label="PIN1_PIN3.4
33
- x+" data-x="0.5005768910000006" data-y="1.4485175000000003" cx="355.9243283922762" cy="216.04590366126402" r="3" fill="hsl(208, 100%, 50%, 0.8)" />
33
+ x+" data-x="0.5005768910000006" data-y="1.4485175000000003" cx="355.4697715231679" cy="217.36125319394677" r="3" fill="hsl(208, 100%, 50%, 0.8)" />
34
34
  </g>
35
35
  <g>
36
36
  <circle data-type="point" data-label="PIN1_PIN4.1
37
- x-" data-x="2.4994231089999994" data-y="1.4489565000000004" cx="499.3732355075095" cy="216.01439845108" r="3" fill="hsl(88, 100%, 50%, 0.8)" />
37
+ x-" data-x="2.4994231089999994" data-y="1.4489565000000004" cx="497.10359429268146" cy="217.33014662474903" r="3" fill="hsl(88, 100%, 50%, 0.8)" />
38
38
  </g>
39
39
  <g>
40
40
  <circle data-type="point" data-label="PIN1_PIN4.2
41
- x-" data-x="2.4994231089999994" data-y="1.4489565000000004" cx="499.3732355075095" cy="216.01439845108" r="3" fill="hsl(88, 100%, 50%, 0.8)" />
41
+ x-" data-x="2.4994231089999994" data-y="1.4489565000000004" cx="497.10359429268146" cy="217.33014662474903" r="3" fill="hsl(88, 100%, 50%, 0.8)" />
42
42
  </g>
43
43
  <g>
44
44
  <circle data-type="point" data-label="PIN1_PIN4.3
45
- x+" data-x="3.5005768910000006" data-y="1.4485175000000003" cx="571.221892292062" cy="216.04590366126402" r="3" fill="hsl(88, 100%, 50%, 0.8)" />
45
+ x+" data-x="3.5005768910000006" data-y="1.4485175000000003" cx="568.0431373390173" cy="217.36125319394677" r="3" fill="hsl(88, 100%, 50%, 0.8)" />
46
46
  </g>
47
47
  <g>
48
48
  <circle data-type="point" data-label="PIN1_PIN4.4
49
- x+" data-x="3.5005768910000006" data-y="1.4485175000000003" cx="571.221892292062" cy="216.04590366126402" r="3" fill="hsl(88, 100%, 50%, 0.8)" />
49
+ x+" data-x="3.5005768910000006" data-y="1.4485175000000003" cx="568.0431373390173" cy="217.36125319394677" r="3" fill="hsl(88, 100%, 50%, 0.8)" />
50
50
  </g>
51
51
  <g>
52
52
  <circle data-type="point" data-label="PIN2_PIN3.1
53
- x-" data-x="-3.5005768910000006" data-y="-1.5510434999999996" cx="68.77810770793803" cy="431.31196235086577" r="3" fill="hsl(240, 100%, 50%, 0.8)" />
53
+ x-" data-x="-3.5005768910000006" data-y="-1.5510434999999996" cx="71.9568626609827" cy="429.90351244059843" r="3" fill="hsl(240, 100%, 50%, 0.8)" />
54
54
  </g>
55
55
  <g>
56
56
  <circle data-type="point" data-label="PIN2_PIN3.2
57
- x-" data-x="-3.5005768910000006" data-y="-1.5510434999999996" cx="68.77810770793803" cy="431.31196235086577" r="3" fill="hsl(240, 100%, 50%, 0.8)" />
57
+ x-" data-x="-3.5005768910000006" data-y="-1.5510434999999996" cx="71.9568626609827" cy="429.90351244059843" r="3" fill="hsl(240, 100%, 50%, 0.8)" />
58
58
  </g>
59
59
  <g>
60
60
  <circle data-type="point" data-label="PIN2_PIN3.3
61
- x+" data-x="-2.4994231089999994" data-y="-1.5514824999999997" cx="140.6267644924905" cy="431.34346756104975" r="3" fill="hsl(240, 100%, 50%, 0.8)" />
61
+ x+" data-x="-2.4994231089999994" data-y="-1.5514824999999997" cx="142.8964057073185" cy="429.93461900979617" r="3" fill="hsl(240, 100%, 50%, 0.8)" />
62
62
  </g>
63
63
  <g>
64
64
  <circle data-type="point" data-label="PIN2_PIN3.4
65
- x+" data-x="-2.4994231089999994" data-y="-1.5514824999999997" cx="140.6267644924905" cy="431.34346756104975" r="3" fill="hsl(240, 100%, 50%, 0.8)" />
65
+ x+" data-x="-2.4994231089999994" data-y="-1.5514824999999997" cx="142.8964057073185" cy="429.93461900979617" r="3" fill="hsl(240, 100%, 50%, 0.8)" />
66
66
  </g>
67
67
  <g>
68
68
  <circle data-type="point" data-label="PIN2_PIN4.1
69
- x-" data-x="-0.5005768910000006" data-y="-1.5510434999999996" cx="284.0756716077238" cy="431.31196235086577" r="3" fill="hsl(120, 100%, 50%, 0.8)" />
69
+ x-" data-x="-0.5005768910000006" data-y="-1.5510434999999996" cx="284.5302284768321" cy="429.90351244059843" r="3" fill="hsl(120, 100%, 50%, 0.8)" />
70
70
  </g>
71
71
  <g>
72
72
  <circle data-type="point" data-label="PIN2_PIN4.2
73
- x-" data-x="-0.5005768910000006" data-y="-1.5510434999999996" cx="284.0756716077238" cy="431.31196235086577" r="3" fill="hsl(120, 100%, 50%, 0.8)" />
73
+ x-" data-x="-0.5005768910000006" data-y="-1.5510434999999996" cx="284.5302284768321" cy="429.90351244059843" r="3" fill="hsl(120, 100%, 50%, 0.8)" />
74
74
  </g>
75
75
  <g>
76
76
  <circle data-type="point" data-label="PIN2_PIN4.3
77
- x+" data-x="0.5005768910000006" data-y="-1.5514824999999997" cx="355.9243283922762" cy="431.34346756104975" r="3" fill="hsl(120, 100%, 50%, 0.8)" />
77
+ x+" data-x="0.5005768910000006" data-y="-1.5514824999999997" cx="355.4697715231679" cy="429.93461900979617" r="3" fill="hsl(120, 100%, 50%, 0.8)" />
78
78
  </g>
79
79
  <g>
80
80
  <circle data-type="point" data-label="PIN2_PIN4.4
81
- x+" data-x="0.5005768910000006" data-y="-1.5514824999999997" cx="355.9243283922762" cy="431.34346756104975" r="3" fill="hsl(120, 100%, 50%, 0.8)" />
81
+ x+" data-x="0.5005768910000006" data-y="-1.5514824999999997" cx="355.4697715231679" cy="429.93461900979617" r="3" fill="hsl(120, 100%, 50%, 0.8)" />
82
82
  </g>
83
83
  <g>
84
84
  <circle data-type="point" data-label="PIN3_PIN4.1
85
- x-" data-x="2.4994231089999994" data-y="-1.5510434999999996" cx="499.3732355075095" cy="431.31196235086577" r="3" fill="hsl(152, 100%, 50%, 0.8)" />
85
+ x-" data-x="2.4994231089999994" data-y="-1.5510434999999996" cx="497.10359429268146" cy="429.90351244059843" r="3" fill="hsl(152, 100%, 50%, 0.8)" />
86
86
  </g>
87
87
  <g>
88
88
  <circle data-type="point" data-label="PIN3_PIN4.2
89
- x-" data-x="2.4994231089999994" data-y="-1.5510434999999996" cx="499.3732355075095" cy="431.31196235086577" r="3" fill="hsl(152, 100%, 50%, 0.8)" />
89
+ x-" data-x="2.4994231089999994" data-y="-1.5510434999999996" cx="497.10359429268146" cy="429.90351244059843" r="3" fill="hsl(152, 100%, 50%, 0.8)" />
90
90
  </g>
91
91
  <g>
92
92
  <circle data-type="point" data-label="PIN3_PIN4.3
93
- x+" data-x="3.5005768910000006" data-y="-1.5514824999999997" cx="571.221892292062" cy="431.34346756104975" r="3" fill="hsl(152, 100%, 50%, 0.8)" />
93
+ x+" data-x="3.5005768910000006" data-y="-1.5514824999999997" cx="568.0431373390173" cy="429.93461900979617" r="3" fill="hsl(152, 100%, 50%, 0.8)" />
94
94
  </g>
95
95
  <g>
96
96
  <circle data-type="point" data-label="PIN3_PIN4.4
97
- x+" data-x="3.5005768910000006" data-y="-1.5514824999999997" cx="571.221892292062" cy="431.34346756104975" r="3" fill="hsl(152, 100%, 50%, 0.8)" />
97
+ x+" data-x="3.5005768910000006" data-y="-1.5514824999999997" cx="568.0431373390173" cy="429.93461900979617" r="3" fill="hsl(152, 100%, 50%, 0.8)" />
98
98
  </g>
99
99
  <g>
100
- <circle data-type="point" data-label="" data-x="-3.5005768910000006" data-y="1.4489565000000004" cx="68.77810770793803" cy="216.01439845108" r="3" fill="hsl(40, 100%, 50%, 0.9)" />
100
+ <circle data-type="point" data-label="" data-x="-3.5005768910000006" data-y="1.4489565000000004" cx="71.9568626609827" cy="217.33014662474903" r="3" fill="hsl(40, 100%, 50%, 0.9)" />
101
101
  </g>
102
102
  <g>
103
- <circle data-type="point" data-label="" data-x="-0.5005768910000006" data-y="1.4489565000000004" cx="284.0756716077238" cy="216.01439845108" r="3" fill="hsl(40, 100%, 50%, 0.9)" />
103
+ <circle data-type="point" data-label="" data-x="-0.5005768910000006" data-y="1.4489565000000004" cx="284.5302284768321" cy="217.33014662474903" r="3" fill="hsl(40, 100%, 50%, 0.9)" />
104
104
  </g>
105
105
  <g>
106
- <circle data-type="point" data-label="" data-x="2.4994231089999994" data-y="1.4489565000000004" cx="499.3732355075095" cy="216.01439845108" r="3" fill="hsl(40, 100%, 50%, 0.9)" />
106
+ <circle data-type="point" data-label="" data-x="2.4994231089999994" data-y="1.4489565000000004" cx="497.10359429268146" cy="217.33014662474903" r="3" fill="hsl(40, 100%, 50%, 0.9)" />
107
107
  </g>
108
108
  <g>
109
- <circle data-type="point" data-label="" data-x="-3.5005768910000006" data-y="1.4489565000000004" cx="68.77810770793803" cy="216.01439845108" r="3" fill="hsl(40, 100%, 50%, 0.9)" />
109
+ <circle data-type="point" data-label="" data-x="-3.5005768910000006" data-y="1.4489565000000004" cx="71.9568626609827" cy="217.33014662474903" r="3" fill="hsl(40, 100%, 50%, 0.9)" />
110
110
  </g>
111
111
  <g>
112
- <circle data-type="point" data-label="" data-x="-3.5005768910000006" data-y="-1.5510434999999996" cx="68.77810770793803" cy="431.31196235086577" r="3" fill="hsl(40, 100%, 50%, 0.9)" />
112
+ <circle data-type="point" data-label="" data-x="-3.5005768910000006" data-y="-1.5510434999999996" cx="71.9568626609827" cy="429.90351244059843" r="3" fill="hsl(40, 100%, 50%, 0.9)" />
113
113
  </g>
114
114
  <g>
115
- <circle data-type="point" data-label="" data-x="-0.5005768910000006" data-y="-1.5510434999999996" cx="284.0756716077238" cy="431.31196235086577" r="3" fill="hsl(40, 100%, 50%, 0.9)" />
115
+ <circle data-type="point" data-label="" data-x="-0.5005768910000006" data-y="-1.5510434999999996" cx="284.5302284768321" cy="429.90351244059843" r="3" fill="hsl(40, 100%, 50%, 0.9)" />
116
116
  </g>
117
117
  <g>
118
- <circle data-type="point" data-label="" data-x="0.5005768910000006" data-y="1.4485175000000003" cx="355.9243283922762" cy="216.04590366126402" r="3" fill="hsl(40, 100%, 50%, 0.9)" />
118
+ <circle data-type="point" data-label="" data-x="0.5005768910000006" data-y="1.4485175000000003" cx="355.4697715231679" cy="217.36125319394677" r="3" fill="hsl(40, 100%, 50%, 0.9)" />
119
119
  </g>
120
120
  <g>
121
- <circle data-type="point" data-label="" data-x="-2.4994231089999994" data-y="-1.5514824999999997" cx="140.6267644924905" cy="431.34346756104975" r="3" fill="hsl(40, 100%, 50%, 0.9)" />
121
+ <circle data-type="point" data-label="" data-x="-2.4994231089999994" data-y="-1.5514824999999997" cx="142.8964057073185" cy="429.93461900979617" r="3" fill="hsl(40, 100%, 50%, 0.9)" />
122
122
  </g>
123
123
  <g>
124
- <circle data-type="point" data-label="" data-x="3.5005768910000006" data-y="-1.5514824999999997" cx="571.221892292062" cy="431.34346756104975" r="3" fill="hsl(40, 100%, 50%, 0.9)" />
124
+ <circle data-type="point" data-label="" data-x="3.5005768910000006" data-y="-1.5514824999999997" cx="568.0431373390173" cy="429.93461900979617" r="3" fill="hsl(40, 100%, 50%, 0.9)" />
125
125
  </g>
126
126
  <g>
127
- <circle data-type="point" data-label="" data-x="3.5005768910000006" data-y="1.4485175000000003" cx="571.221892292062" cy="216.04590366126402" r="3" fill="hsl(40, 100%, 50%, 0.9)" />
127
+ <circle data-type="point" data-label="" data-x="3.5005768910000006" data-y="1.4485175000000003" cx="568.0431373390173" cy="217.36125319394677" r="3" fill="hsl(40, 100%, 50%, 0.9)" />
128
128
  </g>
129
129
  <g>
130
- <circle data-type="point" data-label="" data-x="0.5005768910000006" data-y="-1.5514824999999997" cx="355.9243283922762" cy="431.34346756104975" r="3" fill="hsl(40, 100%, 50%, 0.9)" />
130
+ <circle data-type="point" data-label="" data-x="0.5005768910000006" data-y="-1.5514824999999997" cx="355.4697715231679" cy="429.93461900979617" r="3" fill="hsl(40, 100%, 50%, 0.9)" />
131
131
  </g>
132
132
  <g>
133
- <circle data-type="point" data-label="" data-x="3.5005768910000006" data-y="-1.5514824999999997" cx="571.221892292062" cy="431.34346756104975" r="3" fill="hsl(40, 100%, 50%, 0.9)" />
133
+ <circle data-type="point" data-label="" data-x="3.5005768910000006" data-y="-1.5514824999999997" cx="568.0431373390173" cy="429.93461900979617" r="3" fill="hsl(40, 100%, 50%, 0.9)" />
134
134
  </g>
135
135
  <g>
136
- <polyline data-points="-3.5005768910000006,1.4489565000000004 -0.5005768910000006,1.4489565000000004" data-type="line" data-label="" points="68.77810770793803,216.01439845108 284.0756716077238,216.01439845108" fill="none" stroke="hsl(340, 100%, 50%, 0.8)" stroke-width="1" stroke-dasharray="4 2" />
136
+ <polyline data-points="-3.5005768910000006,1.4489565000000004 -0.5005768910000006,1.4489565000000004" data-type="line" data-label="" points="71.9568626609827,217.33014662474903 284.5302284768321,217.33014662474903" fill="none" stroke="hsl(340, 100%, 50%, 0.8)" stroke-width="1" stroke-dasharray="4 2" />
137
137
  </g>
138
138
  <g>
139
- <polyline data-points="-3.5005768910000006,1.4489565000000004 2.4994231089999994,1.4489565000000004" data-type="line" data-label="" points="68.77810770793803,216.01439845108 499.3732355075095,216.01439845108" fill="none" stroke="hsl(340, 100%, 50%, 0.8)" stroke-width="1" stroke-dasharray="4 2" />
139
+ <polyline data-points="-3.5005768910000006,1.4489565000000004 2.4994231089999994,1.4489565000000004" data-type="line" data-label="" points="71.9568626609827,217.33014662474903 497.10359429268146,217.33014662474903" fill="none" stroke="hsl(340, 100%, 50%, 0.8)" stroke-width="1" stroke-dasharray="4 2" />
140
140
  </g>
141
141
  <g>
142
- <polyline data-points="-0.5005768910000006,1.4489565000000004 2.4994231089999994,1.4489565000000004" data-type="line" data-label="" points="284.0756716077238,216.01439845108 499.3732355075095,216.01439845108" fill="none" stroke="hsl(340, 100%, 50%, 0.8)" stroke-width="1" stroke-dasharray="4 2" />
142
+ <polyline data-points="-0.5005768910000006,1.4489565000000004 2.4994231089999994,1.4489565000000004" data-type="line" data-label="" points="284.5302284768321,217.33014662474903 497.10359429268146,217.33014662474903" fill="none" stroke="hsl(340, 100%, 50%, 0.8)" stroke-width="1" stroke-dasharray="4 2" />
143
143
  </g>
144
144
  <g>
145
- <polyline data-points="-3.5005768910000006,1.4489565000000004 -3.5005768910000006,-1.5510434999999996" data-type="line" data-label="" points="68.77810770793803,216.01439845108 68.77810770793803,431.31196235086577" fill="none" stroke="hsl(341, 100%, 50%, 0.8)" stroke-width="1" stroke-dasharray="4 2" />
145
+ <polyline data-points="-3.5005768910000006,1.4489565000000004 -3.5005768910000006,-1.5510434999999996" data-type="line" data-label="" points="71.9568626609827,217.33014662474903 71.9568626609827,429.90351244059843" fill="none" stroke="hsl(341, 100%, 50%, 0.8)" stroke-width="1" stroke-dasharray="4 2" />
146
146
  </g>
147
147
  <g>
148
- <polyline data-points="-3.5005768910000006,1.4489565000000004 -0.5005768910000006,-1.5510434999999996" data-type="line" data-label="" points="68.77810770793803,216.01439845108 284.0756716077238,431.31196235086577" fill="none" stroke="hsl(341, 100%, 50%, 0.8)" stroke-width="1" stroke-dasharray="4 2" />
148
+ <polyline data-points="-3.5005768910000006,1.4489565000000004 -0.5005768910000006,-1.5510434999999996" data-type="line" data-label="" points="71.9568626609827,217.33014662474903 284.5302284768321,429.90351244059843" fill="none" stroke="hsl(341, 100%, 50%, 0.8)" stroke-width="1" stroke-dasharray="4 2" />
149
149
  </g>
150
150
  <g>
151
- <polyline data-points="-3.5005768910000006,-1.5510434999999996 -0.5005768910000006,-1.5510434999999996" data-type="line" data-label="" points="68.77810770793803,431.31196235086577 284.0756716077238,431.31196235086577" fill="none" stroke="hsl(341, 100%, 50%, 0.8)" stroke-width="1" stroke-dasharray="4 2" />
151
+ <polyline data-points="-3.5005768910000006,-1.5510434999999996 -0.5005768910000006,-1.5510434999999996" data-type="line" data-label="" points="71.9568626609827,429.90351244059843 284.5302284768321,429.90351244059843" fill="none" stroke="hsl(341, 100%, 50%, 0.8)" stroke-width="1" stroke-dasharray="4 2" />
152
152
  </g>
153
153
  <g>
154
- <polyline data-points="0.5005768910000006,1.4485175000000003 -2.4994231089999994,-1.5514824999999997" data-type="line" data-label="" points="355.9243283922762,216.04590366126402 140.6267644924905,431.34346756104975" fill="none" stroke="hsl(342, 100%, 50%, 0.8)" stroke-width="1" stroke-dasharray="4 2" />
154
+ <polyline data-points="0.5005768910000006,1.4485175000000003 -2.4994231089999994,-1.5514824999999997" data-type="line" data-label="" points="355.4697715231679,217.36125319394677 142.8964057073185,429.93461900979617" fill="none" stroke="hsl(342, 100%, 50%, 0.8)" stroke-width="1" stroke-dasharray="4 2" />
155
155
  </g>
156
156
  <g>
157
- <polyline data-points="0.5005768910000006,1.4485175000000003 3.5005768910000006,-1.5514824999999997" data-type="line" data-label="" points="355.9243283922762,216.04590366126402 571.221892292062,431.34346756104975" fill="none" stroke="hsl(342, 100%, 50%, 0.8)" stroke-width="1" stroke-dasharray="4 2" />
157
+ <polyline data-points="0.5005768910000006,1.4485175000000003 3.5005768910000006,-1.5514824999999997" data-type="line" data-label="" points="355.4697715231679,217.36125319394677 568.0431373390173,429.93461900979617" fill="none" stroke="hsl(342, 100%, 50%, 0.8)" stroke-width="1" stroke-dasharray="4 2" />
158
158
  </g>
159
159
  <g>
160
- <polyline data-points="-2.4994231089999994,-1.5514824999999997 3.5005768910000006,-1.5514824999999997" data-type="line" data-label="" points="140.6267644924905,431.34346756104975 571.221892292062,431.34346756104975" fill="none" stroke="hsl(342, 100%, 50%, 0.8)" stroke-width="1" stroke-dasharray="4 2" />
160
+ <polyline data-points="-2.4994231089999994,-1.5514824999999997 3.5005768910000006,-1.5514824999999997" data-type="line" data-label="" points="142.8964057073185,429.93461900979617 568.0431373390173,429.93461900979617" fill="none" stroke="hsl(342, 100%, 50%, 0.8)" stroke-width="1" stroke-dasharray="4 2" />
161
161
  </g>
162
162
  <g>
163
- <polyline data-points="3.5005768910000006,1.4485175000000003 0.5005768910000006,-1.5514824999999997" data-type="line" data-label="" points="571.221892292062,216.04590366126402 355.9243283922762,431.34346756104975" fill="none" stroke="hsl(343, 100%, 50%, 0.8)" stroke-width="1" stroke-dasharray="4 2" />
163
+ <polyline data-points="3.5005768910000006,1.4485175000000003 0.5005768910000006,-1.5514824999999997" data-type="line" data-label="" points="568.0431373390173,217.36125319394677 355.4697715231679,429.93461900979617" fill="none" stroke="hsl(343, 100%, 50%, 0.8)" stroke-width="1" stroke-dasharray="4 2" />
164
164
  </g>
165
165
  <g>
166
- <polyline data-points="3.5005768910000006,1.4485175000000003 3.5005768910000006,-1.5514824999999997" data-type="line" data-label="" points="571.221892292062,216.04590366126402 571.221892292062,431.34346756104975" fill="none" stroke="hsl(343, 100%, 50%, 0.8)" stroke-width="1" stroke-dasharray="4 2" />
166
+ <polyline data-points="3.5005768910000006,1.4485175000000003 3.5005768910000006,-1.5514824999999997" data-type="line" data-label="" points="568.0431373390173,217.36125319394677 568.0431373390173,429.93461900979617" fill="none" stroke="hsl(343, 100%, 50%, 0.8)" stroke-width="1" stroke-dasharray="4 2" />
167
167
  </g>
168
168
  <g>
169
- <polyline data-points="0.5005768910000006,-1.5514824999999997 3.5005768910000006,-1.5514824999999997" data-type="line" data-label="" points="355.9243283922762,431.34346756104975 571.221892292062,431.34346756104975" fill="none" stroke="hsl(343, 100%, 50%, 0.8)" stroke-width="1" stroke-dasharray="4 2" />
169
+ <polyline data-points="0.5005768910000006,-1.5514824999999997 3.5005768910000006,-1.5514824999999997" data-type="line" data-label="" points="355.4697715231679,429.93461900979617 568.0431373390173,429.93461900979617" fill="none" stroke="hsl(343, 100%, 50%, 0.8)" stroke-width="1" stroke-dasharray="4 2" />
170
170
  </g>
171
171
  <g>
172
- <rect data-type="rect" data-label="schematic_component_0" data-x="-3" data-y="1.5" x="68.77810770793803" y="196.23127943116586" width="71.84865678455247" height="32.23987723788255" fill="hsl(24, 100%, 50%, 0.8)" stroke="black" stroke-width="0.013934203182142859" />
172
+ <rect data-type="rect" data-label="schematic_component_0" data-x="-3" data-y="1.5" x="71.9568626609827" y="197.79734690223955" width="70.93954304633581" height="31.831940379671494" fill="hsl(24, 100%, 50%, 0.8)" stroke="black" stroke-width="0.014112774610714288" />
173
173
  </g>
174
174
  <g>
175
- <rect data-type="rect" data-label="schematic_component_1" data-x="0" data-y="1.5" x="284.0756716077238" y="196.23127943116586" width="71.84865678455242" height="32.23987723788255" fill="hsl(24, 100%, 50%, 0.8)" stroke="black" stroke-width="0.013934203182142859" />
175
+ <rect data-type="rect" data-label="schematic_component_1" data-x="0" data-y="1.5" x="284.5302284768321" y="197.79734690223955" width="70.93954304633576" height="31.831940379671494" fill="hsl(24, 100%, 50%, 0.8)" stroke="black" stroke-width="0.014112774610714288" />
176
176
  </g>
177
177
  <g>
178
- <rect data-type="rect" data-label="schematic_component_2" data-x="3" data-y="1.5" x="499.3732355075095" y="196.23127943116586" width="71.84865678455247" height="32.23987723788255" fill="hsl(24, 100%, 50%, 0.8)" stroke="black" stroke-width="0.013934203182142859" />
178
+ <rect data-type="rect" data-label="schematic_component_2" data-x="3" data-y="1.5" x="497.10359429268146" y="197.79734690223955" width="70.93954304633587" height="31.831940379671494" fill="hsl(24, 100%, 50%, 0.8)" stroke="black" stroke-width="0.014112774610714288" />
179
179
  </g>
180
180
  <g>
181
- <rect data-type="rect" data-label="schematic_component_3" data-x="-3" data-y="-1.5" x="68.77810770793803" y="411.5288433309516" width="71.84865678455247" height="32.23987723788258" fill="hsl(24, 100%, 50%, 0.8)" stroke="black" stroke-width="0.013934203182142859" />
181
+ <rect data-type="rect" data-label="schematic_component_3" data-x="-3" data-y="-1.5" x="71.9568626609827" y="410.37071271808895" width="70.93954304633581" height="31.831940379671494" fill="hsl(24, 100%, 50%, 0.8)" stroke="black" stroke-width="0.014112774610714288" />
182
182
  </g>
183
183
  <g>
184
- <rect data-type="rect" data-label="schematic_component_4" data-x="0" data-y="-1.5" x="284.0756716077238" y="411.5288433309516" width="71.84865678455242" height="32.23987723788258" fill="hsl(24, 100%, 50%, 0.8)" stroke="black" stroke-width="0.013934203182142859" />
184
+ <rect data-type="rect" data-label="schematic_component_4" data-x="0" data-y="-1.5" x="284.5302284768321" y="410.37071271808895" width="70.93954304633576" height="31.831940379671494" fill="hsl(24, 100%, 50%, 0.8)" stroke="black" stroke-width="0.014112774610714288" />
185
185
  </g>
186
186
  <g>
187
- <rect data-type="rect" data-label="schematic_component_5" data-x="3" data-y="-1.5" x="499.3732355075095" y="411.5288433309516" width="71.84865678455247" height="32.23987723788258" fill="hsl(24, 100%, 50%, 0.8)" stroke="black" stroke-width="0.013934203182142859" />
187
+ <rect data-type="rect" data-label="schematic_component_5" data-x="3" data-y="-1.5" x="497.10359429268146" y="410.37071271808895" width="70.93954304633587" height="31.831940379671494" fill="hsl(24, 100%, 50%, 0.8)" stroke="black" stroke-width="0.014112774610714288" />
188
188
  </g>
189
189
  <g>
190
- <rect data-type="rect" data-label="" data-x="-3.7015768910000006" data-y="1.4489565000000004" x="40" y="208.8378129877538" width="28.706341853304792" height="14.35317092665241" fill="hsl(40, 100%, 50%, 0.35)" stroke="black" stroke-width="0.013934203182142859" />
190
+ <rect data-type="rect" data-label="" data-x="-3.7265768910000006" data-y="1.4489565000000004" x="40" y="210.24436776422073" width="31.88600487237744" height="14.171557721056615" fill="hsl(40, 100%, 50%, 0.35)" stroke="black" stroke-width="0.014112774610714288" />
191
191
  </g>
192
192
  <g>
193
- <rect data-type="rect" data-label="" data-x="-0.7015768910000005" data-y="1.4489565000000004" x="255.29756389978576" y="208.8378129877538" width="28.706341853304764" height="14.35317092665241" fill="hsl(40, 100%, 50%, 0.35)" stroke="black" stroke-width="0.013934203182142859" />
193
+ <rect data-type="rect" data-label="" data-x="-0.7265768910000006" data-y="1.4489565000000004" x="252.5733658158494" y="210.24436776422073" width="31.88600487237744" height="14.171557721056615" fill="hsl(40, 100%, 50%, 0.35)" stroke="black" stroke-width="0.014112774610714288" />
194
194
  </g>
195
195
  <g>
196
- <rect data-type="rect" data-label="" data-x="2.2984231089999994" data-y="1.4489565000000004" x="470.59512779957146" y="208.8378129877538" width="28.706341853304764" height="14.35317092665241" fill="hsl(40, 100%, 50%, 0.35)" stroke="black" stroke-width="0.013934203182142859" />
196
+ <rect data-type="rect" data-label="" data-x="2.2734231089999994" data-y="1.4489565000000004" x="465.1467316316988" y="210.24436776422073" width="31.88600487237744" height="14.171557721056615" fill="hsl(40, 100%, 50%, 0.35)" stroke="black" stroke-width="0.014112774610714288" />
197
197
  </g>
198
198
  <g>
199
- <rect data-type="rect" data-label="" data-x="-3.7015768910000006" data-y="1.4489565000000004" x="40" y="208.8378129877538" width="28.706341853304792" height="14.35317092665241" fill="hsl(40, 100%, 50%, 0.35)" stroke="black" stroke-width="0.013934203182142859" />
199
+ <rect data-type="rect" data-label="" data-x="-3.7265768910000006" data-y="1.4489565000000004" x="40" y="210.24436776422073" width="31.88600487237744" height="14.171557721056615" fill="hsl(40, 100%, 50%, 0.35)" stroke="black" stroke-width="0.014112774610714288" />
200
200
  </g>
201
201
  <g>
202
- <rect data-type="rect" data-label="" data-x="-3.7015768910000006" data-y="-1.5510434999999996" x="40" y="424.13537688753956" width="28.706341853304792" height="14.353170926652354" fill="hsl(40, 100%, 50%, 0.35)" stroke="black" stroke-width="0.013934203182142859" />
202
+ <rect data-type="rect" data-label="" data-x="-3.7265768910000006" data-y="-1.5510434999999996" x="40" y="422.8177335800701" width="31.88600487237744" height="14.171557721056615" fill="hsl(40, 100%, 50%, 0.35)" stroke="black" stroke-width="0.014112774610714288" />
203
203
  </g>
204
204
  <g>
205
- <rect data-type="rect" data-label="" data-x="-0.7015768910000005" data-y="-1.5510434999999996" x="255.29756389978576" y="424.13537688753956" width="28.706341853304764" height="14.353170926652354" fill="hsl(40, 100%, 50%, 0.35)" stroke="black" stroke-width="0.013934203182142859" />
205
+ <rect data-type="rect" data-label="" data-x="-0.7265768910000006" data-y="-1.5510434999999996" x="252.5733658158494" y="422.8177335800701" width="31.88600487237744" height="14.171557721056615" fill="hsl(40, 100%, 50%, 0.35)" stroke="black" stroke-width="0.014112774610714288" />
206
206
  </g>
207
207
  <g>
208
- <rect data-type="rect" data-label="" data-x="0.7015768910000005" data-y="1.4485175000000003" x="355.9960942469095" y="208.86931819793782" width="28.706341853304764" height="14.353170926652382" fill="hsl(40, 100%, 50%, 0.35)" stroke="black" stroke-width="0.013934203182142859" />
208
+ <rect data-type="rect" data-label="" data-x="0.7265768910000006" data-y="1.4485175000000003" x="355.54062931177316" y="210.27547433341846" width="31.88600487237744" height="14.171557721056615" fill="hsl(40, 100%, 50%, 0.35)" stroke="black" stroke-width="0.014112774610714288" />
209
209
  </g>
210
210
  <g>
211
- <rect data-type="rect" data-label="" data-x="-2.2984231089999994" data-y="-1.5514824999999997" x="140.69853034712375" y="424.16688209772354" width="28.706341853304792" height="14.35317092665241" fill="hsl(40, 100%, 50%, 0.35)" stroke="black" stroke-width="0.013934203182142859" />
211
+ <rect data-type="rect" data-label="" data-x="-2.2734231089999994" data-y="-1.5514824999999997" x="142.96726349592376" y="422.84884014926786" width="31.88600487237744" height="14.171557721056615" fill="hsl(40, 100%, 50%, 0.35)" stroke="black" stroke-width="0.014112774610714288" />
212
212
  </g>
213
213
  <g>
214
- <rect data-type="rect" data-label="" data-x="3.7015768910000006" data-y="-1.5514824999999997" x="571.2936581466952" y="424.16688209772354" width="28.70634185330482" height="14.35317092665241" fill="hsl(40, 100%, 50%, 0.35)" stroke="black" stroke-width="0.013934203182142859" />
214
+ <rect data-type="rect" data-label="" data-x="3.7265768910000006" data-y="-1.5514824999999997" x="568.1139951276225" y="422.84884014926786" width="31.886004872377498" height="14.171557721056615" fill="hsl(40, 100%, 50%, 0.35)" stroke="black" stroke-width="0.014112774610714288" />
215
215
  </g>
216
216
  <g>
217
- <rect data-type="rect" data-label="" data-x="3.7015768910000006" data-y="1.4485175000000003" x="571.2936581466952" y="208.86931819793782" width="28.70634185330482" height="14.353170926652382" fill="hsl(40, 100%, 50%, 0.35)" stroke="black" stroke-width="0.013934203182142859" />
217
+ <rect data-type="rect" data-label="" data-x="3.7265768910000006" data-y="1.4485175000000003" x="568.1139951276225" y="210.27547433341846" width="31.886004872377498" height="14.171557721056615" fill="hsl(40, 100%, 50%, 0.35)" stroke="black" stroke-width="0.014112774610714288" />
218
218
  </g>
219
219
  <g>
220
- <rect data-type="rect" data-label="" data-x="0.7015768910000005" data-y="-1.5514824999999997" x="355.9960942469095" y="424.16688209772354" width="28.706341853304764" height="14.35317092665241" fill="hsl(40, 100%, 50%, 0.35)" stroke="black" stroke-width="0.013934203182142859" />
220
+ <rect data-type="rect" data-label="" data-x="0.7265768910000006" data-y="-1.5514824999999997" x="355.54062931177316" y="422.84884014926786" width="31.88600487237744" height="14.171557721056615" fill="hsl(40, 100%, 50%, 0.35)" stroke="black" stroke-width="0.014112774610714288" />
221
221
  </g>
222
222
  <g>
223
- <rect data-type="rect" data-label="" data-x="3.7015768910000006" data-y="-1.5514824999999997" x="571.2936581466952" y="424.16688209772354" width="28.70634185330482" height="14.35317092665241" fill="hsl(40, 100%, 50%, 0.35)" stroke="black" stroke-width="0.013934203182142859" />
223
+ <rect data-type="rect" data-label="" data-x="3.7265768910000006" data-y="-1.5514824999999997" x="568.1139951276225" y="422.84884014926786" width="31.886004872377498" height="14.171557721056615" fill="hsl(40, 100%, 50%, 0.35)" stroke="black" stroke-width="0.014112774610714288" />
224
224
  </g>
225
225
  <g id="crosshair" style="display: none">
226
226
  <line id="crosshair-h" y1="0" y2="640" stroke="#666" stroke-width="0.5" />
@@ -250,11 +250,11 @@ x+" data-x="3.5005768910000006" data-y="-1.5514824999999997" cx="571.22189229206
250
250
 
251
251
  // Calculate real coordinates using inverse transformation
252
252
  const matrix = {
253
- "a": 71.76585463326191,
253
+ "a": 70.85778860528313,
254
254
  "c": 0,
255
255
  "e": 320,
256
256
  "b": 0,
257
- "d": -71.76585463326191,
257
+ "d": -70.85778860528313,
258
258
  "f": 320
259
259
  };
260
260
  // Manually invert and apply the affine transform
@@ -2,30 +2,30 @@
2
2
  <rect width="100%" height="100%" fill="white" />
3
3
  <g>
4
4
  <circle data-type="point" data-label="Q1.1
5
- y+" data-x="0.30397715550000004" data-y="0.5800832909999993" cx="392.558734745331" cy="211.4140028125427" r="3" fill="hsl(315, 100%, 50%, 0.8)" />
5
+ y+" data-x="0.30397715550000004" data-y="0.5800832909999993" cx="390.7539406701768" cy="221.0795201051653" r="3" fill="hsl(315, 100%, 50%, 0.8)" />
6
6
  </g>
7
7
  <g>
8
8
  <circle data-type="point" data-label="Q1.2
9
- y-" data-x="0.31067575550000137" data-y="-0.5800832909999993" cx="394.4724578107315" cy="542.8619990624858" r="3" fill="hsl(316, 100%, 50%, 0.8)" />
9
+ y-" data-x="0.31067575550000137" data-y="-0.5800832909999993" cx="392.6200626292179" cy="544.283224583026" r="3" fill="hsl(316, 100%, 50%, 0.8)" />
10
10
  </g>
11
11
  <g>
12
12
  <circle data-type="point" data-label="Q1.3
13
- x-" data-x="-0.4467558855000001" data-y="-0.10250625000000019" cx="178.0818087429264" cy="406.4230119805196" r="3" fill="hsl(317, 100%, 50%, 0.8)" />
13
+ x-" data-x="-0.4467558855000001" data-y="-0.10250625000000019" cx="181.61181945268248" cy="411.2379608945266" r="3" fill="hsl(317, 100%, 50%, 0.8)" />
14
14
  </g>
15
15
  <g>
16
- <circle data-type="point" data-label="" data-x="0.30397715550000004" data-y="0.7800832909999994" cx="392.558734745331" cy="154.27600187502844" r="3" fill="hsl(40, 100%, 50%, 0.9)" />
16
+ <circle data-type="point" data-label="" data-x="0.30397715550000004" data-y="0.7800832909999994" cx="390.7539406701768" cy="165.36274468819138" r="3" fill="hsl(40, 100%, 50%, 0.9)" />
17
17
  </g>
18
18
  <g>
19
- <polyline data-points="0.30397715550000004,0.5800832909999993 0.31067575550000137,-0.5800832909999993" data-type="line" data-label="" points="392.558734745331,211.4140028125427 394.4724578107315,542.8619990624858" fill="none" stroke="hsl(73, 100%, 50%, 0.8)" stroke-width="1" stroke-dasharray="4 2" />
19
+ <polyline data-points="0.30397715550000004,0.5800832909999993 0.31067575550000137,-0.5800832909999993" data-type="line" data-label="" points="390.7539406701768,221.0795201051653 392.6200626292179,544.283224583026" fill="none" stroke="hsl(73, 100%, 50%, 0.8)" stroke-width="1" stroke-dasharray="4 2" />
20
20
  </g>
21
21
  <g>
22
- <polyline data-points="0.30397715550000004,0.5800832909999993 0.30397715550000004,0.7800832909999994 0.5467558855000001,0.7800832909999994 0.5467558855000001,-0.7800832909999995 0.31067575550000137,-0.7800832909999995 0.31067575550000137,-0.5800832909999993" data-type="line" data-label="" points="392.558734745331,211.4140028125427 392.558734745331,154.27600187502844 461.91819125707354,154.27600187502844 461.91819125707354,600 394.4724578107315,600 394.4724578107315,542.8619990624858" fill="none" stroke="purple" stroke-width="1" />
22
+ <polyline data-points="0.30397715550000004,0.5800832909999993 0.30397715550000004,0.7800832909999994 0.5467558855000001,0.7800832909999994 0.5467558855000001,-0.7800832909999995 0.31067575550000137,-0.7800832909999995 0.31067575550000137,-0.5800832909999993" data-type="line" data-label="" points="390.7539406701768,221.0795201051653 390.7539406701768,165.36274468819138 458.3881805473175,165.36274468819138 458.3881805473175,600 392.6200626292179,600 392.6200626292179,544.283224583026" fill="none" stroke="purple" stroke-width="1" />
23
23
  </g>
24
24
  <g>
25
- <rect data-type="rect" data-label="schematic_component_0" data-x="0" data-y="0" x="178.0818087429264" y="211.4140028125427" width="255.26738204539004" height="331.4479962499431" fill="hsl(24, 100%, 50%, 0.8)" stroke="black" stroke-width="0.003500297467857141" />
25
+ <rect data-type="rect" data-label="schematic_component_0" data-x="0" data-y="0" x="181.61181945268248" y="221.0795201051653" width="248.9179733861481" height="323.2037044778607" fill="hsl(24, 100%, 50%, 0.8)" stroke="black" stroke-width="0.003589583182142856" />
26
26
  </g>
27
27
  <g>
28
- <rect data-type="rect" data-label="" data-x="0.30397715550000004" data-y="0.9800832909999995" x="363.98973427657387" y="40" width="57.13800093751422" height="114.27600187502841" fill="hsl(40, 100%, 50%, 0.35)" stroke="black" stroke-width="0.003500297467857141" />
28
+ <rect data-type="rect" data-label="" data-x="0.30397715550000004" data-y="1.0050832909999994" x="362.8955529616899" y="40.000000000000114" width="55.71677541697386" height="125.36274468819127" fill="hsl(40, 100%, 50%, 0.35)" stroke="black" stroke-width="0.003589583182142856" />
29
29
  </g>
30
30
  <g id="crosshair" style="display: none">
31
31
  <line id="crosshair-h" y1="0" y2="640" stroke="#666" stroke-width="0.5" />
@@ -55,12 +55,12 @@ x-" data-x="-0.4467558855000001" data-y="-0.10250625000000019" cx="178.081808742
55
55
 
56
56
  // Calculate real coordinates using inverse transformation
57
57
  const matrix = {
58
- "a": 285.69000468757116,
58
+ "a": 278.58387708486947,
59
59
  "c": 0,
60
- "e": 305.7154997656214,
60
+ "e": 306.07080614575653,
61
61
  "b": 0,
62
- "d": -285.69000468757116,
63
- "f": 377.1380009375142
62
+ "d": -278.58387708486947,
63
+ "f": 382.6813723440957
64
64
  };
65
65
  // Manually invert and apply the affine transform
66
66
  // Since we only use translate and scale, we can directly compute:
@@ -128,7 +128,7 @@ x+" data-x="2.52012455" data-y="0.9994877000000013" cx="507.7715439215686" cy="2
128
128
  <rect data-type="rect" data-label="schematic_component_1" data-x="2" data-y="1" x="393.54811333333333" y="185.61698666666672" width="114.22343058823526" height="60.13857568627441" fill="hsl(24, 100%, 50%, 0.8)" stroke="black" stroke-width="0.009107142857142857" />
129
129
  </g>
130
130
  <g>
131
- <rect data-type="rect" data-label="" data-x="2.6201245500000003" data-y="0.7994877000000014" x="507.77154392156865" y="215.74252705882338" width="21.960784313725526" height="43.921568627450995" fill="hsl(40, 100%, 50%, 0.35)" stroke="black" stroke-width="0.009107142857142857" />
131
+ <rect data-type="rect" data-label="" data-x="2.6201245500000003" data-y="0.7744877000000013" x="507.77154392156865" y="215.74252705882338" width="21.960784313725526" height="49.411764705882376" fill="hsl(40, 100%, 50%, 0.35)" stroke="black" stroke-width="0.009107142857142857" />
132
132
  </g>
133
133
  <g id="crosshair" style="display: none">
134
134
  <line id="crosshair-h" y1="0" y2="640" stroke="#666" stroke-width="0.5" />
@@ -2,37 +2,37 @@
2
2
  <rect width="100%" height="100%" fill="white" />
3
3
  <g>
4
4
  <circle data-type="point" data-label="R1.1
5
- x-" data-x="-3.5512907000000005" data-y="0.0002732499999993365" cx="62.695035460992926" cy="319.979328605201" r="3" fill="hsl(226, 100%, 50%, 0.8)" />
5
+ x-" data-x="-3.5512907000000005" data-y="0.0002732499999993365" cx="62.695035460992926" cy="318.8552397163121" r="3" fill="hsl(226, 100%, 50%, 0.8)" />
6
6
  </g>
7
7
  <g>
8
8
  <circle data-type="point" data-label="R1.2
9
- x+" data-x="-2.4487092999999995" data-y="-0.0002732499999993365" cx="146.10544869976368" cy="320.020671394799" r="3" fill="hsl(227, 100%, 50%, 0.8)" />
9
+ x+" data-x="-2.4487092999999995" data-y="-0.0002732499999993365" cx="146.10544869976368" cy="318.89658250591015" r="3" fill="hsl(227, 100%, 50%, 0.8)" />
10
10
  </g>
11
11
  <g>
12
12
  <circle data-type="point" data-label="C1.1
13
- x-" data-x="2.4487906999999995" data-y="-0.00027334999999961695" cx="516.6019026004727" cy="320.0206789598108" r="3" fill="hsl(121, 100%, 50%, 0.8)" />
13
+ x-" data-x="2.4487906999999995" data-y="-0.00027334999999961695" cx="516.6019026004727" cy="318.89659007092195" r="3" fill="hsl(121, 100%, 50%, 0.8)" />
14
14
  </g>
15
15
  <g>
16
16
  <circle data-type="point" data-label="C1.2
17
- x+" data-x="3.5512093000000005" data-y="0.00027334999999961695" cx="600" cy="319.9793210401892" r="3" fill="hsl(122, 100%, 50%, 0.8)" />
17
+ x+" data-x="3.5512093000000005" data-y="0.00027334999999961695" cx="600" cy="318.8552321513003" r="3" fill="hsl(122, 100%, 50%, 0.8)" />
18
18
  </g>
19
19
  <g>
20
- <circle data-type="point" data-label="" data-x="-3.7512907000000006" data-y="0.0002732499999993365" cx="47.565011820330994" cy="319.979328605201" r="3" fill="hsl(40, 100%, 50%, 0.9)" />
20
+ <circle data-type="point" data-label="" data-x="-3.7512907000000006" data-y="0.0002732499999993365" cx="47.565011820330994" cy="318.8552397163121" r="3" fill="hsl(40, 100%, 50%, 0.9)" />
21
21
  </g>
22
22
  <g>
23
- <polyline data-points="-3.5512907000000005,0.0002732499999993365 2.4487906999999995,-0.00027334999999961695" data-type="line" data-label="" points="62.695035460992926,319.979328605201 516.6019026004727,320.0206789598108" fill="none" stroke="hsl(72, 100%, 50%, 0.8)" stroke-width="1" />
23
+ <polyline data-points="-3.5512907000000005,0.0002732499999993365 2.4487906999999995,-0.00027334999999961695" data-type="line" data-label="" points="62.695035460992926,318.8552397163121 516.6019026004727,318.89659007092195" fill="none" stroke="hsl(72, 100%, 50%, 0.8)" stroke-width="1" />
24
24
  </g>
25
25
  <g>
26
- <polyline data-points="-3.5512907000000005,0.0002732499999993365 -3.7512907000000006,0.0002732499999993365 -3.7512907000000006,0.20027324999999935 2.2487906999999994,0.20027324999999935 2.2487906999999994,-0.00027334999999961695 2.4487906999999987,-0.00027334999999961695" data-type="line" data-label="" points="62.695035460992926,319.979328605201 47.565011820330994,319.979328605201 47.565011820330994,304.84930496453904 501.4718789598108,304.84930496453904 501.4718789598108,320.0206789598108 516.6019026004726,320.0206789598108" fill="none" stroke="purple" stroke-width="1" />
26
+ <polyline data-points="-3.5512907000000005,0.0002732499999993365 -3.7512907000000006,0.0002732499999993365 -3.7512907000000006,0.20027324999999935 2.2487906999999994,0.20027324999999935 2.2487906999999994,-0.00027334999999961695 2.4487906999999987,-0.00027334999999961695" data-type="line" data-label="" points="62.695035460992926,318.8552397163121 47.565011820330994,318.8552397163121 47.565011820330994,303.72521607565017 501.4718789598108,303.72521607565017 501.4718789598108,318.89659007092195 516.6019026004726,318.89659007092195" fill="none" stroke="purple" stroke-width="1" />
27
27
  </g>
28
28
  <g>
29
- <rect data-type="rect" data-label="schematic_component_0" data-x="-3" data-y="0" x="62.695035460992926" y="305.2894297872341" width="83.41041323877076" height="29.421140425531803" fill="hsl(24, 100%, 50%, 0.8)" stroke="black" stroke-width="0.013218750000000003" />
29
+ <rect data-type="rect" data-label="schematic_component_0" data-x="-3" data-y="0" x="62.695035460992926" y="304.1653408983452" width="83.41041323877076" height="29.421140425531803" fill="hsl(24, 100%, 50%, 0.8)" stroke="black" stroke-width="0.013218750000000003" />
30
30
  </g>
31
31
  <g>
32
- <rect data-type="rect" data-label="schematic_component_1" data-x="3" data-y="0" x="516.6019026004727" y="288.22629598108733" width="83.39809739952727" height="63.547408037825335" fill="hsl(24, 100%, 50%, 0.8)" stroke="black" stroke-width="0.013218750000000003" />
32
+ <rect data-type="rect" data-label="schematic_component_1" data-x="3" data-y="0" x="516.6019026004727" y="287.10220709219846" width="83.39809739952727" height="63.547408037825335" fill="hsl(24, 100%, 50%, 0.8)" stroke="black" stroke-width="0.013218750000000003" />
33
33
  </g>
34
34
  <g>
35
- <rect data-type="rect" data-label="" data-x="-3.7512907000000006" data-y="-0.19972675000000067" x="40" y="319.979328605201" width="15.130023640661989" height="30.260047281323864" fill="hsl(40, 100%, 50%, 0.35)" stroke="black" stroke-width="0.013218750000000003" />
35
+ <rect data-type="rect" data-label="" data-x="-3.7512907000000006" data-y="-0.22472675000000067" x="40" y="318.8552397163121" width="15.130023640661989" height="34.04255319148939" fill="hsl(40, 100%, 50%, 0.35)" stroke="black" stroke-width="0.013218750000000003" />
36
36
  </g>
37
37
  <g id="crosshair" style="display: none">
38
38
  <line id="crosshair-h" y1="0" y2="640" stroke="#666" stroke-width="0.5" />
@@ -67,7 +67,7 @@ x+" data-x="3.5512093000000005" data-y="0.00027334999999961695" cx="600" cy="319
67
67
  "e": 331.3505966903073,
68
68
  "b": 0,
69
69
  "d": -75.65011820330967,
70
- "f": 320
70
+ "f": 318.8759111111111
71
71
  };
72
72
  // Manually invert and apply the affine transform
73
73
  // Since we only use translate and scale, we can directly compute: