Jeff Young
5f8a0b0728
Import a few more rules from Altium board files.
...
Fixes https://gitlab.com/kicad/code/kicad/-/issues/15585
(cherry picked from commit 6a2aeeeae2
)
2023-12-02 16:20:34 +00:00
Seth Hillbrand
7cb98f6856
Check for actual dirty flag
...
Looking at the address will always return true
2023-12-01 09:31:48 -08:00
Seth Hillbrand
fc86de34f8
Add default parameter to GetEffectivePolygon()
...
Allows legacy plugins to use this function
(cherry picked from commit 6b3ac54a41
)
2023-12-01 09:28:13 -08:00
Jon Evans
60ddafa4ff
Guard against UNDEFINED_LAYER in GetLayerSet
...
Fixes https://gitlab.com/kicad/code/kicad/-/issues/16230
(cherry picked from commit 1ff3b5a437
)
2023-11-30 22:09:11 +00:00
jean-pierre charras
6331a0ab7a
Pcbnew, Excellon export: remove an useless line at end of file
...
From master branch
2023-11-27 17:30:35 +01:00
jean-pierre charras
c43ae314e0
Fix old python examples and a compatibility issue in pcb_shape.i.
...
Fix simlar to master branch
Fixes #16158
https://gitlab.com/kicad/code/kicad/-/issues/16158
2023-11-26 13:46:33 +01:00
Alex Shvartzkop
4f060d9384
STEP export: make use of footprint names instead of "SOLID".
...
Should help when importing into software that does deduplication
based on label names (e.g. SolidWorks).
(cherry picked from commit 58b9d68084
)
2023-11-21 14:12:09 +03:00
Alex Shvartzkop
acd244f873
STEP export: Do not set BRepBuilderAPI precision.
...
This caused issues when loading some STEP models.
Fixes https://gitlab.com/kicad/code/kicad/-/issues/15485
(cherry picked from commit f3fdfa73e6
)
2023-11-21 09:20:37 +03:00
jean-pierre charras
96037591c5
fix FOOTPRINT::GetLikelyAttribute() to follow the comments of FOOTPRINT::CheckFootprintAttributes(): at least one through hole pad means most probably a footprint through hole attribute.
2023-11-19 19:57:32 +01:00
Wayne Stambaugh
05890480e2
Fix crash when creating an array of footprint fields in board editor.
...
Attempting to create an array of footprint child objects other than a pad
causes the crash due to the fact that only pads where checked. The change
now checks if any object has a footprint as a parent. This should prevent
any future issues when new footprint child objects are added.
There was also another subtle bug fixed when more than one child object of
a footprint were selected, the array feature would make as many copies of
the footprint as selected child items.
Fixes https://gitlab.com/kicad/code/kicad/-/issues/16088
(cherry picked from commit 9e1caa0d39
)
2023-11-18 11:37:38 -05:00
Alex Shvartzkop
5e93814283
Restore clearance cache usage in PNS::NODE::NearestObstacle.
...
This (and the other commit) restores router performance to pre-7.0.3 levels.
2023-11-07 23:15:23 +03:00
Seneral
d29c07a663
Added a temporary item cache to improve router performance
...
Some items only used within algorithms were never cached
Because they are hard to manually clean up
But caching them does help the algorithms a lot
So this solution is the best I can think of
2023-11-07 23:15:23 +03:00
Simon Richter
a558a67fbd
Make output conditional
2023-11-07 13:31:54 +00:00
Mark Roszko
153e1190ea
Fix build due to previous cli change
2023-11-07 11:20:18 +00:00
Marek Roszko
a80a641427
Ensure output directory exists for drill files cli export
...
(cherry picked from commit 23676eb988
)
2023-11-07 02:12:12 +00:00
Jeff Young
81ba4fa9a6
Make sure to add enough wiggle room when MaxError is very large.
...
Fixes https://gitlab.com/kicad/code/kicad/-/issues/16024
(cherry picked from commit 1df5d9c48c
)
2023-11-06 17:00:37 +00:00
Jeff Young
57f007c46e
Don't get stuck cycling through invisible layers.
...
Fixes https://gitlab.com/kicad/code/kicad/-/issues/16019
(cherry picked from commit ac172b944a
)
2023-11-06 17:00:37 +00:00
Jeff Young
d513640572
Behave (or assert) when source or target are null or dirty.
...
(cherry picked from commit 7f8e397dfb
)
2023-11-06 17:00:37 +00:00
Jeff Young
8c695e5044
Clean up references in RN_NETs when garbage collecting CN_ITEMs.
...
(cherry picked from commit fb59f83683
)
2023-11-06 17:00:37 +00:00
Jeff Young
395a966802
When garbage collecting locally we also need to clear global references.
...
(cherry picked from commit d93bb464bf
)
2023-11-06 17:00:37 +00:00
jean-pierre charras
3195ba646f
Pcbnew: fix Swap command that improperly rotates footprints when flipping.
...
Fixes #16025
https://gitlab.com/kicad/code/kicad/-/issues/16025
2023-11-05 16:31:37 +01:00
Seth Hillbrand
9ac006b114
Don't use KiROUND when we should trunc
...
When calculating the viewport extents, we only need the maximum size
that can be represented. Anything larger should be truncated. We do
this in many other places (wx_view_controls, ruler_item,
ds_proxy_view_item, etc) and this brings pcb_selection_tool into
alignment with this, avoiding an unneeded warning message
Fixes https://gitlab.com/kicad/code/kicad/-/issues/15529
(cherry picked from commit 6d957e9d65
)
2023-10-30 09:43:45 -07:00
Jeff Young
2d58184080
We don't want to do collision testing against virtual vias.
...
(Which means they had better not have a hole.)
(cherry picked from commit f1efae1e05
)
2023-10-25 18:51:14 +01:00
Jeff Young
1ef6e69d83
Don't run DRC checks against reference images.
...
fixes https://gitlab.com/kicad/code/kicad/-/issues/15932
2023-10-25 18:51:14 +01:00
jean-pierre charras
dbd4af16c6
Gerber place files: do not quote strings (fields, pad name, pad function ...)
...
Double quotes have no special meaning, so adding them modify the texts
Fixes #15944
https://gitlab.com/kicad/code/kicad/-/issues/15944
2023-10-25 09:13:59 +02:00
Alex Shvartzkop
eadc902f84
Don't draw PCB bitmaps on layers not visible in high-contrast mode.
...
(cherry picked from commit e6cf5e5e01
)
2023-10-24 03:42:54 +03:00
Jeff Young
05912b0381
Check vias before holes as we assume any hole is non-pushable.
...
Fixes https://gitlab.com/kicad/code/kicad/-/issues/15840
(cherry picked from commit fb84f4592b
)
2023-10-23 23:53:55 +01:00
Seth Hillbrand
fb387a2c09
Don't leave deleted items in group
...
We filter out ref/value text in copies so we need to remove them from
the copied group (if any) as well
Fixes https://gitlab.com/kicad/code/kicad/-/issues/15930
2023-10-23 13:34:15 -07:00
Alex Shvartzkop
d3d23d18fb
Fix footprints being difficult to select in high-contrast modes.
...
(regression)
(cherry picked from commit 97901c9ac5
)
2023-10-23 06:10:23 +03:00
Wayne Stambaugh
e664605c90
Fix false positive DRC footprint parity test.
...
This fix removed the Euclidean normalization test and replaced it with an
arc center X and Y coordinate differential check. The error epsilon was
increased to 200nm due to the arc center position calculation code using
the near 100nm position.
https://gitlab.com/kicad/code/kicad/-/issues/15917
2023-10-21 12:37:17 -04:00
Jeff Young
5a51a6b179
Make offset-zone check multi-layer aware.
...
Fixes https://gitlab.com/kicad/code/kicad/-/issues/15916
(cherry picked from commit b97d8ddef4
)
2023-10-21 15:09:37 +01:00
Jeff Young
eb7929ccb6
Fix layer handling for create similar zone.
...
(cherry picked from commit f18ce8c6de
)
2023-10-20 22:22:27 +01:00
Jeff Young
e85eec2e6b
Don't leave deleted items in a group.
...
Fixes https://gitlab.com/kicad/code/kicad/-/issues/15797
(cherry picked from commit 14d5a404b2
)
2023-10-19 17:52:00 +01:00
Jeff Young
ccf6e78cd5
It is legal to have nullptr zones in the m_CopperZoneRTreeCache.
...
(Though we might want to re-think this strategy....)
Fixes https://gitlab.com/kicad/code/kicad/-/issues/15853
2023-10-14 22:35:06 +01:00
Jeff Young
4156587abe
Don't assume an error location for PAD::GetEffectivePolygon().
...
While ERROR_INSIDE was good for plotting, 3D generation, etc., it's
not good for generating router hulls.
Also reverts part of the change to always use polygons for PNS::SOLIDs. A single shape in a SHAPE_COMPOUND will be faster (and
more accurate).
Fixes https://gitlab.com/kicad/code/kicad/-/issues/14898
(cherry picked from commit 62d959ed0e
)
2023-10-14 15:33:00 +01:00
Jon Evans
629eccaf09
PNS: Allow for approximation error in hull clearance
...
Also revert to using exact hulls for non-compound shapes
Fixes https://gitlab.com/kicad/code/kicad/-/issues/14898
(cherry picked from commit 96f9f2c658
)
2023-10-14 15:33:00 +01:00
Jeff Young
da12746a3a
Clear selection before deleting board layers.
...
Fixes https://gitlab.com/kicad/code/kicad/-/issues/15866
(cherry picked from commit 8d3047d6eb
)
2023-10-14 15:33:00 +01:00
Jeff Young
b023019b0d
Include solder mask in STEP export stackup height.
...
Fixes https://gitlab.com/kicad/code/kicad/-/issues/15632
(cherry picked from commit b4986030da
)
2023-10-14 15:33:00 +01:00
Jeff Young
1fdaa1083e
Honour custom layer names for Layer_Top and Layer_Bottom.
...
Fixes https://gitlab.com/kicad/code/kicad/-/issues/15835
(cherry picked from commit da5f5536c8
)
2023-10-14 15:33:00 +01:00
Jeff Young
2f8e846b9e
Adjust colours in appropriate direction depending on background.
...
Fixes https://gitlab.com/kicad/code/kicad/-/issues/15841
(cherry picked from commit 3f0067cbaa
)
2023-10-14 15:33:00 +01:00
Alex Shvartzkop
e42db52d14
Fix a crash when using length tuning tools.
...
Fixes https://gitlab.com/kicad/code/kicad/-/issues/15874
(cherry picked from commit 61bdee027b
)
2023-10-14 16:54:16 +03:00
Alex Shvartzkop
d4ec455ce0
Fix loading thru-hole pads when drill token is missing.
...
(cherry picked from commit f7ed9cc5c7
)
2023-10-14 15:52:57 +03:00
jean-pierre charras
8432fb4fea
Pcbnew: when adding layers, do not change via layers.
...
Via layers are not defined by a LSET, and the code that used the new LSET
broke the Via start and/or end layers (for blind/buried vias)
From master branch
Fixes #15856
https://gitlab.com/kicad/code/kicad/-/issues/15856
2023-10-14 08:56:19 +02:00
jean-pierre charras
00bf2ca36f
Pcbnew: rename ZONE* m_SolderMask to m_SolderMaskBridges
...
(It is a container to build bridges on solder mask layers by DRC, not real zone)
Disable also this special zone selection by adding it in
PCB_SELECTION_TOOL::itemPassesFilter
Do not display the outlines of this very special zone used by DRC
to show layer mask bridges created by DRC to show these bridges.
From Master branch
Fixes #15847
https://gitlab.com/kicad/code/kicad/-/issues/15847
2023-10-13 17:15:37 +02:00
Alex Shvartzkop
9159f5a004
Restore fill polygons on proper layers when flipping zones.
...
(cherry picked from commit 0ea85ec9f5
)
2023-10-12 02:45:05 +03:00
jean-pierre charras
87c8688f70
genDrillMapFile: reduce the pen width used to plot oval shapes (better look)
...
From master branch
2023-10-06 09:33:57 +02:00
Alex Shvartzkop
d13179f9e4
EAGLE PCB: fix a regression causing polygons not being imported.
...
Fixes https://gitlab.com/kicad/code/kicad/-/issues/15829
(cherry picked from commit bf29b25190
)
2023-10-06 01:16:43 +03:00
Jeff Young
239f8e0905
Pull fixes back from master.
...
Fixes https://gitlab.com/kicad/code/kicad/-/issues/15813
2023-10-04 19:25:28 +01:00
Jeff Young
fd98188ee4
Use netclass values when reaching netclass entry.
...
Fixes https://gitlab.com/kicad/code/kicad/-/issues/15774
(cherry picked from commit 904bdc3c66
)
2023-10-04 18:49:03 +01:00
Jeff Young
0e6ad13db8
Fix missing part of cherry-pick.
2023-09-30 14:12:54 +01:00