Commit Graph

44 Commits

Author SHA1 Message Date
Salvador E. Tropea 73097d7963 Dropped Python 2.x support in included libs
There is no point in having it and complicates the compatibility
detection.
2023-08-08 12:27:06 -03:00
Salvador E. Tropea 98346bcf39 Fixed use of Python 3.9 in populate.py 2023-08-08 11:25:54 -03:00
Salvador E. Tropea 97ff9a0d09 [PcbDraw] Better error when a style is missing
- Now we don't lie about using a path if the name is absolute
2023-04-16 09:00:02 -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 71ff354b9b [PcbDraw][Fix] Variable collision in last patch 2023-03-27 11:21:40 -03:00
Salvador E. Tropea 5f416063be [PcbDraw][Fixed] Support for 7.0.1 polygons
- Now KiCad generates polygons in the SVG
Fixes the problem reported in upstream: yaqwsx/PcbDraw#142
2023-03-27 10:53:33 -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 c94b03042c [PcbDraw][KiCad 5] Disable tolerance look-up
- No properties in footprints
2023-03-21 06:53:09 -03:00
Salvador E. Tropea e6ee30a004 [DOCs] Documented the PcbDraw changes 2023-03-20 14:19:53 -03:00
Salvador E. Tropea 0361c38d9d [PcbDraw] Various changes in resistor color bands
- Added support for values between 0.01 and 10 ohms
- Avoid crash for R<0.01 ohms
- Added support for 20% tolerance
- Added support for tol/tolerance property
- Fixed Decimal division by float
- Changed default tolerance to 20%. I know this isn't reality,
  but if we don't know the tolerance is better to just let it
  blank (20% is this).
2023-03-20 14:15:46 -03:00
Salvador E. Tropea f946d75fdb [PcbDraw] Updated to match v1.1.2 (libs) 2023-03-01 09:10:45 -03:00
Salvador E. Tropea 28390c9f6f [PCBDraw] Fixed KiCad 5 problems
- pcbnewTransition 0.3.2 wasn't fully coimpatible with v5
2023-02-14 08:17:29 -03:00
Salvador E. Tropea b41991edde [PCBDraw] Added missing pcbnewTransition file 2023-02-14 07:35:32 -03:00
Salvador E. Tropea c65037be0b [PCBDraw][KiCad v7] Applied upstream patches 2023-02-14 07:06:49 -03:00
Robin Modisch 353614a6ab fix typo 2023-01-30 08:41:14 -03:00
Salvador E. Tropea ae450b15a4 [KiKit Present] Now using the detected git binary
- Also added repository URL detection
2022-12-06 13:36:35 -03:00
Salvador E. Tropea 23593ac477 [KiKit Present] Added Template member to list resources
- To make easier the get_targets implementation
2022-12-05 21:26:16 -03:00
Salvador E. Tropea 509f74fd31 [KiKit Present] Implemented various modes 2022-12-04 19:50:29 -03:00
Salvador E. Tropea cc53d655c0 [KiKit Present] Imported local pybars 2022-12-04 11:39:25 -03:00
Salvador E. Tropea aeaf52fd02 [KiKit Present] Removed `kikit` import
- _renderBoards must be implemented in a different way
2022-12-04 11:37:28 -03:00
Salvador E. Tropea b3d664fa94 [KiKit Present] Removed the try in boardpage
- Too broad, doesn't help
2022-12-04 11:32:58 -03:00
Salvador E. Tropea 266cf0a6a4 [KiKit Present] Removed `click` import, unused
- Also added author and license
2022-12-04 11:30:40 -03:00
Salvador E. Tropea 5cd508ac3b [PcbDraw] Added present.py
- This is from KiKit, but is very similar to populate.py
2022-12-04 11:28:16 -03:00
Salvador E. Tropea da34175cb3 [PcbDraw] Updated the changes docs 2022-10-28 13:45:38 -03:00
Salvador E. Tropea 1df9d1da46 [PcbDraw][PCB_Print] Removed all PcbDraw convert.py usage
- Currently not needed
2022-10-28 13:41:33 -03:00
Salvador E. Tropea ddd0018f43 [Populate] Handle missing mistune properly 2022-10-28 07:51:54 -03:00
Salvador E. Tropea 8512b41feb [Populate] Added pybars and pymeta 2022-10-28 07:16:05 -03:00
Salvador E. Tropea f3049351da [Populate] Documented the changes
- Also added author and license to the files
2022-10-28 06:30:17 -03:00
Salvador E. Tropea e56343d214 New populate output
- The PcbDraw command
2022-10-27 21:24:57 -03:00
Salvador E. Tropea b8f9b2e924 [PcbDraw] Applied the SVG patch like the upstream
- To make the code more convergent, is equivalent
2022-10-24 13:02:37 -03:00
Salvador E. Tropea 417dbadcd2 [PcbDraw][PCB_Print][Fixed] SVG issues for browsers
- Same fix used for SVG output
2022-10-21 13:42:29 -03:00
Salvador E. Tropea 8ec4d481c0 [Package] Moved all resources to a central place
- All KiBot resources are now under kibot/resources
- PcbDraw resources are now in kibot/resources/pcbdraw
- All resources can be loaded relative to the script or from
  /usr/share/kibot
