KiBot/docs/source/configuration/outputs/render_3d.rst

123 lines
12 KiB
ReStructuredText

.. Automatically generated by KiBot, please don't edit this file
.. index::
pair: 3D render of the PCB; render_3d
3D render of the PCB
~~~~~~~~~~~~~~~~~~~~
Exports the image generated by KiCad's 3D viewer.
Type: ``render_3d``
Category: **PCB/3D**
Parameters:
- **comment** :index:`: <pair: output - render_3d; comment>` [string=''] A comment for documentation purposes. It helps to identify the output.
- **dir** :index:`: <pair: output - render_3d; dir>` [string='./'] Output directory for the generated files.
If it starts with `+` the rest is concatenated to the default dir.
- **name** :index:`: <pair: output - render_3d; name>` [string=''] Used to identify this particular output definition.
Avoid using `_` as first character. These names are reserved for KiBot.
- **options** :index:`: <pair: output - render_3d; options>` [dict] Options for the `render_3d` output.
- Valid keys:
- **download** :index:`: <pair: output - render_3d - options; download>` [boolean=true] Downloads missing 3D models from KiCad git.
Only applies to models in KISYS3DMOD and KICAD6_3DMODEL_DIR.
They are downloaded to a temporal directory and discarded.
If you want to cache the downloaded files specify a directory using the
KIBOT_3D_MODELS environment variable.
- **move_x** :index:`: <pair: output - render_3d - options; move_x>` [number=0] Steps to move in the X axis, positive is to the right.
Just like pressing the right arrow in the 3D viewer.
- **move_y** :index:`: <pair: output - render_3d - options; move_y>` [number=0] Steps to move in the Y axis, positive is up.
Just like pressing the up arrow in the 3D viewer.
- **no_virtual** :index:`: <pair: output - render_3d - options; no_virtual>` [boolean=false] Used to exclude 3D models for components with 'virtual' attribute.
- **output** :index:`: <pair: output - render_3d - options; output>` [string='%f-%i%I%v.%x'] Name for the generated image file (%i='3D_$VIEW' %x='png'). Affected by global options.
- **ray_tracing** :index:`: <pair: output - render_3d - options; ray_tracing>` [boolean=false] Enable the ray tracing. Much better result, but slow, and you'll need to adjust `wait_rt`.
- **rotate_x** :index:`: <pair: output - render_3d - options; rotate_x>` [number=0] Steps to rotate around the X axis, positive is clockwise.
Each step is currently 10 degrees. Only for KiCad 6 or newer.
- **rotate_y** :index:`: <pair: output - render_3d - options; rotate_y>` [number=0] Steps to rotate around the Y axis, positive is clockwise.
Each step is currently 10 degrees. Only for KiCad 6 or newer.
- **rotate_z** :index:`: <pair: output - render_3d - options; rotate_z>` [number=0] Steps to rotate around the Z axis, positive is clockwise.
Each step is currently 10 degrees. Only for KiCad 6 or newer.
- **show_components** :index:`: <pair: output - render_3d - options; show_components>` [list(string)|string=all] [none,all] List of components to draw, can be also a string for `none` or `all`.
Unlike the `pcbdraw` output, the default is `all`.
- **view** :index:`: <pair: output - render_3d - options; view>` [string='top'] [top,bottom,front,rear,right,left,z,Z,y,Y,x,X] Point of view.
- **zoom** :index:`: <pair: output - render_3d - options; zoom>` [number=0] Zoom steps. Use positive to enlarge, get closer, and negative to reduce.
Same result as using the mouse wheel in the 3D viewer.
- ``auto_crop`` :index:`: <pair: output - render_3d - options; auto_crop>` [boolean=false] When enabled the image will be post-processed to remove the empty space around the image.
In this mode the `background2` is changed to be the same as `background1`.
- ``background1`` :index:`: <pair: output - render_3d - options; background1>` [string='#66667F'] First color for the background gradient.
- ``background2`` :index:`: <pair: output - render_3d - options; background2>` [string='#CCCCE5'] Second color for the background gradient.
- ``board`` :index:`: <pair: output - render_3d - options; board>` [string='#332B16'] Color for the board without copper or solder mask.
- ``clip_silk_on_via_annulus`` :index:`: <pair: output - render_3d - options; clip_silk_on_via_annulus>` [boolean=true] Clip silkscreen at via annuli (KiCad 6+).
- ``copper`` :index:`: <pair: output - render_3d - options; copper>` [string='#8b898c'] Color for the copper.
- ``dnf_filter`` :index:`: <pair: output - render_3d - options; dnf_filter>` [string|list(string)='_none'] Name of the filter to mark components as not fitted.
A short-cut to use for simple cases where a variant is an overkill.
- ``download_lcsc`` :index:`: <pair: output - render_3d - options; download_lcsc>` [boolean=true] In addition to try to download the 3D models from KiCad git also try to get
them from LCSC database. In order to work you'll need to provide the LCSC
part number. The field containing the LCSC part number is defined by the
`field_lcsc_part` global variable.
- ``height`` :index:`: <pair: output - render_3d - options; height>` [number=720] Image height (aprox.).
- ``highlight`` :index:`: <pair: output - render_3d - options; highlight>` [list(string)=[]] List of components to highlight.
- ``highlight_on_top`` :index:`: <pair: output - render_3d - options; highlight_on_top>` [boolean=false] Highlight over the component (not under).
- ``highlight_padding`` :index:`: <pair: output - render_3d - options; highlight_padding>` [number=1.5] [0,1000] How much the highlight extends around the component [mm].
- ``kicad_3d_url`` :index:`: <pair: output - render_3d - options; kicad_3d_url>` [string='https://gitlab.com/kicad/libraries/kicad-packages3D/-/raw/master/'] Base URL for the KiCad 3D models.
- ``kicad_3d_url_suffix`` :index:`: <pair: output - render_3d - options; kicad_3d_url_suffix>` [string=''] Text added to the end of the download URL.
Can be used to pass variables to the GET request, i.e. ?VAR1=VAL1&VAR2=VAL2.
- ``no_smd`` :index:`: <pair: output - render_3d - options; no_smd>` [boolean=false] Used to exclude 3D models for surface mount components.
- ``no_tht`` :index:`: <pair: output - render_3d - options; no_tht>` [boolean=false] Used to exclude 3D models for through hole components.
- ``orthographic`` :index:`: <pair: output - render_3d - options; orthographic>` [boolean=false] Enable the orthographic projection mode (top view looks flat).
- ``pre_transform`` :index:`: <pair: output - render_3d - options; pre_transform>` [string|list(string)='_none'] Name of the filter to transform fields before applying other filters.
A short-cut to use for simple cases where a variant is an overkill.
- ``realistic`` :index:`: <pair: output - render_3d - options; realistic>` [boolean=true] When disabled we use the colors of the layers used by the GUI. KiCad 6 or newer.
- ``show_adhesive`` :index:`: <pair: output - render_3d - options; show_adhesive>` [boolean=false] Show the content of F.Adhesive/B.Adhesive layers. KiCad 6 or newer.
- ``show_board_body`` :index:`: <pair: output - render_3d - options; show_board_body>` [boolean=true] Show the PCB core material. KiCad 6 or newer.
- ``show_comments`` :index:`: <pair: output - render_3d - options; show_comments>` [boolean=false] Show the content of the User.Comments layer. KiCad 6 or newer and ray tracing disabled.
- ``show_eco`` :index:`: <pair: output - render_3d - options; show_eco>` [boolean=false] Show the content of the Eco1.User/Eco2.User layers. KiCad 6 or newer and ray tracing disabled.
- ``show_silkscreen`` :index:`: <pair: output - render_3d - options; show_silkscreen>` [boolean=true] Show the silkscreen layers (KiCad 6+).
- ``show_soldermask`` :index:`: <pair: output - render_3d - options; show_soldermask>` [boolean=true] Show the solder mask layers (KiCad 6+).
- ``show_solderpaste`` :index:`: <pair: output - render_3d - options; show_solderpaste>` [boolean=true] Show the solder paste layers (KiCad 6+).
- ``show_zones`` :index:`: <pair: output - render_3d - options; show_zones>` [boolean=true] Show filled areas in zones (KiCad 6+).
- ``silk`` :index:`: <pair: output - render_3d - options; silk>` [string='#d5dce4'] Color for the silk screen.
- ``solder_mask`` :index:`: <pair: output - render_3d - options; solder_mask>` [string='#208b47'] Color for the solder mask.
- ``solder_paste`` :index:`: <pair: output - render_3d - options; solder_paste>` [string='#808080'] Color for the solder paste.
- ``subtract_mask_from_silk`` :index:`: <pair: output - render_3d - options; subtract_mask_from_silk>` [boolean=true] Clip silkscreen at solder mask edges (KiCad 6+).
- ``transparent_background`` :index:`: <pair: output - render_3d - options; transparent_background>` [boolean=false] When enabled the image will be post-processed to make the background transparent.
In this mode the `background1` and `background2` colors are ignored.
- ``transparent_background_color`` :index:`: <pair: output - render_3d - options; transparent_background_color>` [string='#00ff00'] Color used for the chroma key. Adjust it if some regions of the board becomes transparent.
- ``transparent_background_fuzz`` :index:`: <pair: output - render_3d - options; transparent_background_fuzz>` [number=15] [0,100] Chroma key tolerance (percent). Bigger values will remove more pixels.
- ``variant`` :index:`: <pair: output - render_3d - options; variant>` [string=''] Board variant to apply.
- *wait_ray_tracing* :index:`: <pair: output - render_3d - options; wait_ray_tracing>` Alias for wait_render.
- ``wait_render`` :index:`: <pair: output - render_3d - options; wait_render>` [number=-600] How many seconds we must wait before capturing the render (ray tracing or normal).
Lamentably KiCad can save an unfinished image. Enlarge it if your image looks partially rendered.
Use negative values to enable the auto-detect using CPU load.
In this case the value is interpreted as a time-out..
- ``width`` :index:`: <pair: output - render_3d - options; width>` [number=1280] Image width (aprox.).
- **type** :index:`: <pair: output - render_3d; type>` [string=''] Type of output.
- ``category`` :index:`: <pair: output - render_3d; category>` [string|list(string)=''] The category for this output. If not specified an internally defined category is used.
Categories looks like file system paths, i.e. **PCB/fabrication/gerber**.
The categories are currently used for `navigate_results`.
- ``disable_run_by_default`` :index:`: <pair: output - render_3d; disable_run_by_default>` [string|boolean] Use it to disable the `run_by_default` status of other output.
Useful when this output extends another and you don't want to generate the original.
Use the boolean true value to disable the output you are extending.
- ``extends`` :index:`: <pair: output - render_3d; extends>` [string=''] Copy the `options` section from the indicated output.
Used to inherit options from another output of the same type.
- ``groups`` :index:`: <pair: output - render_3d; groups>` [string|list(string)=''] One or more groups to add this output. In order to catch typos
we recommend to add outputs only to existing groups. You can create an empty group if
needed.
- ``output_id`` :index:`: <pair: output - render_3d; output_id>` [string=''] Text to use for the %I expansion content. To differentiate variations of this output.
- ``priority`` :index:`: <pair: output - render_3d; priority>` [number=50] [0,100] Priority for this output. High priority outputs are created first.
Internally we use 10 for low priority, 90 for high priority and 50 for most outputs.
- ``run_by_default`` :index:`: <pair: output - render_3d; run_by_default>` [boolean=true] When enabled this output will be created when no specific outputs are requested.