Splines to Gcode from dxf file
08 Jan 2022 23:02 - 08 Jan 2022 23:08 #231190
by Matt Hat
Replied by Matt Hat on topic Splines to Gcode from dxf file
Finally I can show some G5 code that actually runs in linuxCNC. Against my previous posts, the parameters I,J,P, Q are indeed given relatively to the start and end points. This should give a circle of Radius 10 mm:and this an ellipse of size 20x10 mm:
Details on github with some reorganization of the files.
github.com/Matttab/spline-examples/tree/main/linuxCNCsplineTest
G0 X10 G5 X0.000 Y10.000 I0.000 J5.200 P5.200 Q0.000
G5 X-10.000 Y0.000 I-5.200 J0.000 P0.000 Q5.200
G5 X0.000 Y-10.000 I0.000 J-5.200 P-5.200 Q0.000
G5 X10.000 Y0.000 I5.200 J0.000 P0.000 Q-5.200
G0 X10 G5 X0.000 Y5.000 I0.000 J2.600 P5.200 Q0.000
G5 X-10.000 Y0.000 I-5.200 J0.000 P0.000 Q2.600
G5 X0.000 Y-5.000 I0.000 J-2.600 P-5.200 Q0.000
G5 X10.000 Y0.000 I5.200 J0.000 P0.000 Q-2.600
Details on github with some reorganization of the files.
github.com/Matttab/spline-examples/tree/main/linuxCNCsplineTest
Last edit: 08 Jan 2022 23:08 by Matt Hat.
Please Log in or Create an account to join the conversation.
- robertspark
- Offline
- Platinum Member
Less
More
- Posts: 915
- Thank you received: 216
09 Jan 2022 00:19 - 09 Jan 2022 00:21 #231202
by robertspark
Replied by robertspark on topic Splines to Gcode from dxf file
if you have a spline in a DXF file there are normally a few options to change it to a simple entity (polyline) which is recognisable by post processing software.
I normally use "splineedit" if I am using AutoCAD / bricscad and only dealing with 1 spline, and convert it to a polyline entity, with a high curve fit number ( but you will end up with a lot of entities / segments).
option 2 if I have more than 1 spline..... I create a new linetype called "splines" or whatever and make it my current layer. I then use "qselect" to select all spline entities and place them on their own layer I just created. I then turn off all layers except the one I am working on via "-la" , "*", "off"
I then used "pedit" (polyline edit) and "m" (multiple) and then select all the splines with a mouse sweep of the screen followed by selecting "splines to polylines" and again give it a high precision, and then save the file as a DXF for sheetcam / estlcam to post process to gcode.
I have also read that you can save the DXF as an old r12 DXF file format and it will do a similar thing as r12 DXF does not recognise splines and will convert them to polylines..... although I've just read this and not tried it out.
3d splines can be a pia as they have elevation, so if you have bricscad ot full autocad you can run commands such as "flatten" and "overkill" to flatten the objects to the same plane "Z0" and remove overlaid or multiple stacked entities one on top of each other.
librecad will do some of the above but I don't think it has overkill or flatten commands.
I normally use "splineedit" if I am using AutoCAD / bricscad and only dealing with 1 spline, and convert it to a polyline entity, with a high curve fit number ( but you will end up with a lot of entities / segments).
option 2 if I have more than 1 spline..... I create a new linetype called "splines" or whatever and make it my current layer. I then use "qselect" to select all spline entities and place them on their own layer I just created. I then turn off all layers except the one I am working on via "-la" , "*", "off"
I then used "pedit" (polyline edit) and "m" (multiple) and then select all the splines with a mouse sweep of the screen followed by selecting "splines to polylines" and again give it a high precision, and then save the file as a DXF for sheetcam / estlcam to post process to gcode.
I have also read that you can save the DXF as an old r12 DXF file format and it will do a similar thing as r12 DXF does not recognise splines and will convert them to polylines..... although I've just read this and not tried it out.
3d splines can be a pia as they have elevation, so if you have bricscad ot full autocad you can run commands such as "flatten" and "overkill" to flatten the objects to the same plane "Z0" and remove overlaid or multiple stacked entities one on top of each other.
librecad will do some of the above but I don't think it has overkill or flatten commands.
Last edit: 09 Jan 2022 00:21 by robertspark.
Please Log in or Create an account to join the conversation.
10 Jan 2022 16:47 - 10 Jan 2022 16:53 #231320
by Matt Hat
Replied by Matt Hat on topic Splines to Gcode from dxf file
Attachments:
Last edit: 10 Jan 2022 16:53 by Matt Hat.
Please Log in or Create an account to join the conversation.
10 Jan 2022 16:51 - 10 Jan 2022 16:54 #231321
by Matt Hat
Replied by Matt Hat on topic Splines to Gcode from dxf file
Attachments:
Last edit: 10 Jan 2022 16:54 by Matt Hat.
Please Log in or Create an account to join the conversation.
10 Jan 2022 18:33 #231327
by jtc
Replied by jtc on topic Splines to Gcode from dxf file
In axis you can go to File and next Proprieties (or gcode proprieties, can't remember the correct name ) and you can see the respective length of the Spline(s).
This value can be compared if matches the length of the Spline on CAD program. Its a quick way to confirm is its correct.
João
This value can be compared if matches the length of the Spline on CAD program. Its a quick way to confirm is its correct.
João
Please Log in or Create an account to join the conversation.
25 Jan 2022 10:36 #233048
by rishab
Replied by rishab on topic Splines to Gcode from dxf file
This is helpful, thanks for sharing.
Please Log in or Create an account to join the conversation.
10 Feb 2022 06:35 #234465
by HaroldH
Replied by HaroldH on topic Splines to Gcode from dxf file
Thank you for nice post.
Please Log in or Create an account to join the conversation.
Time to create page: 0.152 seconds