- The Debian package installs the resources in /usr/share/kibot
- The Python manifest includes all resources
- PcbDraw is now detected as a Python package
2022-10-19 13:05:56 -03:00
Salvador E. Tropea 0be6f40053 [PcbDraw] Individual margin control 2022-10-19 08:32:46 -03:00
Salvador E. Tropea 4b0965fc4d [PcbDraw] Added option to control the size detection
- Now we can use the full method found in newer versions
- But we can also use simpler methods that are usable and needs
  less dependencies (also they are faster)
2022-10-19 08:05:06 -03:00
Salvador E. Tropea 00cea42cda [PcbDraw] Added support for image margin 2022-10-18 11:27:11 -03:00
Salvador E. Tropea 801f7f5183 [PcbDraw] Avoid loading the PCB for each call to PcbDraw 2022-10-18 11:08:57 -03:00
Salvador E. Tropea 207dd8f67c [PcbDraw] Removed PIL as dependency
- So now the save function only supports SVG as input and SVG/PNG as
  output. All other cases are handled from outside
- This is because KiBot heavily uses ImageMagick and migrating to PIL
  is not something simple.
- There is no point in using PIL just for file conversion, as we don't
  use `render` this is the only use.
2022-10-18 10:49:13 -03:00
Salvador E. Tropea bb6b0c6141 [PcbDraw] Replaced `unit` code
- So we have only one units conversion
- I think the only difference is that KiBot code currently supports
  the locales decimal point
2022-10-18 09:57:56 -03:00
Salvador E. Tropea 473d1c27e2 [PcbDraw] Updated the components libs
- Added 0402 components
2022-10-18 08:58:48 -03:00
Salvador E. Tropea 749618782b [PcbDraw] Removed numpy as dependency
- Currently svgpathtool is disabled, it really needs numpy
- `numpy` is used to:
  - Multiply matrices (1 line code)
  - Find the index of the smaller element (1 line code)
  - I added a replacemt for the `array` function, it just makes all
    matrix elements float
2022-10-18 08:56:29 -03:00
Salvador E. Tropea a6f4173226 [PcbDraw] Included pcbnreTransition
- Just 2.8 kiB no worth the effort of pulling a dependency
- In fact it could be reduced to less than 10 lines, but I keep it
  almost unchanged (just added author and license) to make it easy
  to updated.
2022-10-18 08:51:25 -03:00
Salvador E. Tropea 7707ec3ef6 [PcbDraw] Fixed `collect_holes` for KiCad 5
- pad.GetDrillSizeX() and pad.GetDrillSizeY() are KiCad 6 specific,
  you must use pad.GetDrillSize()
- KiCad 5 vias were skipped
- Vias detection crashed on KiCad 5
2022-10-18 08:22:09 -03:00
Salvador E. Tropea 531ace00a1 [PcbDraw] Added mechanism to only plot the solder mask 2022-10-18 07:37:16 -03:00
Salvador E. Tropea 838129e69c [PcbDraw] Embedded the PcbDraw.plot code
- Now PcbDraw is not a dependency of out_pcbdraw.py
2022-10-17 12:58:06 -03:00