Roberto Fernandez Bautista
4abee7c2eb
Fix SHAPE_LINE_CHAIN::Split when inserting a point on an arc
...
Ensure the arc is split into two at the point specified.
Partly fixes https://gitlab.com/kicad/code/kicad/-/issues/9023
Additional work required to ensure that the shove state is preserved.
2021-09-26 15:15:51 +01:00
Jeff Young
bf145dd633
Confine allow-locked-pad-selection-even-when-filtered to single-select.
...
Also make sure text in a locked footprint is not selected if the locked
items filter is unset.
Fixes https://gitlab.com/kicad/code/kicad/issues/9227
2021-09-24 18:58:22 +01:00
Roberto Fernandez Bautista
dc1fd3d9ba
PNS test app: Add logging information for curved track routing
2021-09-20 20:35:24 +01:00
Jeff Young
b84d1456d5
KIFACE_I -> KIFACE_BASE.
2021-09-14 23:45:14 +01:00
Seth Hillbrand
60a593b44b
Fix defines for qa mock
2021-09-05 19:28:33 -07:00
Jeff Young
a397e85589
Implement PTH/NPTH/courtyard collision tests.
...
Fixes https://gitlab.com/kicad/code/kicad/issues/9081
2021-09-04 00:16:26 +01:00
Seth Hillbrand
8a305eec32
Remove broken RefDesStringCompare
...
This function attempted a poor-man's natural compare but it assumed
specific structure of the string. This broke for strings with
numberings that looked like decimals.
Instead, we use our natural string comparison function and remove the
references to this older function and its similar elements.
Fixes https://gitlab.com/kicad/code/kicad/issues/9067
2021-09-01 11:48:01 -07:00
Seth Hillbrand
3a7721d41c
Remove now-invalid mock call
2021-08-27 13:08:10 -07:00
Roberto Fernandez Bautista
ed39b33d74
Fix edge case in CIRCLE::Intersect that caused a divide-by-zero crash
...
Also add some additional test cases.
2021-08-25 19:11:19 +01:00
Jeff Young
e6ca9837a2
Clear numbers from non-numberable pads and don't run DRC on them.
...
This was also the last straw on the misnamed PAD::GetName() and
PAD::SetName(), which are now PAD::GetNumber() and PAD::SetNumber().
Fixes https://gitlab.com/kicad/code/kicad/issues/9017
2021-08-24 01:03:06 +01:00
Jeff Young
1e23ce1c95
Pull some fixes back from 7.0.
...
1) An earlier 6.0 fix to apply pad clearance overrides to NPTH pads
got broken, so this replaces it.
2) Allow min/max/opt to be set by different rules.
3) Fixes a bug where board minimum enforcement over a local override
didn't get the right message text.
2021-08-21 16:43:11 +01:00
Jeff Young
1a252b4f96
Add a compile error for ill-defined rules, and more performance.
...
Also adds const-safety to GetBoard().
2021-08-16 12:14:17 +01:00
Jeff Young
41619ebbe2
Decouple PROGRESS_REPORTER interface from implementations.
2021-08-14 21:05:49 +01:00
Jon Evans
80355f04a9
Fix SHAPE_LINE_CHAIN::Replace at end of chain
2021-08-13 16:59:45 -04:00
Roberto Fernandez Bautista
d9cf939ba1
SHAPE_LINE_CHAIN::Replace Don't call front() or back() if empty
...
Fixes https://gitlab.com/kicad/code/kicad/-/issues/8949
2021-08-12 16:32:06 +01:00
Roberto Fernandez Bautista
22df01183d
Fix edge cases in CIRCLE::Intersect that were causing KiROUND overflow
2021-08-11 17:31:27 +01:00
Roberto Fernandez Bautista
c8944286c0
Fix qa_pcbnew memory dump in msvc
...
Quick fix for now as it was frustrating to run qa_pcbnew
and not be able to see the output
2021-08-10 21:29:25 +01:00
Jeff Young
a208dac8d8
Convert hole clearance tests from NPTH holes to all holes.
2021-08-09 22:26:00 +01:00
Roberto Fernandez Bautista
ae87dc686a
Fix SHAPE_LINE_CHAIN::NearestPoint when aAllowInternalShapePoints=false
...
Fixes https://gitlab.com/kicad/code/kicad/-/issues/8770
2021-08-08 20:58:20 +01:00
Roberto Fernandez Bautista
fb3a6ef2db
Add qa Test for SHAPE_LINE_CHAIN::Slice
2021-08-08 19:09:54 +01:00
Jeff Young
1332208ab1
Update test expectation.
2021-08-06 22:24:33 +01:00
Roberto Fernandez Bautista
eaf8eb284a
Add true arc-to-polyline collisions
2021-08-05 17:45:12 +01:00
Roberto Fernandez Bautista
dd65ce9523
Simplify & move new arc collision code into Kimath library
...
Don't need to check intersections with the circle, just fix the
calculated "projected" point from the end points.
Fixes https://gitlab.com/kicad/code/kicad/-/issues/8234
2021-08-05 17:45:12 +01:00
Roberto Fernandez Bautista
b6be10f05c
Fix CIRCLE::Intersect( const SEG& aSeg ) and add unit tests
2021-08-05 17:45:12 +01:00
Tomasz Wlostowski
9c15ba9673
qa: arc playground with fixed endpoint corner case
2021-08-05 17:45:12 +01:00
Roberto Fernandez Bautista
2573ac19a5
Fix "false intersection" case and attempt to fix "missing intersection"
2021-08-05 17:45:12 +01:00
Roberto Fernandez Bautista
318435aedb
Add more test cases: simulate zone fill around arc + diff pair meander
2021-08-05 17:45:11 +01:00
Roberto Fernandez Bautista
f2925dc6cb
Added a few more test cases
2021-08-05 17:45:11 +01:00
Tomasz Wlostowski
9922e85ecf
arc collision playground: some cleanup
2021-08-05 17:45:11 +01:00
Tomasz Wlostowski
7e94f85870
arc collision playground
2021-08-05 17:45:11 +01:00
Tomasz Wlostowski
539154466d
playground with arc2arc collision
2021-08-05 17:45:11 +01:00
Jeff Young
c5e195bdff
Cleanup (includes and formatting).
2021-08-03 18:37:23 +01:00
Wayne Stambaugh
813d8f0957
Fix broken QA build on Linux.
2021-08-03 12:02:42 -04:00
Jeff Young
c00f4ed5d2
Add regression tests for track cleaner.
2021-08-03 16:17:18 +01:00
Jeff Young
43523df843
Measure distance from pad center, not pad hull.
...
Otherwise we think the wrong end of really short track segments is
connected to the pad, leaving the other end dangling.
Fixes https://gitlab.com/kicad/code/kicad/issues/8909
2021-08-02 22:42:54 +01:00
Jeff Young
2a2dc1c0ff
Fix false test failures.
2021-08-01 22:18:18 +01:00
Jeff Young
878538abff
Run each Boost test with it's own fixture.
2021-07-31 20:12:52 +01:00
Jeff Young
faa1ff4ec6
Add false-negative DRC tests (and fix first bug found by them).
2021-07-31 16:41:44 +01:00
Jeff Young
bceb3794f8
Remove ZONE_FILLER_TOOL since it's not really necessary.
...
It was causing intermittent failures on GTK. We'll no doubt want
tools in the QA framework at some point, but probably not necessary
for 6.0....
2021-07-31 01:50:42 +01:00
Seth Hillbrand
5155093ec0
Fix compile issue on gcc
2021-07-30 15:13:34 -07:00
Jeff Young
8d6cd4ad99
Add a bunch more zone fill and DRC regression tests.
...
Also tries to fix a compile issue on gcc.
2021-07-30 21:15:21 +01:00
Jeff Young
b8bb04c432
Release project before potentially reloading project and board.
2021-07-30 18:37:14 +01:00
Jeff Young
8c69a856fc
Add zone filler tests.
...
One test has pads of a bunch of different shapes and provokes some
errors to make sure they're caught.
The others are all past issues with the zone filler to make sure we
don't suffer any regressions. (They should all just pass with no DRC
errors.)
2021-07-30 17:09:24 +01:00
Jeff Young
6aaf4413b3
Fix kicad_string.h / string.cpp mismatch.
...
They don't define a KiCad string class, so the header file name was
somewhat misleading. But the fact that they didn't match definitely
made coding more difficult.
2021-07-29 16:03:25 +01:00
Jeff Young
f221220fe2
Rename layer ids file.
...
It hasn't had anything to do with colors or visibility for some time
now.
2021-07-29 16:03:25 +01:00
Wayne Stambaugh
43cb710297
Fix broken PNS router QA build.
2021-07-27 15:07:56 -04:00
Wayne Stambaugh
37b200cb3e
Pass wxString objects by reference instead of on the stack.
2021-07-27 08:41:27 -04:00
Jeff Young
531f5480a7
Reduce line-breaks and increase SNR.
2021-07-24 14:25:59 +01:00
jean-pierre charras
7869ac7e67
fix typo in commit f16239d
2021-07-22 20:45:22 +02:00
jean-pierre charras
f16239d326
QA test: try to fix a compil problem on MSVC only
2021-07-22 20:41:37 +02:00