Generate simple 3D models inside KiCad / support extruded outlines and footprint height property
[Original report](https://bugs.launchpad.net/bugs/1794324) created by **eelik (eelik)** ``` This is a wishlist item which would require a change to the footprint file format. I would like to have an ability to add a simple parametrized box (or other very simple object) as a 3D model for footprints. It would be an alternative to the external 3d file. The parameters would be saved along with the footprint. The parameters would be: x, y, z dimensions and rounding (chamfer) radius in each direction. Maybe also color. That would be enough for visualizing the board roughly, either in the 3d view or in a step model for physical dimensions. This could be a huge space saver if someone doesn't want to download the 3d models. It would also help when a model isn't available. It could also make projects really standalone without 3d files if exact modeling isn't needed but the 3d view still wanted. ``` 2020-09-29 addition (JE): We should support a few parametric model generators that will result in valid STEP export as well as 3D preview inside KiCad. The easiest way to do this would be to take a closed shape (in the 2D editor) and convert it to a 3D model by an extrude operation. The user just has to draw the shape (rectangle, circle, or even some complex polygon) and specify the height to extrude by. KiCad Version: ``` Application: Pcbnew Version: (5.99.0-3657-gab033327c), debug build Libraries: wxWidgets 3.0.4 libcurl/7.68.0 OpenSSL/1.1.1f zlib/1.2.11 brotli/1.0.7 libidn2/2.2.0 libpsl/0.21.0 (+libidn2/2.2.0) libssh/0.9.3/openssl/zlib nghttp2/1.40.0 librtmp/2.3 Platform: Linux 5.4.0-47-generic x86_64, 64 bit, Little endian, wxGTK, ubuntu, x11 Build Info: Date: Sep 29 2020 17:56:07 wxWidgets: 3.0.4 (wchar_t,wx containers,compatible with 2.8) GTK+ 3.24 Boost: 1.71.0 OCE: 6.9.1 Curl: 7.68.0 ngspice: 31 Compiler: GCC 9.3.0 with C++ ABI 1013 Build settings: KICAD_SCRIPTING=ON KICAD_SCRIPTING_MODULES=ON KICAD_SCRIPTING_PYTHON3=ON KICAD_SCRIPTING_WXPYTHON=ON KICAD_SCRIPTING_WXPYTHON_PHOENIX=ON KICAD_SCRIPTING_ACTION_MENU=ON BUILD_GITHUB_PLUGIN=ON KICAD_USE_OCE=ON KICAD_SPICE=ON KICAD_STDLIB_DEBUG=OFF KICAD_STDLIB_LIGHT_DEBUG=OFF KICAD_SANITIZE=OFF ```
issue