Jeff Young
81ea71fb80
More safety when fetching via sizes.
2020-11-07 18:50:30 +00:00
Jeff Young
ae9afdd169
SNR. (Mostly for progammers, but a little for user messages.)
2020-11-02 16:20:00 +00:00
Jeff Young
c351b3c31f
Naming conventions.
2020-11-01 14:12:35 +00:00
Jeff Young
f600450ee6
DRC_TEST_PROVIDER_COPPER_CLEARANCES is for copper only.
...
Fixes https://gitlab.com/kicad/code/kicad/issues/6248
2020-11-01 14:12:35 +00:00
Jeff Young
d2befca5af
Clear subshapes before using again on a different layer.
...
Fixes https://gitlab.com/kicad/code/kicad/issues/6248
2020-11-01 14:12:35 +00:00
Jeff Young
7676ba6f5d
Coverity warning.
2020-11-01 14:12:35 +00:00
Jeff Young
a9bf4bc6a6
Fix freed-memory crasher.
...
While the DRC_ENGINE is not long-lived, it's test providers are,
and must be cleared for each use.
2020-10-31 15:45:41 +00:00
Jeff Young
115fd1d7f3
Move track-to-zone testing to RTrees.
...
Also implemente pad-to-zone testing and removes the control in the
GUI (now that it's fast).
2020-10-31 15:45:41 +00:00
Jeff Young
1a1aef756e
Reporting "actual" incompatible with exiting after first hit.
...
But we're currently using this only as a rough collision check
anyway as it doesn't know the specific item-to-item clearance.
2020-10-31 15:45:41 +00:00
Jeff Young
788a1e3bce
Handle footprint zones in zone collision checks.
...
Also fixes issue with progress reporter.
2020-10-31 15:45:41 +00:00
Jeff Young
cd93dbd324
Naming cleanup.
2020-10-31 15:45:41 +00:00
Jeff Young
8d4c9aeaac
Fix Mac-style include.
2020-10-31 15:45:41 +00:00
Jeff Young
d5addb692c
Move a bunch of DRC tests to RTrees.
2020-10-31 15:45:41 +00:00
Jeff Young
776ea35040
Fix copy/paste error and some formatting issues.
2020-10-27 22:46:19 +00:00
Werni
a7d5d1f091
Add more consts all over the place
2020-10-27 11:03:35 +00:00
Jeff Young
2e94be0855
Move geometric parts of Cleanup Tracks and Vias to RTree.
...
Removes two separate O(n^2) traverses over the tracks.
Fixes https://gitlab.com/kicad/code/kicad/issues/6077
2020-10-26 18:37:59 +00:00
jean-pierre charras
c092e3f8b7
Fix a few minor Coverity warnings
2020-10-26 10:46:08 +01:00
Marek Roszko
1984581c46
Remove common.h from more headers
2020-10-25 22:29:53 -04:00
Jeff Young
45113f983b
Fix test case.
...
Silk tests were processing MODULE_Ts when they shouldn't have been.
2020-10-25 23:19:39 +00:00
Jeff Young
2ee61f52ca
Implement correct layer handling for keepout constraints.
2020-10-25 22:47:47 +00:00
Jeff Young
8c93fc76ae
Don't require keepout zones to be named.
...
insideArea() now takes A, B, a UUID or a zone name. (Only the UUID
is new.)
2020-10-25 21:08:09 +00:00
Jeff Young
5b1e1075a9
Allow an easy way for DRC tests to specify compound objects or not.
2020-10-25 20:24:47 +00:00
Jeff Young
386cefbe84
Do footprint keepouts by courtyard.
...
Fixes https://gitlab.com/kicad/code/kicad/issues/6162
2020-10-25 18:17:58 +00:00
jean-pierre charras
d6f91c810f
Fix a few compil and Coverity warnings.
2020-10-25 10:02:07 +01:00
Marek Roszko
e928b2d8fd
Split EDA_UNITS out from common.
2020-10-25 00:02:52 -04:00
Jeff Young
7674d2ba91
Free allocated DRC structures when re-initializing.
...
Fixes https://gitlab.com/kicad/code/kicad/issues/6147
2020-10-24 22:39:53 +01:00
David Shah
66bcfb3ffc
drc_engine: Fix via type names
...
There was a mismatch between the via type names used in the DRC engine
and the via type names defined in the class_track.cpp ENUM_MAP for
VIATYPE.
This fixes the discrepancy; which was breaking microvias altogether as
the route tool also uses the DRC code to determine the correct
diameter/drill (without this patch it was incorrectly using regular
dimensions for microvias.)
2020-10-24 15:46:47 +00:00
Jeff Young
59f3fefd17
When polygonizing arcs don't use synthesized center and angle.
...
Start, mid and end are the "real" properties and come with less
error.
Also collapses two arc polygonization routines into one.
Also fixes DRC checks to be cognizant of arc approximation error.
Fixes https://gitlab.com/kicad/code/kicad/issues/6039
2020-10-23 23:55:45 +01:00
Seth Hillbrand
19bf594aa0
Remove unused point in polygon test
...
There can be only one.
2020-10-23 12:13:09 -07:00
Jeff Young
01ce881340
Honour NOT_IN_SCHEMATIC setting.
...
Fixes https://gitlab.com/kicad/code/kicad/issues/6137
2020-10-23 17:27:18 +01:00
Jeff Young
cce557b9ad
Redo the board-edge-building logic to return better error reports.
...
Fixes https://gitlab.com/kicad/code/kicad/issues/6119
2020-10-22 21:29:04 +01:00
Jeff Young
41fd8293e8
Don't apply clearance to keepout zones.
...
Also improves the clearance and keepout reporting.
Fixes https://gitlab.com/kicad/code/kicad/issues/6118
2020-10-22 21:29:04 +01:00
Jeff Young
9ff49277e1
Add implicit rule generation for keepout areas.
...
Also implements collision detection for SHAPE_POLY_SET.
Fixes https://gitlab.com/kicad/code/kicad/issues/6105
2020-10-22 10:41:21 +01:00
Seth Hillbrand
4085757aeb
Remove beginning/ending spaces in translations
...
Adding space padding makes translations more difficult by increasing
string counts
2020-10-20 12:08:04 -07:00
Jeff Young
18f9f3cf0b
Add curved track support to track-to-zone DRC.
...
Fixes https://gitlab.com/kicad/code/kicad/issues/6039
2020-10-20 13:38:09 +01:00
Wayne Stambaugh
8ff51d8899
Eeschema: add schematic sheet page number.
...
The groundwork has now been laid for per sheet instance data. Initially
this only supports sheet page numbers but could be expanded to include
other per sheet instance information.
ADDED: Support for user defined schematic page numbers.
2020-10-19 14:05:45 -04:00
Jeff Young
c5d45f8a78
Move DRC dialog to same DRC rule reporting mechanism as inspectors.
2020-10-17 20:40:05 +01:00
Jeff Young
6e54856e67
Don't halt other tests when one test's max is reached.
...
Fixes https://gitlab.com/kicad/code/kicad/issues/6035
2020-10-17 12:13:04 +01:00
Jeff Young
1b2168af1e
Don't throw implicit rules out after failing to compile user rules.
2020-10-16 12:44:20 +01:00
Jeff Young
eea7957e16
Inform user of bad DRC rules when filling zones.
...
ADDED: facility for hypertext links in infobar.
Also made use of this for via constraint errors when routing.
Fixes https://gitlab.com/kicad/code/kicad/issues/5800
2020-10-16 12:44:20 +01:00
Jeff Young
6b7749658e
Report all implicit rules for resolution reports.
2020-10-15 20:53:27 +01:00
Jeff Young
ebd5dc81cc
Fix some more cases of malformed syntax crashing the compiler.
...
Fixes https://gitlab.com/kicad/code/kicad/issues/6016
2020-10-15 18:32:52 +01:00
Jeff Young
5ac17288a9
Work around missing copy constructor for PCB_SHAPE.
...
Also introduces performance enhancements so that single closed shapes
for board edges don't eliminate the effectiveness of the RTree.
Fixes https://gitlab.com/kicad/code/kicad/issues/5990
2020-10-15 11:38:18 +01:00
Jeff Young
1d93effa14
Don't build RTrees if test results will be ignored.
2020-10-14 15:56:32 +01:00
Jeff Young
f220e83de6
Board edges have no width.
...
Fixes https://gitlab.com/kicad/code/kicad/issues/5990
2020-10-14 15:56:32 +01:00
Marek Roszko
2c86363aa0
Relocate the page_layout includes to a page_layout folder
2020-10-13 20:33:33 -04:00
Jon Evans
cb1d416e5a
Use settings keys, not error codes, for ERC/DRC reports
...
Error codes can shift around if the enum ordering is
not maintained, which is more fragile than the settings
key which should never be changed after a new code is
created.
Fixes https://gitlab.com/kicad/code/kicad/-/issues/6001
2020-10-13 18:03:07 -04:00
Jeff Young
3fc1a0c314
Fix faulty copper-checking logic.
...
Fixes https://gitlab.com/kicad/code/kicad/issues/5978
2020-10-13 16:32:54 +01:00
Jeff Young
2e6968e7eb
Board edges tester also needs to check silk text for visibility.
...
Fixes https://gitlab.com/kicad/code/kicad/issues/5989
2020-10-13 00:58:38 +01:00
Marek Roszko
83d231cd49
Fix test under msvc
2020-10-12 19:47:36 -04:00