geometrix 0.5.10 → 0.5.12

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 (89) hide show
  1. package/dist/index.d.ts +505 -0
  2. package/dist/index.js +3848 -0
  3. package/package.json +7 -1
  4. package/.eslintignore +0 -17
  5. package/.eslintrc.cjs +0 -24
  6. package/.prettierignore +0 -15
  7. package/.prettierrc +0 -8
  8. package/src/aaExportContent.ts +0 -213
  9. package/src/aaExportFile.ts +0 -141
  10. package/src/aaParamGeom.ts +0 -62
  11. package/src/angle_utils.test.ts +0 -83
  12. package/src/angle_utils.ts +0 -98
  13. package/src/arc_to_stroke.ts +0 -73
  14. package/src/canvas_utils.test.ts +0 -28
  15. package/src/canvas_utils.ts +0 -159
  16. package/src/contour.test.ts +0 -37
  17. package/src/contour.ts +0 -806
  18. package/src/designParams.ts +0 -178
  19. package/src/figure.test.ts +0 -21
  20. package/src/figure.ts +0 -400
  21. package/src/index.ts +0 -16
  22. package/src/line.test.ts +0 -78
  23. package/src/line.ts +0 -359
  24. package/src/paramFile.ts +0 -52
  25. package/src/point.test.ts +0 -36
  26. package/src/point.ts +0 -246
  27. package/src/prepare_pax.ts +0 -102
  28. package/src/segment.test.ts +0 -26
  29. package/src/segment.ts +0 -701
  30. package/src/sub_design.ts +0 -16
  31. package/src/triangle_utils.test.ts +0 -38
  32. package/src/triangle_utils.ts +0 -112
  33. package/src/vector.test.ts +0 -28
  34. package/src/vector.ts +0 -122
  35. package/src/volume.ts +0 -50
  36. package/src/write_dxf.ts +0 -100
  37. package/src/write_openjscad.ts +0 -284
  38. package/src/write_openscad.ts +0 -305
  39. package/src/write_pax.ts +0 -73
  40. package/src/write_svg.ts +0 -101
  41. package/svg/any_triangle.svg +0 -156
  42. package/svg/arc_definition.svg +0 -506
  43. package/svg/construct_corner_rounded_ext_arc_ext_arc.svg +0 -378
  44. package/svg/construct_corner_rounded_int_arc_ext_arc.svg +0 -359
  45. package/svg/construct_corner_rounded_int_arc_int_arc.svg +0 -356
  46. package/svg/construct_corner_rounded_stroke_ext_arc.svg +0 -374
  47. package/svg/construct_corner_rounded_stroke_ext_arc_obtuse.svg +0 -370
  48. package/svg/construct_corner_rounded_stroke_ext_arc_obtuse_method2.svg +0 -311
  49. package/svg/construct_corner_rounded_stroke_int_arc.svg +0 -364
  50. package/svg/construct_corner_rounded_stroke_int_arc_obtuse.svg +0 -358
  51. package/svg/construct_corner_rounded_stroke_int_arc_obtuse_method2.svg +0 -237
  52. package/svg/construct_corner_rounded_stroke_stroke.svg +0 -280
  53. package/svg/construct_corner_wideacc.svg +0 -286
  54. package/svg/construct_corner_widened.svg +0 -278
  55. package/svg/construction_of_line_intersection_1.svg +0 -187
  56. package/svg/construction_of_line_intersection_2.svg +0 -189
  57. package/svg/contour_arc_definition_options.svg +0 -324
  58. package/svg/contour_point_absolute_relative.svg +0 -258
  59. package/svg/contour_tangential_two_arcs.svg +0 -531
  60. package/svg/contour_tangential_two_arcs_impossible_case.svg +0 -175
  61. package/svg/contour_tangential_two_arcs_requirements.svg +0 -364
  62. package/svg/corner_rounded_ext_arc_ext_arc.svg +0 -281
  63. package/svg/corner_rounded_int_arc_ext_arc.svg +0 -281
  64. package/svg/corner_rounded_int_arc_int_arc.svg +0 -279
  65. package/svg/corner_rounded_stroke_ext_arc.svg +0 -218
  66. package/svg/corner_rounded_stroke_int_arc.svg +0 -225
  67. package/svg/corner_rounded_stroke_stroke.svg +0 -174
  68. package/svg/geom_dev.svg +0 -14708
  69. package/svg/geom_modules.svg +0 -246
  70. package/svg/geom_user.svg +0 -58
  71. package/svg/line_axis_x_cases.svg +0 -1408
  72. package/svg/line_axis_y_cases.svg +0 -1369
  73. package/svg/line_distanceOrig.svg +0 -318
  74. package/svg/line_getAxisXIntersection.svg +0 -262
  75. package/svg/line_getAxisXIntersection_2.svg +0 -244
  76. package/svg/line_getAxisYIntersection.svg +0 -304
  77. package/svg/line_getAxisYIntersection_2.svg +0 -285
  78. package/svg/line_getAxisYIntersection_3.svg +0 -277
  79. package/svg/line_intersection.svg +0 -346
  80. package/svg/line_projectPoint.svg +0 -311
  81. package/svg/point_1.svg +0 -243
  82. package/svg/point_2.svg +0 -409
  83. package/svg/point_3.svg +0 -298
  84. package/svg/point_4.svg +0 -272
  85. package/svg/point_5.svg +0 -356
  86. package/svg/right_triangle.svg +0 -194
  87. package/svg/vector_definition.svg +0 -130
  88. package/tsconfig.json +0 -13
  89. package/vitest.config.ts +0 -7
