Commit Graph

49 Commits

Author SHA1 Message Date
Salvador E. Tropea b1b798689f [3D Models] Added support to pass variables to download URL
Should help for #414
2023-04-14 13:05:09 -03:00
Salvador E. Tropea 52ac92c42d [3D Models] Added workaround for KiCad 7
- Fails to export VRMLs for PCBs using paths relative to the footprint.

See #417
2023-04-07 11:05:34 -03:00
Salvador E. Tropea 6649038d79 [3D][Fixed][KiCad 7] 3D models not downloaded
Closes #417
2023-04-06 19:32:14 -03:00
Salvador E. Tropea 158f267eb5 Support for extra data in the Value field
- Currently we just use the tolerance for the 3D resistors
- Uses a port of the JavaScript Electro-Grammar
2023-03-30 12:39:36 -03:00
Salvador E. Tropea 786c94a80c [3D] Added option to enable the colored R cache 2023-03-21 10:40:27 -03:00
Salvador E. Tropea f3645d3264 [3D] Added options to control the resistors tolerance
- `field_tolerance` field/s to look for resistor tolerance.
- `default_resistor_tolerance` which tolerance to use when none found.
2023-03-21 09:57:22 -03:00
Salvador E. Tropea 05105cdc9a [3D] colored 3D models for THT resistors 2023-03-20 14:26:09 -03:00
Salvador E. Tropea 6801dfc7e2 [KiCad 7] Added some support for DNP flag
- Copied to internal `fitted`
- Can remove 3D models even when no filter/variant is applied
2023-03-08 13:13:37 -03:00
Salvador E. Tropea 70d716e561 [3D Models] Added support for models relative to libs
- New on KiCad v7, but will work for olders
2023-02-28 14:00:55 -03:00
Salvador E. Tropea 2dc3207201 [KiCad 7] Added support for the new VECTOR_FP_3DMODEL 2023-02-13 13:45:19 -03:00
Salvador E. Tropea 624f7ff68f [3D download] Fixed cases where we have no components from the SCH 2023-01-31 13:31:59 -03:00
Salvador E. Tropea df085fa8bc Added mechanism to download 3D models from EasyEDA
- Using LCSC codes

Closes #380
2023-01-31 13:12:06 -03:00
Salvador E. Tropea fd6f225a72 [K6 3D Model aliases] Avoid confusing the Windows drive letter
- C:.... looks like ALIAS = C
2023-01-31 13:02:35 -03:00
Salvador E. Tropea aa56322241 [3D][Changed] Downloaded 3D models are no longer discarded
- They are stored in ~/.cache/kibot/3d
- You can change the directory using KIBOT_3D_MODELS
2023-01-28 11:26:34 -03:00
Salvador E. Tropea 96822923b4 [3D][Added] A mechanism to cache downloaded 3D models 2023-01-27 12:12:16 -03:00
Salvador E. Tropea 9d7426f3a2 [VRML] Also download the WRL
- When we download a STEP file
2023-01-27 00:20:30 -03:00
Salvador E. Tropea 171eeae099 [Blender Export] Remove solder paste for "not shown" components
- Can be disabled
2023-01-26 23:13:51 -03:00
Salvador E. Tropea 4e194306d1 [Blender Export] Added PCB3D generation
- Also control over which components are included
- Also highlight components
2023-01-24 16:00:49 -03:00
Salvador E. Tropea 72eb6e9f90 [VRML] Added options to select and highlight components
- Uses the same code as render_3d
2023-01-23 18:44:17 -03:00
Salvador E. Tropea 2f2ac6f8ae [VRML][Fixed] Problems with missing 3D models and targets 2023-01-17 20:35:21 -03:00
Salvador E. Tropea eb8c04f870 [Blender Export] Added Blender render
- Impressive quality thanks to the pcb2blender plug-in
2023-01-16 23:42:52 -03:00
Salvador E. Tropea f7b9092a2a Simplified the KiAuto use
- Temporal video remove
- Other temporals
- Messages on execution error
2023-01-03 10:04:44 -03:00
Salvador E. Tropea 1dbe58aab1 Moved sub-PCB specific stuff to var_base (from out_base)
- To allow more than one mechanism
- Also changed the order in which sub-PCBs are applied, will make
  things faster
- Also removed board as parameter for un/filter_pcb*
  Isn't really supported and the sub-PCBs clearly breaks it
2022-12-27 08:48:44 -03:00
Salvador E. Tropea 6d3d2c37d0 [Render_3D] Added option to highlight components 2022-10-31 10:16:21 -03:00
Salvador E. Tropea dff7d9d299 [3D models] More flexible about relative dirs
- When solving a relative path accept it to be relative to the
  PCB or relative to the current working directory.
