On Wed, 26 Jan 2022 at 00:27, andy pugh <[email protected]> wrote:
>
> A problem has been reported on the bug tracker, regarding some (valid)
> G-code from FreeCAD which features an arc of very large radius.


I think I have fixed this, but as it changes probably the second most
important part of LinuxCNC (after G1) I am hesitant to push it without
lots of testing.
https://github.com/LinuxCNC/linuxcnc/commit/d846491b75d1622f3a70b17788b6183d175ae799
It would be appreciated if folk could at least glance at the code and
think of tests to break it.

One test file I have tried draws all the possible clock-face arcs:



; generate test arcs

G21 G90.1

#1 = 0
#2 = 0
#3 = 6
O100 while [#1 LT 12]
#2 = 0
F1000
    O200 while [#2 LT 12]
        #4 = [-240 + #1 * 20]
        #5 = [200 - #2 * 20]
        G0 X [#4 - #3 * sin[#1 * 30]] Y [#5 - #3 * cos[#1 * 30]]
        G3 X [#4 - #3 * sin[#2 * 30]] Y [#5 - #3 * cos[#2 * 30]] I #4 J #5
    #2 = [#2 + 1]
O200 endwhile
#2 = 0
    O300 while [#2 LT 12]
        #4 = [20 + #1 * 20]
        #5 = [200 - #2 * 20]
        G0 X [#4 - #3 * sin[#1 * 30]] Y [#5 - #3 * cos[#1 * 30]]
        G2 X [#4 - #3 * sin[#2 * 30]] Y [#5 - #3 * cos[#2 * 30]] I #4 J #5
#2 = [#2 + 1]
O300 endwhile
#1 = [#1 + 1]
O100 endwhile
m2


-- 
atp
"A motorcycle is a bicycle with a pandemonium attachment and is
designed for the especial use of mechanical geniuses, daredevils and
lunatics."
— George Fitch, Atlanta Constitution Newspaper, 1912


_______________________________________________
Emc-developers mailing list
[email protected]
https://lists.sourceforge.net/lists/listinfo/emc-developers

Reply via email to