This is an usual question and while I’m technically modeling, it might not be in the right place. I’m using blender to design assemblies of sheet goods (eg plywood) that I’ll ultimately be cutting out with a laser cutter and building IRL. It’s a great way for me to make sure things are going to fit together they way I expect. The catch comes when it’s time to export the designs into something like a DXF to import into AI. Does anyone have a workflow that might be more efficient than manually disassembling, converting to paths, and using the DXF exporter?
You need a true cad program for this. CNC lasers require curves to be defines as arcs or splines. Although some systems will accept splines (or beziers) most CAM systems must convert them to arcs, so you are better off drawing all curves as a series of arcs in a cad program. You can download Draftsight from Dassault Systems. Its free.
Unfortunately, the free version of draftsight is 2D only. I’m finding blender very useful in figuring out how to make cut sheet goods fit together into 3D structures. I’ll check the python forum. Seems like there could be a script which recognizes all rectilinear objects with a fixed width (e.g. 3 units: corresponding to 3mm plywood for my designs) and converts other two local dimensions into a 2D path. I know, I know, that’s going to be easier said than done. I was just wondering if anyone had managed it yet.
Yes, I was thinking that once you has the shape rotated to the 2d drawing plane (which you would have to do anyway to create a cutting program) you would have to draw arc or circle entities wherever there are curves or circular holes.
Blender is not the right tool if you need to take designs through manufacturing. Freecad might be useful, although there are some low cost 3D applications out there.
FYI, G-code for STL (slicing) produces facetted output. Generally, for 2D cutting using laser, waterjet, router, mill etc. curves should be represented as a series of arcs. Facets are not desirable for 2 reasons:
noticeable on cut edges of part
slows CNC machine down, due to acceleration and deceleration from one facet to another.
I think you are right, I’m sure someone who is good with programming could figure out how to create the proper 2D entities from the Blender file. There are algorithms to fit arcs and splines to polylines (autocad entity consisting of a series of connected line segments/facets) It just seems like reinventing the wheel to have to create code to make it work specifically with Blender.
Agreed on the choice of software purpose built for engineering. So I’ll throw another product in here. Check out Autodesk Fusion 360. Its specifically designed for 3D engineering fabrication use, although I’m uncertain of the CNC/sheet cutting abilities. At the very least it should get you most of the way there, and it’s free for hobbyists as well as limited commercial use.
So I did some tinkering and noticed some interesting things once it came time to export my test model. First and foremost I have found that I cannot export a curve as a DXF, I’ve always had to have a mesh and not a curve for export. I used a previously created DXF file for testing but the principle ideas should be the same as starting from scratch using Blender on a base mesh. When I have my outline of the shape I want to make into a 3D object I use a NGON for the surface of the “plywood”, this is paramount for the export step. After I add the NGON face I then extrude the plane to add the thickness I want to my model. So let’s say you have a similar model to mine, your fitment looks good on your panels and you are ready for export you simply use your mesh in object mode for exporting to a 2D DXF. What I mean by that is that you do not need to take anything apart nor should you convert to curves. I have found through some simple tests that the “edges” of the model will export nicely without any manipulation or conversion. If you have edges on the surface of the models those will also be converted to lines inside your DXF outline. That’s why you must use a NGON for the surface, no edges to muck up your 2D DXF.
Here are the settings I used to export my model directly from a base 3D mesh to a 2D DXF vector file. I did find something odd about the DXF though, it’s always broken into smaller lines. I have workarounds for that using MOI3D but you may have to tinker with AI as I have only used it to test this very idea of DXF imports. Also you will have to experiment with the units for your dimensions. 99.8 percent of the time I never use real world units of measurements in Blender, I use the 1 Blender unit = 1 MM. I have created multiple projects using Blender for a multitude of CNC and 3D printing projects and typically the software that you are importing your files into will ask what unit of measurement you would like to import the file into.
I also tested my theory using Inkscape to see if my DXF idea works, it did. I also notice that the file is still a 3D object inside other 3D programs but 2D vector programs can still work with the DXF file. I hope this helps.
I use the standard DXF exporter that comes with Blender. Honestly I never liked the way Blender displayed dimensions using units. I just kept it simple by doing my own conversions with the Blender unit system as my measurements. It’s worked for me with CNC machines, water-jets as well as 3D printing. I have not physically used a Laser CNC machine so when I saw this I thought it was an interesting question and I recently had a somewhat similar issue creating a file for a water-jet machine. I ended up using MOI3D by itself to create the DXF as it’s a lot easier to work with NURBS for something like this.
Well here’s the thing about this idea for myself at least. When it comes to making vector files for CNC projects I’d never use Blender. I have multiple programs for design purposes that use curves and they are much better for CAD purposes. Typically I’d use MOI3D of I wanted to go from 2D to 3D as the OP was attempting to do. If I didn’t need a 3D object I’d go directly to using Vectric V-Carve to design my cut files. But hey, I was curious if I could do it using Blender 2.78 exclusively instead of MOI3D. As you can see from the results it seems to work as the OP was hoping it could. As to the units of measurement I find when uploading my 3D files to Shapeways if I kept my model in Blender units 1 Blender unit equalled 1 mm. I’ll do some testing with various other programs if anyone was curious about my thought process.