When PCB layout is ready, to show the PCB as 3D model

Bug #698827 reported by Pál Csányi on 2008-07-18
This bug affects 2 people
Affects Status Importance Assigned to Milestone
gEDA project

Bug Description

In xgsch2pcb I wish to have an option to show the PCB in 3D model when it is accomplished in pcb tool.

I think that there is a possibility to write a script that should to make an output file for the BRL-CAD free modelling system.

From xgsch2pcb one would to have a possibility to run that script and that script make an output file and on that file should to run mged (BRL-CAD).

The BRL-CAD should then show the PCB as 3D modell.

This is only my idea, but what do you think about it?

Regards, Paul Csanyi

Peter TB Brett (peter-b) wrote :

Hi Paul,

Thank you for this idea. Please file a feature request with the PCB project, suggesting the addition of a BRL-CAD exporter. If and when such an exporter exists, we will revisit this request.



Peter Clifton (pcjc2) wrote :

IMO, the biggest obstacle is decent 3D models for various components, along with data which matches the orientation and datum to those used on PCB. (Bonus points would be available later for adding enough surface datum information to automagically texture map components with text or coloured stripes derived from the BOM ;).

If you just wanted a 3D model of the board, that could be done, but I expect you want components too.

Peter Clifton (pcjc2) on 2011-01-14
Changed in pcb:
importance: Undecided → Wishlist
Pál Csányi (csanyipal) wrote :

I agree with you in on everything, but I haven't much spare time to create all of these 3D models for various components.
However I could try to start creating some of them and I need to know which one of them to start with?
I think that that I must to use datasheet of the electric model when I being making such a 3D model in BRL-CAD, right?

Peter Clifton (pcjc2) wrote :

I'd pick something which you can use. What is important to your designs?

I'm not certain BRL-CAD will be something we support at any time soon, and from what I've heard, it has rather a steep learning curve. I was wondering if we could model in something like Blender, or perhaps Wings3D (which KiCad uses).

KaiMartin (kmk-familieknaak) wrote :

Modelers like Blender or Wings 3D are a dead end from an engineering point of view. They are meant to produce pretty images. And this is indeed, what they are very good at. But the picture itself does not help you much to fit the electronics into an enclosure, or have the workshop drill holes at the correct position. There is no straight forward way from the modelers to 3D CAD. This is for a reason.

There is a fundamental mismatch between 3D modelers and 3D CAD applications. At the very bottom the modelers treat everything as a shape. By contrast, 3D CAD applications build shapes from primitive objects. Because of this, it is easy to go from 3D CAD to 3D modeler. Every decent 3D CAD application exports to one or several popular shape formats. But it is hard to go from 3D modeler to 3D CAD. How do you extract the position of a hole from a bunch of triangles that as a group approach the shape of a hole in a cube?

3D CAD offers the potential for much more than pretty pictures for the sales pitch. You'd be able to shape your enclosure to fit the electronics and vice versa. This why I strongly advocate to direct 3D coding efforts toward a 3D CAD direction rather than toward a 3D modeler.


Peter Clifton (pcjc2) wrote :

Pretty pictures is what some people want.. and also easier for me to code.

This said - the word I keep hearing across the spectrum of professionals, is that STEP is the way forward, and what vendors will typically provide models in.

KaiMartin (kmk-familieknaak) wrote :

That' s true. Solid models usually come in STEP. I successfully used this kind of models for some of my projects.
Every half way decent 3D CAD application can import/export STEP. Even freecad can, although it still has a long way to go until it is a full fledged 3D CAD design suite. BTW, there was a kicad discussion on the freecad forum.
Bottom line: VRML was a show stopper.

Back on topic: Export as STEP would be best with regard to 3D CAD. But it also is such a pain license wise and for practical coding, that even the powerful blender project did not produce an import utility.
I was curious how STEP format is actually composed. But it seems to be a well kept secret. At least google search failed on me.

IMHO, a realistic way to go is an export/import to a FOSS 3D CAD format. That way, geda can have it all:
1) A two-way link to the mechanical engineering world.
2) A straight forward way to beautiful images -- via scripted import/export to blender format
3) Stay untainted on the license side.


Bert Timmerman (bert-timmerman) wrote :

Blender seems to support the OpenCascade file format in some way, as advertised in the link:


There is an app called OpenSCAD which is based on OpenCascade.

The file format op OpenSCAD is a subset of the C-labguage, easy to grasp and straightforward and describes primitives, not faces or vertices (similar to VRML, which is lower in the "food chain").

Furthermore the OpenSCAD C-language supports macros and functions as to allow for parametric use of 3D-models (one only needs to create a prototype part once, and then inherit from that prototype for other sized parts of the same shape).

This would lead to a (feasible) workflow like:

pcb --> OpenSCAD --> Blender

which may be scriptable to some extent (Makefile).

OpenSCAD has the feature of being able to extrude closed polyline shapes (lines, arcs, circles), and thus create a pcb board from an outline in a DXF file (drawn with Qcad or similar),

Exporting from OpenSCAD to a stl format (standard Lithography) for creating mock ups with a plastruder/replicator is possible as well.

Please have a look at:


KaiMartin (kmk-familieknaak) wrote :

I changed my mind somewhat on the export/import format. EDIF seems like the perfect fit. It is designed to communicate layout and component placement data between applications. Consequently, many CAD applications can deal with EDIF. It is one of the industry standards. BTW, in 2002 EDIF has been included into STEP as part "AP 210"

The specific problems of electronic layouts like component placement and component orientation are dealt with. There are open sourced applications that can import/export EDIF. Two of them are kicad and electric. So there is code to steal from.
In addition, the ability to communicate designs with them would be highly desirable. In addition, EDIF would potentially open the path to and from eagle, altium, orcad, zuken and the like. These paths may or may not be blocked due to incorrect implementation on the commercial side. But it is worth trying.


Traumflug (mah-jump-ing) on 2015-09-27
Changed in geda-project:
importance: Undecided → Wishlist
To post a comment you must log in.
This report contains Public information  Edit
Everyone can see this information.

Duplicates of this bug

Other bug subscribers