Create 3D body from imported 2D contour - Page 1
Forum section: electronics / general

author: twistedresistor
author_rank: Contributor
timestamp: July 04, 2016, 08:43:40 am
content: Hi,I've been trying to create an extruded 3D body from a shape that I have imported on a mechanical layer.So far the only solution i found is to redraw it with the "Place -> 3D Body" tool.Which of course is a tedious job for this shapes with arcs, because i have to approximate it.I am looking for a way to create a 3D body from this closed outline similar to the way you can create a polygon "Create Polygon from Selected Primitives".Any ideas how to make this task a bit easier?Regards.

author: T3sl4co1l
author_rank: Super Contributor
timestamp: July 04, 2016, 09:28:11 am
content: It's kind of funny from my perspective, as I've used Ultiboard, where 3D shapes are extruded from 2D outlines. You're already done!...Anyway...I had to do a one of these recently, and didn't find a command for it. Didn't check scripts. Just drew a bunch of points (with a fine grid), approximating the shape. Took as long to draw as it likely would to find a better solution...At least there's this: if you like arcs, you can draw arcs (in AD15+, I think?). Try CTRL+SPACE a few times while drawing.Probably if you want anything more complex, you should do it with a real 3D tool, and get a file in VRML (along with a few others, can be imported and converted with a Pcb3DLib file), STEP (preferred) or SLDPRT (also new). And one I'm forgetting because I've never used it...It's idiotic that 3D Extruded objects cannot be edited by vertices, as Regions can. Wonder if anyone's reported that in Bug Crunch...The standard commercial method would simply be to lean over and ask your ME to cook it up real quick in SolidWorks or whatever. (I'm sure that's real helpful...)Sure would be great if there were more converters for 3D formats, then again maybe I'm just not "in" and there are lots of good programs I don't know about...Tim

author: Philfreeze
author_rank: Regular Contributor
timestamp: July 04, 2016, 10:53:58 am
content: How I would do it:1. download and install freecad (http://www.freecadweb.org)2. add the import dxf/dwg macro (http://www.freecadweb.org/wiki/index.php?title=Dxf_Importer_Install)3. select your outlines in Altium and export via File->Export->DXF/DWG with the setting Primitives to export with zero line widths as selected4. import dxf/dwg into FreeCAD per drag and drop5. select all objects in FreeCAD (left side), go to the Draft menu (combo box at the top), klick on Draft->Upgrade. Now your entire outline should be in one object6. select this object and use Draft->Draft to sketch. Now you should see another object called sketch on the left side7. change with the combo box to part design, select the sketch object and use Part Design -> Pad8. In the menu on the left enter your height9. select the new pad object and use file -> export... and export it as step file10. in Altium use Place -> 3D body, select Generic 3d Model at the top of the new windows, click load from file and load the step file.11. now click at your grid origin to place the 3d object exactly over your outline.freecad steps in a video:If something doesn't work just upload the outline (.PcbDoc) and someone can do it for you.

author: twistedresistor
author_rank: Contributor
timestamp: July 13, 2016, 07:08:13 am
content: So, there is actually a fairly simple solution:1. You can't do it in the PCB editor, you have do do it in a PCBlib.2. Copy your stuff on a mechanical layer into a new PCB component3. Select all on layer4. Goto Tools > Manage 3D Bodies for current Component5. For all "Polygonal shapes...." in this dialog change "Registration Layer" to your mechanical layer6. Change "Body State" to "In component" via double click7. Enter the desired height8. Close9. Copy the 3D component back to your PCBBeware: If you have a triangular shape (see left item in picture of original post), there is a bug, you have to put in a kink in one of the sides of the triangle to get the shape recognized in the tool. This is known by Altium. But you can easily move the vertex back in the finished 3D Body, if you only shift it by one grid unit. (see attached picture)