Alex Shvartzkop
4aa05dfcf2
Altium PCB importer: fix custom pad local placement.
2023-08-08 17:03:30 +03:00
Alex Shvartzkop
2eb6ca75a8
Altium PCB import: support dashed outlines (Region kind 2)
...
(cherry picked from commit 430da67222
)
2023-08-04 16:50:09 +03:00
Alex Shvartzkop
4918ac6307
Improvements to Altium PCB/footprint importer:
...
- Support unicode footprint names
- Set default footprint text size and thickness to match KLC
- Position Reference at the top, Value at the bottom of fp bounding box
(cherry picked from commit 24452f41ad
)
2023-08-04 16:50:09 +03:00
Alex Shvartzkop
acc03e91f3
Altium PCB: support solder/paste mask expansion rules.
...
- Writes expansion values to board design settings
- Imports footprint regions on Cu layers as pads
- Adds support for holes in non-Cu polygons in footprints
2023-08-04 16:50:09 +03:00
Alex Shvartzkop
8e1466a35a
Altium PCB import: import holes in non-Cu polygons.
...
(cherry picked from commit ef66fe88ac
)
2023-08-04 16:50:09 +03:00
Alex Shvartzkop
5b73af668f
Altium PCB import: remove more invalid polygons.
...
(cherry picked from commit eb6cd4cc5d
)
2023-08-04 16:50:09 +03:00
Alex Shvartzkop
45d496bd01
Altium PCB: fix orientation of polygons and non-Cu pads in footprints.
...
Fixed in master by bbd6c80507
2023-07-20 01:14:34 +05:00
Alex Shvartzkop
803bcbbea0
Altium PCB import: fix text positioning when not bottom-left aligned.
...
(cherry picked from commit 536744d37a
)
2023-07-09 05:46:12 +05:00
Jeff Young
6fbdf8f0e2
Handle Altium dimension angles and non-unit suffixes.
...
Fixes https://gitlab.com/kicad/code/kicad/-/issues/13751
(cherry picked from commit 97cf7c874e
)
2023-06-10 10:57:14 +01:00
Jeff Young
74da0043b4
Move automatic dimension processing inside PCB_DIMENSION_BASE.
...
Also move dimension precision to an enum so it can get a proper dropdown
in the properties inspector.
(cherry picked from commit 461def2719
)
2023-03-12 21:04:09 +00:00
Jeff Young
c0ddca12df
Add Property Inspector support for dimension objects.
...
Includes changing the class hierarchy so that dimension objects inherit
from PCB_TEXT rather than containing a PCB_TEXT member variable.
(cherry picked from commit 23accffc6d
)
2023-03-12 21:03:58 +00:00
Jeff Young
9b2606018e
Fix shadowed variable.
2022-11-19 11:53:33 +00:00
Jeff Young
bab2b6c4b6
Don't assume a 1:1 map between Altium and Kicad nets.
...
We've found at least one Altium board which has duplicate netcodes
for the same net.
Fixes https://gitlab.com/kicad/code/kicad/issues/12909
2022-11-19 11:53:33 +00:00
Jeff Young
d16b23d16e
Name shortening and line-break reduction.
2022-10-21 18:41:39 +01:00
Marek Roszko
e6ed275c25
Repoint IU_PER_MILS
2022-09-16 21:09:26 -04:00
Marek Roszko
a8613ee80f
Combine Iu2Millimeter & remove PcbMm2iu
2022-09-16 21:09:26 -04:00
Jeff Young
b4492e0bd2
More EDA_RECE yeetage.
2022-08-31 17:19:50 +01:00
Jeff Young
5679b9dbdc
Remove a few EDA_RECT instances.
2022-08-31 01:22:49 +01:00
Seth Hillbrand
b736460e71
Move optional access from value() to *operator
...
`value()` throws. Where we check for existence, we don't need to use
the throwing version and should just use the unprotected variant
2022-08-30 13:59:39 -07:00
Marek Roszko
bf964d8678
Commonize page_info by simply making the Iu scale a parameter on call.
2022-08-27 13:36:00 -04:00
Seth Hillbrand
f1261e71d4
Replace boost::optional with std::optional
2022-08-25 15:50:47 -07:00
Jeff Young
ec51955dad
Remove vestiges of old pad locking system.
...
We now use a session preference (Allow free pads) in the board editor,
and we never supported pad locking in the footprint editor.
2022-08-23 18:02:16 +01:00
Jeff Young
a9536b5de9
CHANGED netclass assignments now done via canvas or via patterns.
2022-08-14 22:56:29 +01:00
Jeff Young
2de10080cd
Add edge and margin clearances to message panel.
2022-07-15 16:14:32 +01:00
Seth Hillbrand
a9a5136c1c
Always allow blind/buried/micro vias
...
Removes a nanny setting that prevented the use of
blind/buried/micro-vias without a checkbox. If the designer does not
want microvias in their board, they simply do not place microvias.
2022-07-12 19:47:31 -07:00
Thomas Pointhuber
406c528ab7
altium: Create region for items on the KEEP_OUT_LAYER and use new Track unit-tests
2022-04-02 18:17:19 +02:00
Jeff Young
1d66925f5f
Enable bb and/or uvias when encountering them on Altium import.
...
Fixes https://gitlab.com/kicad/code/kicad/issues/10044
2022-03-22 22:33:51 +00:00
Jeff Young
118a37f19f
Fix issues with importing NPTH pads from CircuitStudio.
...
Fixes https://gitlab.com/kicad/code/kicad/issues/10493
2022-03-22 18:08:05 +00:00
Jeff Young
3271b43d4b
Formatting.
2022-03-22 18:08:05 +00:00
Thomas Pointhuber
79aafd1bd3
altium: support keepout restrictions in Arcs, Fills and Regions
2022-03-11 19:15:58 +01:00
Thomas Pointhuber
a9ebb42ecd
altium: Parse keepout restrictions of tracks
2022-03-07 19:58:43 +01:00
Jeff Young
843a56c4e4
Implement two-staged zone priority: assigned priority followed by UUID.
2022-03-01 14:53:35 +00:00
Thomas Pointhuber
52a2d52bf0
altium: Parse solder and paste mask settings of tracks and arcs
2022-02-20 20:18:40 +01:00
Thomas Pointhuber
8ef7252330
altium: Don't use string concatenation for paths pointing in the compound file
...
* std::vector do not need to be split apart again
* supports backslash in footprint names
2022-02-19 16:46:20 +01:00
Thomas Pointhuber
86c025eb30
altium: Fix parsing of zones which use the KEEP_OUT_LAYER
2022-02-19 14:37:05 +01:00
Jeff Young
327ddad79f
Performance: get rid of rawPolys / finalPolys distinction.
...
(The final fractured polys are required, and we don't really ever use
the raw polys anyway, so they were removed.)
2022-02-16 15:33:12 +00:00
Thomas Pointhuber
fc5772ad92
altium: Extend test-suite to support FP_ZONE validation
2022-02-15 21:42:03 +01:00
Thomas Pointhuber
81b4229e12
altium: Improve test-coverage of *.PcbLib import functionality
...
* Add test-code for pads
* Move test-code into board_test_utils.cpp for reuse, one method per object
* Add a real (rather small) Altium footprint for testing purposes
2022-02-12 16:50:25 +01:00
Jeff Young
3deaf902bb
Retire the V5 zone fill algorithm.
...
Fixes https://gitlab.com/kicad/code/kicad/issues/10578
2022-02-11 13:10:52 +00:00
Thomas Pointhuber
79f80c4cd7
altium: Fix Reference and Description parsing of footprint
2022-02-06 16:24:07 +01:00
Jeff Young
b2e3f03222
More wide-string declarations.
2022-02-05 22:03:04 +00:00
Jeff Young
7ccac79192
More wxString wide literals.
2022-02-05 21:29:34 +00:00
Thomas Pointhuber
744bc0bd18
altium: Fix pcb arc import using a hack with PCB_SHAPE as intermediate object
...
It would be nice to not use the workaround with PCB_SHAPE, but better than creating wrong geometries in the first place. This should be improved when I'm more in the mood to think about geometric.
2022-01-25 22:24:01 +01:00
Thomas Pointhuber
5a2f351f28
altium: Refactor shape based region parsing to make it reusable for footprint import
2022-01-25 21:54:25 +01:00
Jeff Young
4eac8d7c66
Remove unit-less angles from geometry lib APIs.
2022-01-20 21:10:04 +00:00
Jeff Young
038db715a3
Move zone hatch orientation to EDA_ANGLE.
2022-01-19 00:34:03 +00:00
Jeff Young
622f94e7b9
Angle cleanup in Altium importer.
2022-01-18 02:31:37 +00:00
Thomas Pointhuber
010b705ecd
altium: Use new Sin/Cos function
2022-01-17 20:43:41 +01:00
Thomas Pointhuber
8608c22b73
altium: Refactor fill parsing to make it reusable for footprint import
2022-01-17 19:56:47 +01:00
Thomas Pointhuber
7f667764bf
altium: Refactor pad parsing to make it reusable for footprint import
2022-01-17 19:56:47 +01:00