Blender has 3d printing tools as well as STL exporter. That is good for both hobby 3d printers which all use programs which use STL (eg. Repetier-Host) as an interchangeable format as well as professional 3d printers such as the ones by Solidscape, the users of which mostly use the Rhinoceros (Rhino) program which imports STL files exported by Blender just fine. This is also true for 4 axis CNCs.
However, getting something from Blender to be (2D) CNC milled/laser cut doesn't seem as easy. From personal experience from using services of both, common programs such services use for CNC milling and laser cutting is AutoCAD and CorelDraw. They ask formats which these programs can open. Blender can export to DXF, STL and many other formats. For some reason with the formats these programs ask, either Blender exports incomplete data or wrong/different data, because both these programs import them as wires, no surface data is preserved.
I've had this issue both with CorelDraw and AutoCAD, with different services, and both had to take my model file and modify them in their own programs by creating surfaces from those lines, a time consuming process. I have to pay extra to get the model "cleaned up" and in worst case the CNC milling/laser cutting service provider will refuse to do that and tell me to send them proper drawings, and rightfully so.
And this is not a limitation of these programs, a DXF exported by another program (for example Pepakura Designer) imports fine. So I hope we can find a solution here, I believe an answer would benefit many people who might be forced to use another program to design their milled/cut parts right now like I do.
Example Blender model (.blend is attached): http://www.pasteall.org/blend/42404
Now, let's look at what formats these programs can import and how they import them.
1) AutoCAD (version 2013 and 2015 tested)
From the formats Blender exports it only imports DXF. Blender can export DXF, however when it is imported only lines are imported, no polygon (surface) data.
2) CorelDraw (version X5 tested)
From the formats Blender exports it also only imports DXF. Same issue as with AutoCAD:
3) Rhinoceros (version 4.0 tested)
Being a 3D program, imports OBJ, STL, DXF, X, etc. Imports even the DXF exported from Blender just fine. Sadly, most CNC service providers I've come across don't use Rhino, mostly jewelers do.
I have not been able to test other programs yet such as Solidworks.
You can say since there is at least one program which imports the data, then it is not a Blender issue and shouldn't be asked. I disagree for the following reasons:
1) As I've mentioned, AutoCad as well as CorelDraw import polygonal data from other programs such as Pepakura Designer just fine. This is enough proof that Blender is at least partially to blame, or at least it can export the data differently like Pepakura does so these programs will import it correctly.
2) I believe it is important to make Blender a practical tool for designers CNC milling or laser cutting their designs. Regardless which tool is to blame, it is best for Blender to offer Blender users some way/workaround/pipeline of getting their designs as a usable file.
How can we go around finding a solution here? Since both these popular programs (Corel, AutoCAD) only import DXF, I see the only solutions being:
1) Finding a way to export DXF data so they will import it properly.
2) Finding a 3rd party tool (free or open source preferred) that will convert an intermediate file format exported from Blender to DXF which these programs will import properly.
For the record, when selecting different options in the Blender DXF exporter ("POLYLINE", "POLYFACE", "3DFACE"), nothing changes when importing in these tools.
Also for the record, if you wonder why use a 3D editor like Blender for cutting in 2D CNC, the answer is simple: 2D CNC is not just used for 2D cutouts, or more accurately the 2D cutouts might be 2D pieces that assemble together to make a 3D object like a computer case. Here's the actual model this 2D cutout was taken from:
It had to be made in 3D to make measurements and make sure everything is in correct position and fits with the rest of the project pieces.