Jeff Young
c16e86be9a
Use router's connectivity algorithm, not CONNECTIVITY_DATA's.
...
Fixes https://gitlab.com/kicad/code/kicad/issues/10745
(cherry picked from commit 107f409106
)
2022-09-28 15:01:29 +01:00
Jeff Young
b0e2aeb972
Apply the same accuracy band to connectivity as we use for hittesting.
...
Fixes https://gitlab.com/kicad/code/kicad/issues/10745
(cherry picked from commit 9cf3c529d3
)
2022-09-28 14:58:43 +01:00
Jeff Young
fc06192643
More improvements to drag tool selection disambiguation.
...
Fixes https://gitlab.com/kicad/code/kicad/issues/10745
(cherry picked from commit 2743fd583f
)
2022-09-28 14:57:22 +01:00
Jeff Young
2faaa0a042
Improve drop-a-knee-selection-to-a-single-segment algorithm.
...
In particular, don't rely on there being only two items in the
collector at the start.
Fixes https://gitlab.com/kicad/code/kicad/issues/10745
(cherry picked from commit a619ef9d53
)
2022-09-28 14:56:11 +01:00
Jeff Young
6d25e57cd7
Allow free pad usage in router.
...
Fixes https://gitlab.com/kicad/code/kicad/issues/11730
(cherry picked from commit 7c83c78afe
)
2022-09-28 14:49:44 +01:00
Jeff Young
7dfa715a45
Bug fixes for layer expression processing.
...
1) Push a VAR onto the stack, not a resolved value
2) Don't collapse a PCB_LAYER_VALUE to a VALUE during processing
3) Make sure we run overloaded operators from the correct side
Fixes https://gitlab.com/kicad/code/kicad/issues/12437
(cherry picked from commit cf1565a16a
)
2022-09-28 14:00:25 +01:00
Jeff Young
e8a10939b5
Fix old copy/paste error (from 2017, believe it or not).
...
Fixes https://gitlab.com/kicad/code/kicad/issues/11487
(cherry picked from commit d9f75556bd
)
2022-09-28 13:55:44 +01:00
Jeff Young
44ec38ad2d
Fix logic around Select All inside an entered group.
...
Fixes https://gitlab.com/kicad/code/kicad/issues/12411
(cherry picked from commit 2d3b8d6393
)
2022-09-28 13:31:16 +01:00
Jeff Young
4a5fdd4214
Display crosshairs in picker tools.
...
Fixes https://gitlab.com/kicad/code/kicad/issues/10183
(cherry picked from commit 0a5ca5b485
)
2022-09-28 13:29:32 +01:00
Jeff Young
fe7ed364b6
Allow vias to connect <no net> tracks even when DRC checking is on.
...
Fixes https://gitlab.com/kicad/code/kicad/issues/12403
(cherry picked from commit eaccd40c75
)
2022-09-28 13:26:12 +01:00
Jeff Young
e21995c401
Prune pasted data of non-enabled layers.
...
Fixes https://gitlab.com/kicad/code/kicad/issues/11997
(cherry picked from commit 5b3bd9be83
)
2022-09-28 12:47:14 +01:00
Seth Hillbrand
c45aa734b0
Fix missing DRC via/track check
...
Depending on pointer ordering, the via/track clearance check might not
run as we were only checking when the first element was a track not via.
Re-written version of 0150655ed3
for v6
2022-09-20 15:32:55 -07:00
Seth Hillbrand
73d00cc5d7
Remove extra new string
2022-09-07 14:36:34 -07:00
Roberto Fernandez Bautista
2393165ada
CADSTAR PCB: Fix regression when loading pads in footprints
...
Zero sized pads can be valid - e.g. a through hole pad
(cherry picked from commit fa5dc23797
)
2022-09-06 20:29:49 +02:00
Tomasz Wlostowski
e593e0b014
router: somewhat improved stop-if-walk-path-is-too-long heuristic in the walkaround algorithm
2022-09-06 11:06:38 -07:00
Tomasz Wlostowski
42dae1504a
router: fix negative chamfer value for hulls generated for 0-length segments
2022-09-06 11:06:31 -07:00
Seth Hillbrand
440d324c9e
Don't prevent immediate actions while router active
...
Immediate actions that can take place are useful. We should only be
preventing immediate actions while actively routing or dragging
Fixes https://gitlab.com/kicad/code/kicad/issues/12311
(cherry picked from commit 91fbb5c957
)
2022-09-06 11:04:33 -07:00
Seth Hillbrand
29cadaf54e
Force removal of zero-sized pads on load.
...
Pads with zero width or height cause issues when rendering and
selecting. KiCad has never allowed these elements but hasn't prevented
importing systems where they exist. This prevents their import and
cleans existing designs where the pads are placed
Fixes https://gitlab.com/kicad/code/kicad/issues/12200
(cherry picked from commit 2ee65b2d83
)
2022-09-06 11:03:41 -07:00
Seth Hillbrand
b72675ba92
Allow board saves without modifying project files
...
Without the project files, certain settings will not be saved by this
python call. This defaults to false (current behavior) but setting the
`aSkipSettings` to true will revert to v5 behavior
Fixes https://gitlab.com/kicad/code/kicad/issues/11323
(cherry picked from commit 8418fe12d8
)
2022-09-06 10:18:24 -07:00
jean-pierre charras
83f135315c
3D models list in footprint properties: fix issue when a lot of 3D models is added
...
From master branch
2022-09-06 17:33:09 +02:00
Roberto Fernandez Bautista
07481cd4ca
CADSTAR PCB: Invert logic for guessing which layer is top / bottom
...
Ensures correct automatic layer mapping is applied to the design in
https://gitlab.com/kicad/code/kicad/-/issues/12349
(cherry picked from commit 9abf3438b8
)
2022-09-04 01:03:55 +02:00
Roberto Fernandez Bautista
8a9ee0f9e1
CADSTAR PCB: Load 2-point polygons as line segments
...
Fixes asserts when loading design from https://gitlab.com/kicad/code/kicad/-/issues/12349
(cherry picked from commit c961624d43
)
2022-09-04 01:03:55 +02:00
Roberto Fernandez Bautista
9a823ca61b
CADSTAR PCB: Parse Teardrops
...
Todo: We need to figure out how we will load teardrops. For now
just drop them on import.
Fixes https://gitlab.com/kicad/code/kicad/-/issues/12349
(cherry picked from commit 21b3753e9b
)
Edited to remove string changes
2022-09-04 01:03:51 +02:00
Jeff Young
e25d937fd8
Null-ptr safety for diff-pair-coupling test.
...
Fixes https://gitlab.com/kicad/code/kicad/issues/12329
(cherry picked from commit 854acd4c77
)
2022-09-02 01:18:18 +01:00
Jeff Young
ea3f6c8406
Make sure dirty flag gets set, and leave save enabled regardless.
...
Fixes https://gitlab.com/kicad/code/kicad/issues/11824
(cherry picked from commit 09773e3e2e
)
2022-09-02 01:11:20 +01:00
Jeff Young
bf272e379f
Run hole-to-hole checks on Edge_Cuts layer.
...
Also makes the flashing logic inside PAD::GetEffectiveShape() easier
to understand.
Fixes https://gitlab.com/kicad/code/kicad/issues/12296
(cherry picked from commit e0f6a6e475
)
2022-09-02 01:11:20 +01:00
Jeff Young
0acea2e386
Make sure via-gap-same-as-trace-gap gets turned off for board settings.
...
Fixes https://gitlab.com/kicad/code/kicad/issues/12236
(cherry picked from commit 7baa56528a
)
2022-09-02 00:55:53 +01:00
Roberto Fernandez Bautista
83305dd407
Re-route m_last_head after routing fails
...
This should ensure the shove state gets reverted
Fixes https://gitlab.com/kicad/code/kicad/-/issues/9023
2022-09-01 22:06:06 +00:00
Seth Hillbrand
1d5db513a1
Ensure arcs are handled in topology
...
Use the connection-independent `Anchor()` function to get connection
points for either arcs or segments in topology. This allows the
ratsnest to be correctly drawn between nets with arcs
Fixes https://gitlab.com/kicad/code/kicad/issues/12205
2022-09-01 22:06:06 +00:00
Jeff Young
9d0d45450b
Account for groups in undo of Position Relative To.
...
Also fixes a bug were pads weren't correctly being found for anchoring
the selection before the Position Relative To.
Fixes https://gitlab.com/kicad/code/kicad/issues/11793
(cherry picked from commit 1e68c353f1
)
2022-09-01 16:25:41 +01:00
Seth Hillbrand
c3496d61eb
Set locale in python save routine
...
Fixes https://gitlab.com/kicad/code/kicad/issues/11006
2022-08-23 09:41:55 -07:00
Wayne Stambaugh
1e09f0e8b0
Fix Eagle plugin footprint QA test issue.
...
Apparently mapping Eagle footprint layers to the KiCad Dwg_User
that were previously mapped to UNDEFINED_LAYER breaks the QA test
and causes the footprint editor to crash when opening Eagle
footprints. This means that the potential data loss issue when
loading Eagle footprints is still in play.
(cherry picked from commit c72457482c
)
2022-08-22 11:40:15 -04:00
Wayne Stambaugh
c2c4609272
Fix Eagle plugin board layer mapping issue.
...
The Eagle plugin layers have to be mapped differently depending on
whether a board is being imported or a footprint library is being
cached. Footprint libraries can bypass the manual layer remapping
step that happens when importing a board.
Please note that when loading footprints in the footprint editor
and viewer, all layers that do not directly map to KiCad layers are
put on the Dwg_User layer so that there is data loss. Users will
have to manually remap objects to the correct layer as required.
This is less than ideal but until the footprint library table parser
supports prompting users to remap unknown layers, it will have to do.
Fixes: https://gitlab.com/kicad/code/kicad/-/issues/11839
(cherry picked from commit 0bc1188897
)
2022-08-22 11:40:15 -04:00
Seth Hillbrand
9e9b38ef6a
Revert "cadstar: Report warning that imported text may be different"
...
This reverts commit f637a820b6
.
New strings are not allowed in v6
2022-08-20 20:09:40 -07:00
Seth Hillbrand
5e409f0f6c
Remove string change and associated new feature
...
String changes are not allowed in v6 branch
2022-08-20 20:06:26 -07:00
jean-pierre charras
962df45b65
Fix some issues in PCB_SELECTION_TOOL::selectAllItemsOnSheet():
...
especially a typo that prevent working on root sheet.
Clearly, commit 6b2bb4d8
was very poorly designed and (or not even) tested.
2022-08-20 13:04:06 +02:00
Marek Roszko
ca4da4706a
Fix reserve call with the wrong source for size
2022-08-16 23:53:42 -04:00
Roberto Fernandez Bautista
1005f75cdb
CADSTAR PCB: Allow remapping all non-electrical layers
...
Fixes https://gitlab.com/kicad/code/kicad/-/issues/12196
(cherry picked from commit 6b349fdb0a
)
2022-08-14 21:26:37 +00:00
Roberto Fernandez Bautista
f637a820b6
cadstar: Report warning that imported text may be different
...
Fixes https://gitlab.com/kicad/code/kicad/-/issues/12195
(cherry picked from commit 69d696660b
)
2022-08-14 21:25:46 +00:00
Jeff Young
36a0c2a9cc
Fix issue with caches not being initialized when printing msg bar.
...
(cherry picked from commit 43df863df2
)
2022-08-04 13:04:21 +01:00
Jeff Young
4ac48ad829
Cherry-pick of 2bf33321d1
.
2022-08-04 09:29:45 +01:00
Jeff Young
afc491c5a5
58f553a9ca
requires that cache be layer-sensitive.
...
Fixes https://gitlab.com/kicad/code/kicad/issues/11814
(cherry picked from commit 5e80e2a421
)
2022-08-04 00:48:18 +01:00
Jeff Young
7b5e3feb19
By-hand cherry-pick of 004abcd370
.
2022-08-04 00:05:48 +01:00
Seth Hillbrand
a12ae5050a
Cleanup unused code
...
(cherry picked from commit 76b9e25143
)
2022-08-02 08:51:04 -07:00
Seth Hillbrand
82e8e38054
PNS: Handle via-in-pad distances when tuning
...
Tuning with a via in pad, the via isn't a part of the full line. But we
still need to account for the line length distance of the
starting/ending vias. To do this, we simply measure the height from
the ending track to the ending pad and starting track to starting pad
2022-08-01 20:23:07 -07:00
Seth Hillbrand
57de5a6b65
Net Inspector: Handle via layers
...
Rather than measuring the total via height, measure from the entry to
exit track height to get a more accurate distance
2022-08-01 20:22:13 -07:00
Seth Hillbrand
6c617d84ca
Prevent drag index from exceeding full line count
...
Simplification removes segments, so we might lose our valid index.
Ideally, we would simplify during the assembly or pass the input index
to the simplify routine to maintain the proper value.
Fixes https://gitlab.com/kicad/code/kicad/issues/12137
2022-08-01 08:57:45 -07:00
jean-pierre charras
06e612661c
Kicad2step: fix STEP export from Pcbnew, broken by changes in commit 8456d6c
...
also: DIALOG_EXPORT_STEP: remember tolerance option during a session.
From Master branch.
Fixes #12119
https://gitlab.com/kicad/code/kicad/issues/12119
2022-07-29 19:46:34 +02:00
Jeff Young
3f448a7eaa
Clear dimension pointer after committing.
...
Fixes https://gitlab.com/kicad/code/kicad/issues/11864
(cherry picked from commit b80fd5329d
)
2022-07-28 10:46:02 +01:00
Jeff Young
5214290000
Get rid of error-prone reverse logic.
...
Fixes https://gitlab.com/kicad/code/kicad/issues/12049
(cherry picked from commit 012d861aab
)
2022-07-28 10:45:56 +01:00