← Back to team overview

kicad-developers team mailing list archive

3D models


I have been working on a number of parametric 3D models for KiCAD; at the moment there are only thru-hole models but I think they are useful for hobbyists who still use a lot of TH components. At the moment I distribute the generated models via the sourceforge downloads, but the files are pretty big and the parametric models, although only perhaps 15k lines of code so far, can easily generate thousands of models which take up a total of many hundreds of MB.

I think it will be more useful if users had the option to download the source code and generate the 3D models themselves.  For this to be possible (and not too painful) I am proposing an addition to the structure of the KiCAD installation directories: in kicad/modules I suggest an "mcad" directory be added in parallel to the "packages3d" directory. At the moment the directory structure looks something like this:

+-- colors : files for VRML color schemes to aid in developing 3D models with consistent appearance
+-- vrml: 3D vrml models similar to what is currently in packages3d
    +-- thru: thru-hole components
        +-- dil: DIL packages
        +-- conn: connectors
        +-- res: resistors
        +-- diode: diodes

At the moment there are quite a few thousand models under "res" and "conn"; in the case of "res" it is primarily because the resistors are color coded, but for "conn" the >3000 models are actually different components.

I think this scheme will not be intrusive since it is only an addition and it allows users to place these 3D models in parallel with the existing ones, or even to install in their own directories and there is no code change at all to be made to KiCAD. Ultimately the aim is to add another branch "mcad/fc" which will contain FreeCAD models which can also be parametrically generated as I work towards providing an MCAD-ECAD integration path.

Note: At the moment the software is only tested on Linux but should compile with no problems on OSX; for MSWin users there will be some issues due to dependence on GNU getopt for some of the command-line tools.

Any comments/suggestions?  For Adam in particular, I would be happy to work on scripts etc. to ensure that at least the Ubuntu users can install the tools and generate/install the models. For anyone interested the source is at sourceforge.net/projects/kicad3dmodels/files/source_v0.9/

There are Python bindings as well and a number of models are currently generated via Python scripts. If a user wants a variation of a model which had not been generated, for example a resistor with a different pitch or different physical size, users now have an option to create what they need via Python without the typical and difficult job of creating a Wings3D model.

The project web page (kicad3dmodels.sourceforge.net) has images of JP Charras' PIC Programmer demo project in 3D using the current models and with resistor/DIL models replaced by the new models; I actually have images where the diodes and the 2-post header is also updated, but I haven't updated my web page yet.

- Cirilo