Author Topic: Create 3D body from imported 2D contour  (Read 5845 times)

0 Members and 1 Guest are viewing this topic.

Offline twistedresistorTopic starter

  • Contributor
  • Posts: 38
  • Country: 00
Create 3D body from imported 2D contour
« on: July 04, 2016, 08:43:40 am »
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.
 

Online T3sl4co1l

  • Super Contributor
  • ***
  • Posts: 22386
  • Country: us
  • Expert, Analog Electronics, PCB Layout, EMC
    • Seven Transistor Labs
Re: Create 3D body from imported 2D contour
« Reply #1 on: July 04, 2016, 09:28:11 am »
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
« Last Edit: July 04, 2016, 09:30:32 am by T3sl4co1l »
Seven Transistor Labs, LLC
Electronic design, from concept to prototype.
Bringing a project to life?  Send me a message!
 

Offline Philfreeze

  • Regular Contributor
  • *
  • Posts: 123
  • Country: ch
Re: Create 3D body from imported 2D contour
« Reply #2 on: July 04, 2016, 10:53:58 am »
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 selected
4. import dxf/dwg into FreeCAD per drag and drop
5. 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 object
6. select this object and use Draft->Draft to sketch. Now you should see another object called sketch on the left side
7. change with the combo box to part design, select the sketch object and use Part Design -> Pad
8. In the menu on the left enter your height
9. select the new pad object and use file -> export... and export it as step file
10. 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.
 

Offline twistedresistorTopic starter

  • Contributor
  • Posts: 38
  • Country: 00
Re: Create 3D body from imported 2D contour
« Reply #3 on: July 13, 2016, 07:08:13 am »
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 component
3. Select all on layer
4. Goto Tools > Manage 3D Bodies for current Component
5. For all "Polygonal shapes...." in this dialog change "Registration Layer" to your mechanical layer
6. Change "Body State" to "In component" via double click
7. Enter the desired height
8. Close
9. Copy the 3D component back to your PCB

Beware: 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)


« Last Edit: July 13, 2016, 07:43:36 am by twistedresistor »
 


Share me

Digg  Facebook  SlashDot  Delicious  Technorati  Twitter  Google  Yahoo
Smf