@@ -1,358 +0,0 @@
1
- <?xml version="1.0" encoding="UTF-8" standalone="no"?>
2
- <!-- Created with Inkscape (http://www.inkscape.org/) -->
3
-
4
- <svg
5
- width="324.93716"
6
- height="331.86301"
7
- viewBox="0 0 85.972958 87.805419"
8
- version="1.1"
9
- id="svg5"
10
- inkscape:version="1.2.2 (1:1.2.2+202305151914+b0a8486541)"
11
- sodipodi:docname="geom.svg"
12
- inkscape:export-filename="arc_definition.svg"
13
- inkscape:export-xdpi="96"
14
- inkscape:export-ydpi="96"
15
- xmlns:inkscape="http://www.inkscape.org/namespaces/inkscape"
16
- xmlns:sodipodi="http://sodipodi.sourceforge.net/DTD/sodipodi-0.dtd"
17
- xmlns="http://www.w3.org/2000/svg"
18
- xmlns:svg="http://www.w3.org/2000/svg">
19
- <sodipodi:namedview
20
- id="namedview7"
21
- pagecolor="#ffffff"
22
- bordercolor="#666666"
23
- borderopacity="1.0"
24
- inkscape:showpageshadow="2"
25
- inkscape:pageopacity="0.0"
26
- inkscape:pagecheckerboard="0"
27
- inkscape:deskcolor="#d1d1d1"
28
- inkscape:document-units="px"
29
- showgrid="false"
30
- inkscape:zoom="1.36"
31
- inkscape:cx="333.08824"
32
- inkscape:cy="13139.338"
33
- inkscape:window-width="1366"
34
- inkscape:window-height="836"
35
- inkscape:window-x="0"
36
- inkscape:window-y="0"
37
- inkscape:window-maximized="1"
38
- inkscape:current-layer="layer1"
39
- showguides="true" />
40
- <defs
41
- id="defs2">
42
- <rect
43
- x="409.10214"
44
- y="12687.542"
45
- width="48.255112"
46
- height="47.364716"
47
- id="rect17385" />
48
- <rect
49
- x="378.93497"
50
- y="12647.6"
51
- width="36.045208"
52
- height="26.793716"
53
- id="rect17379" />
54
- <rect
55
- x="86.404892"
56
- y="8251.748"
57
- width="70.081017"
58
- height="57.682091"
59
- id="rect2113-3-7-3-3" />
60
- <rect
61
- x="204.84335"
62
- y="8338.3955"
63
- width="83.852852"
64
- height="42.639156"
65
- id="rect2119-6-9-6-6" />
66
- <rect
67
- x="343.1825"
68
- y="8353.1172"
69
- width="64.674751"
70
- height="45.493374"
71
- id="rect2125-7-2-0-7" />
72
- <rect
73
- x="307.06467"
74
- y="8197.7441"
75
- width="48.524952"
76
- height="24.998806"
77
- id="rect2247-5-0-6-5" />
78
- <rect
79
- x="79.050255"
80
- y="8300.6836"
81
- width="273.1701"
82
- height="51.164238"
83
- id="rect1972-3-2-2-3" />
84
- <rect
85
- x="251.71738"
86
- y="8436.2734"
87
- width="62.168148"
88
- height="32.449692"
89
- id="rect9067-3-61-5" />
90
- <rect
91
- x="420.70566"
92
- y="8448.9414"
93
- width="77.717155"
94
- height="48.312233"
95
- id="rect9073-7-8-6" />
96
- <rect
97
- x="450.46594"
98
- y="10459.747"
99
- width="41.233315"
100
- height="38.021324"
101
- id="rect49640-2-2" />
102
- <rect
103
- x="367.05576"
104
- y="10442.883"
105
- width="32.882603"
106
- height="25.009695"
107
- id="rect49648-3-9" />
108
- <rect
109
- x="423.24832"
110
- y="10177.365"
111
- width="36.09647"
112
- height="24.909346"
113
- id="rect3942-8-1" />
114
- <rect
115
- x="441.70547"
116
- y="10454.384"
117
- width="116.48731"
118
- height="28.208582"
119
- id="rect49656-3-5-2" />
120
- <rect
121
- x="441.70547"
122
- y="10454.384"
123
- width="120.36585"
124
- height="46.74662"
125
- id="rect49656-6-7" />
126
- </defs>
127
- <g
128
- inkscape:label="Layer 1"
129
- inkscape:groupmode="layer"
130
- id="layer1"
131
- transform="translate(-30.178787,-3334.1741)">
132
- <rect
133
- style="fill:#ffffff;stroke:#ffffff;stroke-width:0.264584"
134
- id="rect2407-5-5-06-0"
135
- width="85.708382"
136
- height="87.540802"
137
- x="30.311079"
138
- y="3334.3064"
139
- inkscape:export-filename="construct_corner_rounded_stroke_int_arc.svg"
140
- inkscape:export-xdpi="96"
141
- inkscape:export-ydpi="96" />
142
- <path
143
- style="fill:none;stroke:#ffaaaa;stroke-width:0.264583"
144
- id="path12247-3"
145
- sodipodi:type="arc"
146
- sodipodi:cx="-2956.7275"
147
- sodipodi:cy="1648.4189"
148
- sodipodi:rx="23.120169"
149
- sodipodi:ry="23.120169"
150
- sodipodi:start="5.1422404"
151
- sodipodi:end="0.88569616"
152
- sodipodi:arc-type="arc"
153
- d="m -2947.0925,1627.4021 a 23.120169,23.120169 0 0 1 13.2971,18.0742 23.120169,23.120169 0 0 1 -8.3028,20.8459"
154
- sodipodi:open="true"
155
- transform="rotate(-62.163156)" />
156
- <path
157
- style="fill:none;stroke:#ffaaaa;stroke-width:0.264583px;stroke-linecap:butt;stroke-linejoin:miter;stroke-opacity:1"
158
- d="m 61.518688,3393.5182 19.124274,-52.2928"
159
- id="path2057-6-9-0-1-6"
160
- sodipodi:nodetypes="cc" />
161
- <path
162
- style="fill:none;stroke:#000000;stroke-width:0.264583px;stroke-linecap:butt;stroke-linejoin:miter;stroke-opacity:1"
163
- d="M 51.520618,3389.6138 64.945227,3352.83"
164
- id="path2057-6-9-0-0"
165
- sodipodi:nodetypes="cc" />
166
- <text
167
- xml:space="preserve"
168
- transform="matrix(0.26458333,0,0,0.26458333,23.90615,1204.3995)"
169
- id="text2111-2-2-6-6"
170
- style="font-size:14.6667px;line-height:1.25;font-family:sans-serif;white-space:pre;shape-inside:url(#rect2113-3-7-3-3);display:inline"><tspan
171
- x="86.404297"
172
- y="8264.7246"
173
- id="tspan36341">p1</tspan></text>
174
- <text
175
- xml:space="preserve"
176
- transform="matrix(0.26458333,0,0,0.26458333,15.346063,1165.2194)"
177
- id="text2123-1-8-9-6"
178
- style="font-size:14.6667px;line-height:1.25;font-family:sans-serif;white-space:pre;shape-inside:url(#rect2125-7-2-0-7);display:inline"><tspan
179
- x="343.18164"
180
- y="8366.0938"
181
- id="tspan36343">p3</tspan></text>
182
- <circle
183
- style="fill:none;stroke:#d45500;stroke-width:0.264583"
184
- id="path2235-2-9-2-1"
185
- cx="73.101646"
186
- cy="3361.5098"
187
- r="10.633756" />
188
- <path
189
- style="fill:none;stroke:#b3b3b3;stroke-width:0.264583px;stroke-linecap:butt;stroke-linejoin:miter;stroke-opacity:1"
190
- d="m 57.800241,3355.8681 23.599579,8.5793"
191
- id="path2239-0-7-6-8" />
192
- <text
193
- xml:space="preserve"
194
- transform="matrix(0.26458333,0,0,0.26458333,-11.370519,1184.5848)"
195
- id="text2245-6-6-4-9"
196
- style="font-size:14.6667px;line-height:1.25;font-family:sans-serif;white-space:pre;shape-inside:url(#rect2247-5-0-6-5);display:inline;fill:#008000"><tspan
197
- x="307.06445"
198
- y="8210.7207"
199
- id="tspan36345">r</tspan></text>
200
- <path
201
- style="fill:none;stroke:#666666;stroke-width:0.264583px;stroke-linecap:butt;stroke-linejoin:miter;stroke-opacity:1"
202
- d="m 62.396251,3359.9753 2.05055,0.7503 0.734309,-2.2371"
203
- id="path2251-0-1-9-2" />
204
- <text
205
- xml:space="preserve"
206
- transform="matrix(0.26458333,0,0,0.26458333,11.81986,1214.7487)"
207
- id="text1970-1-2-5-0"
208
- style="font-size:14.6667px;line-height:1.25;font-family:sans-serif;white-space:pre;shape-inside:url(#rect1972-3-2-2-3);display:inline"><tspan
209
- x="79.050781"
210
- y="8313.6602"
211
- id="tspan36347">construct cornerRounded(radius)
212
- </tspan><tspan
213
- x="79.050781"
214
- y="8331.9932"
215
- id="tspan36349">case stroke-int-arc, obtuse</tspan></text>
216
- <path
217
- style="fill:none;stroke:#e6e6e6;stroke-width:0.264583"
218
- id="path8778-9-0-2"
219
- sodipodi:type="arc"
220
- sodipodi:cx="-268.5683"
221
- sodipodi:cy="-3374.6958"
222
- sodipodi:rx="33.899853"
223
- sodipodi:ry="33.899853"
224
- sodipodi:start="1.1432914"
225
- sodipodi:end="2.7898327"
226
- sodipodi:arc-type="slice"
227
- d="m -254.51337,-3343.8468 a 33.899853,33.899853 0 0 1 -27.12382,0.4304 33.899853,33.899853 0 0 1 -18.7552,-19.5992 l 31.82409,-11.6802 z"
228
- transform="rotate(-176.75785)"
229
- inkscape:transform-center-x="-10.128712"
230
- inkscape:transform-center-y="-16.963772" />
231
- <path
232
- style="fill:none;stroke:#000000;stroke-width:0.264583"
233
- id="path8778-8-1-8-7"
234
- sodipodi:type="arc"
235
- sodipodi:cx="-268.59955"
236
- sodipodi:cy="-3374.624"
237
- sodipodi:rx="33.899853"
238
- sodipodi:ry="33.899853"
239
- sodipodi:start="1.1432914"
240
- sodipodi:end="2.7898327"
241
- sodipodi:arc-type="arc"
242
- d="m -254.54462,-3343.7751 a 33.899853,33.899853 0 0 1 -27.12382,0.4305 33.899853,33.899853 0 0 1 -18.7552,-19.5992"
243
- sodipodi:open="true"
244
- transform="rotate(-176.75785)"
245
- inkscape:transform-center-x="-10.163971"
246
- inkscape:transform-center-y="-21.964503" />
247
- <path
248
- style="fill:none;stroke:#0000ff;stroke-width:0.264583px;stroke-linecap:butt;stroke-linejoin:miter;stroke-opacity:1"
249
- d="m 71.332143,3351.0173 5.923072,33.5896"
250
- id="path9063-9-7-5"
251
- sodipodi:nodetypes="cc" />
252
- <text
253
- xml:space="preserve"
254
- transform="matrix(0.26458333,0,0,0.26458333,9.5535181,1139.6494)"
255
- id="text9065-4-1-9"
256
- style="font-size:14.6667px;line-height:1.25;font-family:sans-serif;white-space:pre;shape-inside:url(#rect9067-3-61-5);display:inline;fill:#0000ff"><tspan
257
- x="251.7168"
258
- y="8449.25"
259
- id="tspan36351">r2</tspan></text>
260
- <text
261
- xml:space="preserve"
262
- transform="matrix(0.26458333,0,0,0.26458333,-38.618161,1149.7866)"
263
- id="text9071-7-72-2"
264
- style="font-size:14.6667px;line-height:1.25;font-family:sans-serif;white-space:pre;shape-inside:url(#rect9073-7-8-6);display:inline"><tspan
265
- x="420.70508"
266
- y="8461.918"
267
- id="tspan36353">p5</tspan></text>
268
- <text
269
- xml:space="preserve"
270
- transform="matrix(0.26458333,0,0,0.26458333,-57.202507,598.38947)"
271
- id="text49638-7-8"
272
- style="font-size:12px;line-height:1.25;font-family:sans-serif;white-space:pre;shape-inside:url(#rect49640-2-2);display:inline;fill:#ff00ff"><tspan
273
- x="450.4668"
274
- y="10470.363"
275
- id="tspan36355">1:pA</tspan></text>
276
- <text
277
- xml:space="preserve"
278
- transform="matrix(0.26458333,0,0,0.26458333,-29.751327,616.49593)"
279
- id="text49646-6-9"
280
- style="font-size:12px;line-height:1.25;font-family:sans-serif;white-space:pre;shape-inside:url(#rect49648-3-9);display:inline;fill:#ff00ff"><tspan
281
- x="367.05664"
282
- y="10453.5"
283
- id="tspan36357">2:lA5</tspan></text>
284
- <path
285
- style="fill:none;stroke:#ff00ff;stroke-width:0.264583px;stroke-linecap:butt;stroke-linejoin:miter;stroke-opacity:1"
286
- d="m 70.928078,3368.0989 6.444145,16.4439"
287
- id="path12249-0-7"
288
- sodipodi:nodetypes="cc" />
289
- <text
290
- xml:space="preserve"
291
- transform="matrix(0.26458333,0,0,0.26458333,-37.523021,665.84654)"
292
- id="text3940-7-3"
293
- style="font-size:14.6667px;line-height:1.25;font-family:sans-serif;white-space:pre;shape-inside:url(#rect3942-8-1);display:inline"><tspan
294
- x="423.24805"
295
- y="10190.342"
296
- id="tspan36359">p7</tspan></text>
297
- <text
298
- xml:space="preserve"
299
- transform="matrix(0.26458333,0,0,0.26458333,-65.181639,586.96412)"
300
- id="text49654-6-3-6"
301
- style="font-size:12px;line-height:1.25;font-family:sans-serif;white-space:pre;shape-inside:url(#rect49656-3-5-2);display:inline;fill:#ff00ff"><tspan
302
- x="441.70508"
303
- y="10465"
304
- id="tspan36361">3:a125</tspan></text>
305
- <path
306
- style="fill:none;stroke:#ff00ff;stroke-width:0.264583px;stroke-linecap:butt;stroke-linejoin:miter;stroke-opacity:1"
307
- d="m 63.713405,3356.905 c 0,0 1.160959,0.4497 1.743493,0.3428 0.403768,-0.074 1.045384,-0.6511 1.045384,-0.6511"
308
- id="path12251-5-1"
309
- sodipodi:nodetypes="cac" />
310
- <text
311
- xml:space="preserve"
312
- transform="matrix(0.26458333,0,0,0.26458333,-43.254551,600.23766)"
313
- id="text49654-2-2"
314
- style="font-size:12px;line-height:1.25;font-family:sans-serif;white-space:pre;shape-inside:url(#rect49656-6-7);display:inline;fill:#ff00ff"><tspan
315
- x="441.70508"
316
- y="10465"
317
- id="tspan36363">4:aA=Pi-a125</tspan></text>
318
- <text
319
- xml:space="preserve"
320
- transform="matrix(0.26458333,0,0,0.26458333,8.009677,1140.9861)"
321
- id="text2117-9-2-8-2"
322
- style="font-size:14.6667px;line-height:1.25;font-family:sans-serif;white-space:pre;shape-inside:url(#rect2119-6-9-6-6);display:inline"><tspan
323
- x="204.84375"
324
- y="8351.3711"
325
- id="tspan36365">p2</tspan></text>
326
- <path
327
- style="fill:none;stroke:#008000;stroke-width:0.264583px;stroke-linecap:butt;stroke-linejoin:miter;stroke-opacity:1"
328
- d="m 71.347275,3351.146 1.804211,10.5247"
329
- id="path2243-3-3-6-7"
330
- sodipodi:nodetypes="cc" />
331
- <path
332
- style="fill:none;stroke:#ff00ff;stroke-width:0.264582px;stroke-linecap:butt;stroke-linejoin:miter;stroke-opacity:1"
333
- d="m 71.911868,3370.3955 c 0,0 0.7891,-1.2434 0.7748,-1.9394 -0.019,-0.9002 -1.1044,-2.465 -1.1044,-2.465"
334
- id="path12251-5-1-9"
335
- sodipodi:nodetypes="cac" />
336
- <text
337
- xml:space="preserve"
338
- transform="matrix(0.26458333,0,0,0.26458333,-29.932053,-0.14059029)"
339
- id="text17377"
340
- style="font-size:14.6667px;line-height:1.25;font-family:sans-serif;white-space:pre;shape-inside:url(#rect17379);display:inline;fill:#999999"><tspan
341
- x="378.93555"
342
- y="12660.576"
343
- id="tspan36367">p9</tspan></text>
344
- <text
345
- xml:space="preserve"
346
- transform="matrix(0.26458333,0,0,0.26458333,-51.107611,-0.16034893)"
347
- id="text17383"
348
- style="font-size:14.6667px;line-height:1.25;font-family:sans-serif;white-space:pre;shape-inside:url(#rect17385);display:inline;fill:#999999"><tspan
349
- x="409.10156"
350
- y="12700.52"
351
- id="tspan36369">p8</tspan></text>
352
- <path
353
- style="fill:none;stroke:#ffcc00;stroke-width:0.529167;stroke-linecap:butt;stroke-linejoin:miter;stroke-opacity:1"
354
- d="m 74.092603,3376.1597 c 0,0 0.198765,-0.6274 0.469649,-0.725 0.37428,-0.1349 1.13878,0.3574 1.13878,0.3574"
355
- id="path17389"
356
- sodipodi:nodetypes="cac" />
357
- </g>
358
- </svg>
@@ -1,237 +0,0 @@
1
- <?xml version="1.0" encoding="UTF-8" standalone="no"?>
2
- <!-- Created with Inkscape (http://www.inkscape.org/) -->
3
-
4
- <svg
5
- width="324.93716"
6
- height="331.86301"
7
- viewBox="0 0 85.972958 87.805419"
8
- version="1.1"
9
- id="svg5"
10
- xmlns="http://www.w3.org/2000/svg"
11
- xmlns:svg="http://www.w3.org/2000/svg">
12
- <defs
13
- id="defs2">
14
- <rect
15
- x="86.404892"
16
- y="8251.748"
17
- width="70.081017"
18
- height="57.682091"
19
- id="rect2113-3-7-3-3-3" />
20
- <rect
21
- x="343.1825"
22
- y="8353.1172"
23
- width="64.674751"
24
- height="45.493374"
25
- id="rect2125-7-2-0-7-6" />
26
- <rect
27
- x="307.06467"
28
- y="8197.7441"
29
- width="48.524952"
30
- height="24.998806"
31
- id="rect2247-5-0-6-5-7" />
32
- <rect
33
- x="79.050255"
34
- y="8300.6836"
35
- width="332.53165"
36
- height="51.692291"
37
- id="rect1972-3-2-2-3-5" />
38
- <rect
39
- x="251.71738"
40
- y="8436.2734"
41
- width="62.168148"
42
- height="32.449692"
43
- id="rect9067-3-61-5-3" />
44
- <rect
45
- x="420.70566"
46
- y="8448.9414"
47
- width="77.717155"
48
- height="48.312233"
49
- id="rect9073-7-8-6-5" />
50
- <rect
51
- x="450.46594"
52
- y="10459.747"
53
- width="41.233315"
54
- height="38.021324"
55
- id="rect49640-2-2-6" />
56
- <rect
57
- x="423.24832"
58
- y="10177.365"
59
- width="36.09647"
60
- height="24.909346"
61
- id="rect3942-8-1-9" />
62
- <rect
63
- x="204.84335"
64
- y="8338.3955"
65
- width="83.852852"
66
- height="42.639156"
67
- id="rect2119-6-9-6-6-7" />
68
- <rect
69
- x="378.93497"
70
- y="12647.6"
71
- width="36.045208"
72
- height="26.793716"
73
- id="rect17379-9" />
74
- <rect
75
- x="409.10214"
76
- y="12687.542"
77
- width="48.255112"
78
- height="47.364716"
79
- id="rect17385-3" />
80
- </defs>
81
- <g
82
- id="layer1"
83
- transform="translate(-33.47184,-3559.9058)">
84
- <rect
85
- style="fill:#ffffff;stroke:#ffffff;stroke-width:0.264584"
86
- id="rect2407-5-5-06-0-6"
87
- width="85.708382"
88
- height="87.540802"
89
- x="33.60413"
90
- y="3560.0381" />
91
- <path
92
- style="fill:none;stroke:#ffaaaa;stroke-width:0.264583"
93
- id="path12247-3-0"
94
- d="m -3145.165,1735.7206 a 23.120169,23.120169 0 0 1 13.2971,18.0741 23.120169,23.120169 0 0 1 -8.3028,20.846"
95
- transform="rotate(-62.163156)" />
96
- <path
97
- style="fill:none;stroke:#ffaaaa;stroke-width:0.264583px;stroke-linecap:butt;stroke-linejoin:miter;stroke-opacity:1"
98
- d="M 64.811739,3619.2498 83.936013,3566.957"
99
- id="path2057-6-9-0-1-6-6" />
100
- <path
101
- style="fill:none;stroke:#000000;stroke-width:0.264583px;stroke-linecap:butt;stroke-linejoin:miter;stroke-opacity:1"
102
- d="m 54.813669,3615.3454 13.424609,-36.7838"
103
- id="path2057-6-9-0-0-2" />
104
- <text
105
- xml:space="preserve"
106
- transform="matrix(0.26458333,0,0,0.26458333,27.199201,1430.1311)"
107
- id="text2111-2-2-6-6-6"
108
- style="font-size:14.6667px;line-height:1.25;font-family:sans-serif;white-space:pre;shape-inside:url(#rect2113-3-7-3-3-3);display:inline"><tspan
109
- x="86.404297"
110
- y="8264.7246"
111
- id="tspan8424">p1</tspan></text>
112
- <text
113
- xml:space="preserve"
114
- transform="matrix(0.26458333,0,0,0.26458333,18.639114,1390.951)"
115
- id="text2123-1-8-9-6-1"
116
- style="font-size:14.6667px;line-height:1.25;font-family:sans-serif;white-space:pre;shape-inside:url(#rect2125-7-2-0-7-6);display:inline"><tspan
117
- x="343.18164"
118
- y="8366.0938"
119
- id="tspan8426">p3</tspan></text>
120
- <circle
121
- style="fill:none;stroke:#d45500;stroke-width:0.264583"
122
- id="path2235-2-9-2-1-8"
123
- cx="76.394699"
124
- cy="3587.2415"
125
- r="10.633756" />
126
- <path
127
- style="fill:none;stroke:#b3b3b3;stroke-width:0.264583px;stroke-linecap:butt;stroke-linejoin:miter;stroke-opacity:1"
128
- d="m 61.093292,3581.5997 23.599579,8.5793"
129
- id="path2239-0-7-6-8-7" />
130
- <text
131
- xml:space="preserve"
132
- transform="matrix(0.26458333,0,0,0.26458333,-8.0774678,1410.3164)"
133
- id="text2245-6-6-4-9-9"
134
- style="font-size:14.6667px;line-height:1.25;font-family:sans-serif;white-space:pre;shape-inside:url(#rect2247-5-0-6-5-7);display:inline;fill:#008000"><tspan
135
- x="307.06445"
136
- y="8210.7207"
137
- id="tspan8428">r</tspan></text>
138
- <path
139
- style="fill:none;stroke:#666666;stroke-width:0.264583px;stroke-linecap:butt;stroke-linejoin:miter;stroke-opacity:1"
140
- d="m 65.689302,3585.7069 2.05055,0.7503 0.734309,-2.2371"
141
- id="path2251-0-1-9-2-2" />
142
- <text
143
- xml:space="preserve"
144
- transform="matrix(0.26458333,0,0,0.26458333,15.112911,1440.4803)"
145
- id="text1970-1-2-5-0-0"
146
- style="font-size:14.6667px;line-height:1.25;font-family:sans-serif;white-space:pre;shape-inside:url(#rect1972-3-2-2-3-5);display:inline"><tspan
147
- x="79.050781"
148
- y="8313.6602"
149
- id="tspan8430">construct cornerRounded(radius)
150
- </tspan><tspan
151
- x="79.050781"
152
- y="8331.9932"
153
- id="tspan8432">case stroke-int-arc, obtuse, method-2</tspan></text>
154
- <path
155
- style="fill:none;stroke:#e6e6e6;stroke-width:0.264583"
156
- id="path8778-9-0-2-2"
157
- d="m -270.56763,-3569.0309 a 33.899853,33.899853 0 0 1 -27.12382,0.4305 33.899853,33.899853 0 0 1 -18.7552,-19.5993 l 31.82409,-11.6802 z"
158
- transform="rotate(-176.75785)" />
159
- <path
160
- style="fill:none;stroke:#000000;stroke-width:0.264583"
161
- id="path8778-8-1-8-7-3"
162
- d="m -270.59888,-3568.9591 a 33.899853,33.899853 0 0 1 -27.12382,0.4304 33.899853,33.899853 0 0 1 -18.7552,-19.5992"
163
- transform="rotate(-176.75785)" />
164
- <path
165
- style="fill:none;stroke:#0000ff;stroke-width:0.264583px;stroke-linecap:butt;stroke-linejoin:miter;stroke-opacity:1"
166
- d="m 74.625194,3576.7489 5.923072,33.5896"
167
- id="path9063-9-7-5-7" />
168
- <text
169
- xml:space="preserve"
170
- transform="matrix(0.26458333,0,0,0.26458333,12.846569,1365.381)"
171
- id="text9065-4-1-9-5"
172
- style="font-size:14.6667px;line-height:1.25;font-family:sans-serif;white-space:pre;shape-inside:url(#rect9067-3-61-5-3);display:inline;fill:#0000ff"><tspan
173
- x="251.7168"
174
- y="8449.25"
175
- id="tspan8434">r2</tspan></text>
176
- <text
177
- xml:space="preserve"
178
- transform="matrix(0.26458333,0,0,0.26458333,-35.32511,1375.5182)"
179
- id="text9071-7-72-2-9"
180
- style="font-size:14.6667px;line-height:1.25;font-family:sans-serif;white-space:pre;shape-inside:url(#rect9073-7-8-6-5);display:inline"><tspan
181
- x="420.70508"
182
- y="8461.918"
183
- id="tspan8436">p5</tspan></text>
184
- <text
185
- xml:space="preserve"
186
- transform="matrix(0.26458333,0,0,0.26458333,-34.22997,891.57818)"
187
- id="text3940-7-3-9"
188
- style="font-size:14.6667px;line-height:1.25;font-family:sans-serif;white-space:pre;shape-inside:url(#rect3942-8-1-9);display:inline"><tspan
189
- x="423.24805"
190
- y="10190.342"
191
- id="tspan8438">p7</tspan></text>
192
- <text
193
- xml:space="preserve"
194
- transform="matrix(0.26458333,0,0,0.26458333,11.302728,1366.7177)"
195
- id="text2117-9-2-8-2-1"
196
- style="font-size:14.6667px;line-height:1.25;font-family:sans-serif;white-space:pre;shape-inside:url(#rect2119-6-9-6-6-7);display:inline"><tspan
197
- x="204.84375"
198
- y="8351.3711"
199
- id="tspan8440">p2</tspan></text>
200
- <path
201
- style="fill:none;stroke:#008000;stroke-width:0.264583px;stroke-linecap:butt;stroke-linejoin:miter;stroke-opacity:1"
202
- d="m 74.640326,3576.8776 1.804211,10.5247"
203
- id="path2243-3-3-6-7-2" />
204
- <text
205
- xml:space="preserve"
206
- transform="matrix(0.26458333,0,0,0.26458333,-26.639002,225.59105)"
207
- id="text17377-1"
208
- style="font-size:14.6667px;line-height:1.25;font-family:sans-serif;white-space:pre;shape-inside:url(#rect17379-9);display:inline;fill:#999999"><tspan
209
- x="378.93555"
210
- y="12660.576"
211
- id="tspan8442">p9</tspan></text>
212
- <text
213
- xml:space="preserve"
214
- transform="matrix(0.26458333,0,0,0.26458333,-47.81456,225.57129)"
215
- id="text17383-9"
216
- style="font-size:14.6667px;line-height:1.25;font-family:sans-serif;white-space:pre;shape-inside:url(#rect17385-3);display:inline;fill:#999999"><tspan
217
- x="409.10156"
218
- y="12700.52"
219
- id="tspan8444">p8</tspan></text>
220
- <path
221
- style="fill:none;stroke:#b3b3b3;stroke-width:0.264583px;stroke-linecap:butt;stroke-linejoin:miter;stroke-opacity:1"
222
- d="m 64.211339,3604.3959 23.599579,8.5793"
223
- id="path2239-0-7-6-8-7-7" />
224
- <path
225
- style="fill:none;stroke:#666666;stroke-width:0.264583px;stroke-linecap:butt;stroke-linejoin:miter;stroke-opacity:1"
226
- d="m 68.807349,3608.5031 2.05055,0.7503 0.734309,-2.2371"
227
- id="path2251-0-1-9-2-2-8" />
228
- <text
229
- xml:space="preserve"
230
- transform="matrix(0.26458333,0,0,0.26458333,-58.039159,836.909)"
231
- id="text49638-7-8-2"
232
- style="font-size:12px;line-height:1.25;font-family:sans-serif;white-space:pre;shape-inside:url(#rect49640-2-2-6);display:inline;fill:#ff00ff"><tspan
233
- x="450.4668"
234
- y="10470.363"
235
- id="tspan8446">1:pB</tspan></text>
236
- </g>
237
- </svg>