2022-09-20 13:42:06 -03:00
Salvador E. Tropea e2fdf87d6b [Copy_Files] Now you can copy the 3D models
- Also save a PCB modified to use them
- Changed the syntax so we can copy other stuff
2022-09-20 13:13:12 -03:00
Salvador E. Tropea d51791f197 Added a warning whe we download 3D models 2022-09-14 10:58:05 -03:00
Salvador E. Tropea d01943ed87 Added support for 3D models aliases
- Also a global option to define them in the KiBot configuration

Related to #261
2022-09-14 09:38:47 -03:00
Salvador E. Tropea 418b74b2f3 Environment and text variables now can be used as 3D model aliases.
- Environment and text variables expansion is now recursive.
  So in `${VAR}` the *VAR* can contain `${OTHER_VAR}`

Related to #261
2022-09-14 07:30:13 -03:00
Salvador E. Tropea 4cbb7a3405 [Fixed] 2D PCB processing didn't show in 3D targets
- I.e. solder paste not removed in the 3D render.

Related to #270
2022-09-13 11:32:27 -03:00
Salvador E. Tropea b85aca8c29 [Base3DOptions] Removed initialization now done in the constructor 2022-09-09 11:34:25 -03:00
Salvador E. Tropea 4dc93da42b [PCB Variant] Implemented the 3D filtering
- The PCB filtering code was moved to make it, some errors could be
  introduced
2022-09-09 08:57:05 -03:00
Salvador E. Tropea 2f37a5c6b4 [3D models] Various small details about missing models
- Fail to expand a VAR is reported once. Not for every model.
- Warnings no longer printed if the model is missing but we can
  download it. It confuses people when the problem is solved.
- When we fail to expand a VAR and the result is "${VAR}..."
  we tried to make it an absolute path creating a path that was
  confusing. Now we keep the original name.
2022-09-07 14:15:31 -03:00
Salvador E. Tropea 54dd130e4f Highlighted the most relevant options 2022-06-08 08:37:30 -03:00
Salvador E. Tropea 01c015eb27 Simplified the global vars handling
- The main class also applies the command line options
- Is more clear how defaults are handled
- Also added global config for the 3D field name
2022-04-28 14:49:28 -03:00
Salvador E. Tropea 48070c2e5a Made the 3D models selection more robuts
- Now we reject "slots" that aren't numbers
- Now we tollerate "empty slots"
2022-04-21 16:13:59 -03:00
Salvador E. Tropea ebf529fa0b Made the 3D model selection more versatile
- Now you can choose between using the variant name or the variant
  specific mechanism.
- Works for all variants and both mechanism are simple.
2022-04-20 19:42:51 -03:00
Salvador E. Tropea e00841c921 Added two special syntaxis to the 3D model variants
- %_kicost.TEXT:SLOTS% matches using the KiCost variant regex
- %_default_:SLOTS% matches if no other text matched

Related to #191
2022-04-20 10:39:19 -03:00
Salvador E. Tropea bf73c11821 Fixed problems when using %VARIANT:% in the 3D models variants
Fixes #191
2022-04-19 18:44:52 -03:00
Salvador E. Tropea 9e1f645c31 Fixed problems when using page layout files with relative paths.
Fixes #174
2022-04-04 18:02:31 -03:00
Salvador E. Tropea bb0f86ae61 Fixed KiCad 6 text variables not expanded in `render_3d` output
- We must copy the project file to the temporal dir
Fixes #173
2022-04-02 12:14:56 -03:00
Salvador E. Tropea dad1f91439 Added: text vars expansion for 3D model paths
Closes #172
2022-03-31 14:58:39 -03:00
Salvador E. Tropea 372fad5d28 Fixed 3D problems to download 3D models for native KiCad 6 files.
- Not seen on files imported from KiCad 5

Fixes #171
2022-03-31 12:11:52 -03:00
Salvador E. Tropea 9417b61478 Moved all loggers to the same domain.
- To fix the warnings count
2021-12-30 11:09:36 -03:00
Diego Capusotto 46378b992b Added some abstraction for the KiCad project file extension. 2021-12-18 11:13:58 -03:00
Diego Capusotto 69c874fdbd KiCad v6: Added support for the new "modules" name ("footprints")
- No alias provided, as usual
2021-12-17 12:46:40 -03:00
Salvador E. Tropea 9885270f56 Fixed flake8 errors 2021-12-02 17:37:33 -03:00
Salvador E. Tropea 84d6217d18 Another experimental mechanism to change 3D models according to the variant.
Closes #103
2021-12-02 17:19:40 -03:00
Salvador E. Tropea 27b26feb88 Added 3D view render
Related to #99
2021-11-17 17:40:54 -03:00