@galgier mentioned a favourite software of mine:
As folks may have noticed, I will frequently rough out designs using BlockSCAD:
but I’ve been stymied by the default export to STL, which is fine for 3D printing and some CNC usages, but which hasn’t worked well for certain of my projects, so I’ve been working on a library which allows directly creating DXF (and G-code) from OpenSCAD in a fashion which matches/expresses tool movement:
and which has been discussed here a bit (and in various other places).
There are a few other tools in this space, and a fair number of related tools, and the broader category of “using Python to make code for OpenSCAD” is so popular/frequent as to be about impossible to track.
So this is me once again stumping for ideas/discussion/feedback/thoughts/critiques… for folks who program for CNC, what sort of programming do you do? Using what tools and languages and what approaches? How are you generating a preview of your designs? What libraries/modules/functions do you wish existed and have not yet found the time to write?
My brother (who I helped move a used 5 pro he bought last week) does a lot in OPENSCAD. He has been doing 3D printing for several years (he was additive, and I was subtractive fabrication)
I am sure he would be very interested in being able to design in OPENSCAD and transform it in some manner to run on his 5pro. I’ll make him aware of this thread
John
I have not yet delved into the requirements for creating gcode for CNC routing applications. However, I think you would probably need STEP files instead of DXF files. It is my understanding that a STEP file would model a 3D object while a DXF file would model a 2D object. The DXF would be just a slice of the object at a given height. Openscad has the projection function to create a 2D projection of your object and export to a DXF file. When you use a slicer in 3D printing, you are basically creating a 2D slice for each later height to determine the tool path. From the one example that John showed me of carving a 3D object, CNC routing does not do layer by layer, but rather the tool head moved vertically as it rastered across the carving. As such, I don’t see how a 2D slice is applicable for CNC routing, but it may just be that I am a newbie to CNC routing.
Joe
As noted, OpenSCAD as-is/as-typicall-used will make STLs which work fine for MeshCAM or Carbide Create Pro (or for that matter Workshop in Atom 3D).
I am making DXFs so that they can be imported into Carbide Create — the idea is to make a 3D model using toolpaths:
capture the toolpath, or outlines of their regions in a colour-coded DXF:
import the DXF into Carbide Create and assign the various elements to layers based on the colours from the DXF:
which with appropriate toolpaths associated with the layers:
cuts the design:
Ultimately, the vast majority of toolpaths are 2D routing (with rapids to move between heights/toolpaths).