summaryrefslogtreecommitdiff
path: root/tests/interp/crazy-paths/test.ngc
blob: 4356402340f5093c12fb1c06c0ada6b4f0f31c46 (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
162
163
164
165
166
167
168
169
170
171
172
173
174
175
176
177
178
179
180
181
182
183
184
185
186
187
188
189
190
191
192
193
194
195
196
197
198
199
200
201
202
203
204
205
206
207
208
209
210
211
212
213
214
215
216
217
218
219
220
221
222
223
224
225
226
227
228
229
230
231
232
233
234
235
236
237
238
239
240
241
242
243
244
245
246
247
248
249
250
251
252
253
254
255
256
257
258
259
260
261
262
263
264
265
266
267
268
269
270
271
272
273
274
275
276
277
278
279
280
281
282
283
284
285
286
287
288
289
290
291
292
293
294
295
296
297
298
299
300
301
302
303
304
305
306
307
308
309
310
311
312
313
314
315
316
317
318
319
320
321
322
323
324
325
326
327
328
329
330
331
332
333
334
335
336
337
338
339
340
341
342
343
344
345
346
347
348
349
350
351
352
353
354
355
356
357
358
359
360
361
362
363
364
365
366
367
368
369
370
371
372
373
374
375
376
377
378
379
380
381
382
383
384
385
386
387
388
389
390
391
392
393
394
395
396
397
398
399
400
401
402
403
404
405
406
407
408
409
410
411
412
413
414
415
416
417
418
419
420
421
422
423
424
425
426
427
428
429
430
431
432
433
434
435
436
437
438
439
440
441
442
443
444
445
446
447
448
449
450
451
452
453
454
455
456
457
458
459
460
461
462
463
464
465
466
467
468
469
470
471
472
473
474
475
476
O0 sub (#1=radius)
F100
G0 X-100.000000 Y-100.000000
O1 if [#1 NE 0]
G41.1 D#1
O1 endif
g90 g1 y-102.000000
G2 I1.095697 J-0.097206 X-99.562609 Y-102.978473
G1 X-97.562609 Y-99.978473
G1 X-91.562609 Y-97.978473
G3 I-1.365837 J-2.212349 X-90.369054 Y-100.648542
G40
G1 X-80.369054 Y-95.648542
O0 endsub
F100
G21
O0 call [0]
O0 call [-.5]
O0 call [.5]
O2 sub (#1=radius)
F100
G0 X-100.000000 Y-50.000000
O3 if [#1 NE 0]
G41.1 D#1
O3 endif
g90 g1 y-52.000000
G3 I2.240368 J-4.469983 X-95.923035 Y-61.120458
G1 X-97.923035 Y-57.120458
G2 I1.316612 J1.762536 X-94.440783 Y-55.745223
G3 I1.795380 J2.403458 X-95.540324 Y-52.554728
G40
G1 X-93.540324 Y-62.554728
O2 endsub
F100
G21
O2 call [0]
O2 call [-.5]
O2 call [.5]
O4 sub (#1=radius)
F100
G0 X-100.000000 Y0.000000
O5 if [#1 NE 0]
G41.1 D#1
O5 endif
g90 g1 y-2.000000
G1 X-85.000000 Y3.000000
G1 X-87.000000 Y-2.000000
G1 X-82.000000 Y-8.000000
G1 X-85.000000 Y-5.500000
G40
G1 X-90.000000 Y10.000000
O4 endsub
F100
G21
O4 call [0]
O4 call [-.5]
O4 call [.5]
O6 sub (#1=radius)
F100
G0 X-100.000000 Y50.000000
O7 if [#1 NE 0]
G41.1 D#1
O7 endif
g90 g1 y48.000000
G1 X-105.000000 Y43.000000
G3 I0.658306 J0.881268 X-103.937643 Y42.858164
G1 X-104.937643 Y47.858164
G2 I1.555996 J2.082997 X-104.119243 Y52.434341
G40
G1 X-103.119243 Y48.434341
O6 endsub
F100
G21
O6 call [0]
O6 call [-.5]
O6 call [.5]
O8 sub (#1=radius)
F100
G0 X-100.000000 Y100.000000
O9 if [#1 NE 0]
G41.1 D#1
O9 endif
g90 g1 y98.000000
G3 I-1.155708 J-1.871988 X-98.990068 Y95.740711
G2 I0.658306 J0.881268 X-97.598155 Y97.441626
G1 X-93.598155 Y107.441626
G1 X-96.598155 Y105.441626
G40
G1 X-111.598155 Y109.441626
O8 endsub
F100
G21
O8 call [0]
O8 call [-.5]
O8 call [.5]
O10 sub (#1=radius)
F100
G0 X-50.000000 Y-100.000000
O11 if [#1 NE 0]
G41.1 D#1
O11 endif
g90 g1 y-102.000000
G2 I4.980439 J-0.441843 X-40.097651 Y-103.322073
G2 I-0.682919 J-1.106175 X-39.500873 Y-104.657107
G1 X-54.500873 Y-94.657107
G2 I-1.575966 J-2.552711 X-57.872219 Y-99.613276
G40
G1 X-62.872219 Y-114.613276
O10 endsub
F100
G21
O10 call [0]
O10 call [-.5]
O10 call [.5]
O12 sub (#1=radius)
F100
G0 X-50.000000 Y-50.000000
O13 if [#1 NE 0]
G41.1 D#1
O13 endif
g90 g1 y-52.000000
G1 X-48.000000 Y-51.000000
G1 X-50.000000 Y-41.000000
G1 X-55.000000 Y-44.000000
G1 X-53.000000 Y-54.000000
G40
G1 X-38.000000 Y-52.000000
O12 endsub
F100
G21
O12 call [0]
O12 call [-.5]
O12 call [.5]
O14 sub (#1=radius)
F100
G0 X-50.000000 Y0.000000
O15 if [#1 NE 0]
G41.1 D#1
O15 endif
g90 g1 y-2.000000
G1 X-54.000000 Y-6.000000
G1 X-50.000000 Y-4.000000
G2 I-2.387576 J6.045617 X-54.231568 Y8.278569
G1 X-48.231568 Y12.278569
G40
G1 X-58.231568 Y9.278569
O14 endsub
F100
G21
O14 call [0]
O14 call [-.5]
O14 call [.5]
O16 sub (#1=radius)
F100
G0 X-50.000000 Y50.000000
O17 if [#1 NE 0]
G41.1 D#1
O17 endif
g90 g1 y48.000000
G1 X-52.000000 Y33.000000
G1 X-50.000000 Y23.000000
G2 I4.980439 J-0.441843 X-43.182964 Y17.907682
G1 X-46.182964 Y16.907682
G40
G1 X-44.182964 Y18.907682
O16 endsub
F100
G21
O16 call [0]
O16 call [-.5]
O16 call [.5]
O18 sub (#1=radius)
F100
G0 X-50.000000 Y100.000000
O19 if [#1 NE 0]
G41.1 D#1
O19 endif
g90 g1 y98.000000
G1 X-54.000000 Y104.000000
G2 I0.897690 J1.201729 X-54.549771 Y105.595248
G2 I0.672110 J-1.340995 X-55.371792 Y104.386806
G3 I-0.734639 J1.860190 X-57.566737 Y104.880428
G40
G1 X-42.566737 Y108.880428
O18 endsub
F100
G21
O18 call [0]
O18 call [-.5]
O18 call [.5]
O20 sub (#1=radius)
F100
G0 X0.000000 Y-100.000000
O21 if [#1 NE 0]
G41.1 D#1
O21 endif
g90 g1 y-102.000000
G1 X15.000000 Y-101.000000
G3 I-3.939915 J-6.381776 X6.571635 Y-113.390421
G2 I1.555996 J2.082997 X7.390034 Y-108.814243
G1 X5.390034 Y-105.814243
G40
G1 X15.390034 Y-99.814243
O20 endsub
F100
G21
O20 call [0]
O20 call [-.5]
O20 call [.5]
O22 sub (#1=radius)
F100
G0 X0.000000 Y-50.000000
O23 if [#1 NE 0]
G41.1 D#1
O23 endif
g90 g1 y-52.000000
G1 X2.000000 Y-55.000000
G1 X0.000000 Y-70.000000
G1 X-2.000000 Y-66.000000
G2 I-0.734639 J1.860190 X-1.400808 Y-62.649544
G40
G1 X-4.400808 Y-68.649544
O22 endsub
F100
G21
O22 call [0]
O22 call [-.5]
O22 call [.5]
O24 sub (#1=radius)
F100
G0 X0.000000 Y0.000000
O25 if [#1 NE 0]
G41.1 D#1
O25 endif
g90 g1 y-2.000000
G1 X-4.000000 Y4.000000
G1 X0.000000 Y1.000000
G2 I5.478483 J-0.486028 X9.146519 Y4.612205
G2 I-2.889271 J-4.679969 X3.792843 Y4.849217
G40
G1 X4.792843 Y10.849217
O24 endsub
F100
G21
O24 call [0]
O24 call [-.5]
O24 call [.5]
O26 sub (#1=radius)
F100
G0 X0.000000 Y50.000000
O27 if [#1 NE 0]
G41.1 D#1
O27 endif
g90 g1 y48.000000
G1 X3.000000 Y42.000000
G1 X4.000000 Y38.000000
G2 I-1.365837 J-2.212349 X3.589193 Y33.369404
G1 X1.589193 Y35.369404
G40
G1 X3.589193 Y30.369404
O26 endsub
F100
G21
O26 call [0]
O26 call [-.5]
O26 call [.5]
O28 sub (#1=radius)
F100
G0 X0.000000 Y100.000000
O29 if [#1 NE 0]
G41.1 D#1
O29 endif
g90 g1 y98.000000
G1 X-10.000000 Y100.000000
G2 I2.240368 J-4.469983 X-4.425054 Y99.255683
G1 X5.574946 Y93.255683
G1 X1.574946 Y103.255683
G40
G1 X2.574946 Y113.255683
O28 endsub
F100
G21
O28 call [0]
O28 call [-.5]
O28 call [.5]
O30 sub (#1=radius)
F100
G0 X50.000000 Y-100.000000
O31 if [#1 NE 0]
G41.1 D#1
O31 endif
g90 g1 y-102.000000
G3 I1.164991 J-2.324391 X49.608995 Y-106.407388
G1 X54.608995 Y-116.407388
G2 I0.672110 J-1.340995 X56.281479 Y-116.630683
G1 X62.281479 Y-106.630683
G40
G1 X64.281479 Y-103.630683
O30 endsub
F100
G21
O30 call [0]
O30 call [-.5]
O30 call [.5]
O32 sub (#1=radius)
F100
G0 X50.000000 Y-50.000000
O33 if [#1 NE 0]
G41.1 D#1
O33 endif
g90 g1 y-52.000000
G1 X35.000000 Y-54.000000
G3 I-1.101958 J2.790285 X36.851188 Y-51.737853
G3 I1.494132 J-0.132553 X38.896299 Y-53.265549
G3 I-0.477515 J1.209123 X37.164317 Y-51.715376
G40
G1 X43.164317 Y-55.715376
O32 endsub
F100
G21
O32 call [0]
O32 call [-.5]
O32 call [.5]
O34 sub (#1=radius)
F100
G0 X50.000000 Y0.000000
O35 if [#1 NE 0]
G41.1 D#1
O35 endif
g90 g1 y-2.000000
G1 X49.000000 Y-7.000000
G1 X51.000000 Y-5.000000
G2 I-0.787983 J-1.276355 X49.539907 Y-4.935360
G3 I0.996088 J-0.088369 X49.937534 Y-5.824882
G40
G1 X46.937534 Y-1.824882
O34 endsub
F100
G21
O34 call [0]
O34 call [-.5]
O34 call [.5]
O36 sub (#1=radius)
F100
G0 X50.000000 Y50.000000
O37 if [#1 NE 0]
G41.1 D#1
O37 endif
g90 g1 y48.000000
G1 X52.000000 Y50.000000
G1 X51.000000 Y54.000000
G3 I2.464405 J-4.916982 X57.132441 Y53.181251
G3 I-3.414593 J-5.530873 X47.243277 Y48.224775
G40
G1 X50.243277 Y44.224775
O36 endsub
F100
G21
O36 call [0]
O36 call [-.5]
O36 call [.5]
O38 sub (#1=radius)
F100
G0 X50.000000 Y100.000000
O39 if [#1 NE 0]
G41.1 D#1
O39 endif
g90 g1 y98.000000
G1 X55.000000 Y95.000000
G1 X60.000000 Y96.000000
G2 I2.988264 J-0.265106 X61.192883 Y93.331436
G1 X58.192883 Y98.331436
G40
G1 X64.192883 Y96.331436
O38 endsub
F100
G21
O38 call [0]
O38 call [-.5]
O38 call [.5]
O40 sub (#1=radius)
F100
G0 X100.000000 Y-100.000000
O41 if [#1 NE 0]
G41.1 D#1
O41 endif
g90 g1 y-102.000000
G1 X110.000000 Y-104.000000
G2 I2.464405 J-4.916982 X114.484661 Y-114.032503
G1 X117.484661 Y-99.032503
G1 X118.484661 Y-109.032503
G40
G1 X121.484661 Y-114.032503
O40 endsub
F100
G21
O40 call [0]
O40 call [-.5]
O40 call [.5]
O42 sub (#1=radius)
F100
G0 X100.000000 Y-50.000000
O43 if [#1 NE 0]
G41.1 D#1
O43 endif
g90 g1 y-52.000000
G1 X115.000000 Y-47.000000
G1 X119.000000 Y-51.000000
G1 X123.000000 Y-53.000000
G2 I2.464405 J-4.916982 X122.172875 Y-62.323321
G40
G1 X128.172875 Y-57.323321
O42 endsub
F100
G21
O42 call [0]
O42 call [-.5]
O42 call [.5]
O44 sub (#1=radius)
F100
G0 X100.000000 Y0.000000
O45 if [#1 NE 0]
G41.1 D#1
O45 endif
g90 g1 y-2.000000
G1 X94.000000 Y-12.000000
G1 X92.000000 Y3.000000
G2 I1.344221 J-2.681990 X91.548841 Y-2.085448
G2 I-0.404051 J1.023104 X91.878396 Y-0.242697
G40
G1 X101.878396 Y4.757303
O44 endsub
F100
G21
O44 call [0]
O44 call [-.5]
O44 call [.5]
O46 sub (#1=radius)
F100
G0 X100.000000 Y50.000000
O47 if [#1 NE 0]
G41.1 D#1
O47 endif
g90 g1 y48.000000
G3 I0.896147 J-1.787993 X101.630786 Y44.351817
G3 I3.291530 J4.406339 X110.336417 Y47.789904
G1 X111.336417 Y48.789904
G2 I0.492881 J-0.983396 X112.233349 Y46.783403
G40
G1 X116.233349 Y36.783403
O46 endsub
F100
G21
O46 call [0]
O46 call [-.5]
O46 call [.5]
O48 sub (#1=radius)
F100
G0 X100.000000 Y100.000000
O49 if [#1 NE 0]
G41.1 D#1
O49 endif
g90 g1 y98.000000
G1 X98.000000 Y102.000000
G1 X102.000000 Y107.000000
G1 X100.000000 Y102.000000
G2 I0.448074 J-0.893997 X100.815393 Y100.175908
G40
G1 X98.815393 Y102.175908
O48 endsub
F100
G21
O48 call [0]
O48 call [-.5]
O48 call [.5]
m2