Jeff Young
db0b733be5
Clear DRC caches before running soldermask tests again.
...
Fixes https://gitlab.com/kicad/code/kicad/issues/10922
2022-03-12 19:44:34 +00:00
jean-pierre charras
7fb4a2c0a5
CONNECTIVITY_DATA::IsConnectedOnLayer(): fix crash in some cases.
...
Fix crash when a zone do not have filled areas on a given layer.
2022-03-12 19:31:46 +01:00
Marek Roszko
b8557e77ee
Tweak the "pyd" extension if for windows to be completely inclusive
2022-03-12 09:22:01 -05:00
Jeff Young
0a8718cd1d
Fix issue when we ask if a pad is connected to a zone we're in the middle of filling.
2022-03-12 14:17:53 +00:00
Jeff Young
89e61ff73b
More performance enhancements for DRC.
2022-03-12 14:17:52 +00:00
Jeff Young
e03b06927d
Fix rotation problems for knockout fp text, and implement 3D rendering.
...
Fixes https://gitlab.com/kicad/code/kicad/issues/11086
2022-03-12 14:17:52 +00:00
jean-pierre charras
f14ef477cc
Fix a incorrect filename in a copy command (MSW specific).
...
Also fix a regression and respect the KICAD_BUILD_QA_TESTS build option.
2022-03-12 11:04:57 +01:00
Jeff Young
7ab4d67e94
Make sure line style comboboxes get a default entry.
...
Fixes https://gitlab.com/kicad/code/kicad/issues/11083
2022-03-11 23:19:16 +00:00
Jeff Young
6f555b6258
wxT() and some cleanup in DRC.
2022-03-11 23:19:16 +00:00
Wayne Stambaugh
eec528ae48
Fix GCC build error on Linux.
2022-03-11 17:03:01 -05:00
Jeff Young
ae307e1b34
Parallelize DRC triangulation, keepout processing, and sliver checking.
...
Also fixes issue with adding fractured polygons in sliver checking which
slowed the board from hell down to less than a crawl.
2022-03-11 20:52:11 +00:00
Jeff Young
6ce1399811
Redraw pads when mask or paste layer is visible after board setup.
...
Fixes https://gitlab.com/kicad/code/kicad/issues/11079
2022-03-11 20:52:11 +00:00
Thomas Pointhuber
79aafd1bd3
altium: support keepout restrictions in Arcs, Fills and Regions
2022-03-11 19:15:58 +01:00
jean-pierre charras
8d05ca5982
Teardrop rework: avoid refill zones on a not updated connectivity data.
...
- Teardrops have now just their shape filled (much faster than a full refill)
- The full zone refill is no longer made after recreating teardrops.
- this is more compatible with the option Auto-refill zones"
Fixes #11106
https://gitlab.com/kicad/code/kicad/issues/11106
2022-03-11 16:12:27 +01:00
jean-pierre charras
2bf56c2441
DIALOG_GLOBAL_DELETION and teardrop.cpp: fix incorrect call to GetLayer() for ZONES
2022-03-11 11:16:09 +01:00
Fabien Corona
d452f79860
pcbnew: search for nets
...
Fixes https://gitlab.com/kicad/code/kicad/-/issues/10601
2022-03-10 23:12:30 +00:00
Seth Hillbrand
f218da6ea5
Help repair invalid rotation settings
...
We had a period where we were writing invalid rotations leading to
values too large by a factor of 100. This clamps the stored values
while repairing those affected
Fixes https://gitlab.com/kicad/code/kicad/issues/11090
2022-03-10 09:44:26 -08:00
Jeff Young
eb9ccea559
Performance improvement.
2022-03-10 13:46:42 +00:00
jean-pierre charras
0440aa3d83
Extend layer LAYER_LOCKED_ITEM_SHADOW to draw shadow markers on other locked items:
...
tracks, texts, graphics.
2022-03-09 18:50:31 +01:00
jean-pierre charras
016af235db
Pcbnew: add a GAL layer (LAYER_LOCKED_ITEM_SHADOW) to draw markers on locked footprints
2022-03-09 17:54:58 +01:00
jean-pierre charras
e37bb2e0c3
swig: disable a few warnings generated by pcb_shape.i, math.i and version.i
2022-03-09 17:29:29 +01:00
Jeff Young
663edcf665
Better progress indication for board from hell.
2022-03-09 14:30:21 +00:00
jean-pierre charras
878c70c1ab
Pcbnew: fix erroneous IslandRemovalMode default mode in board files.
...
The default is ISLAND_REMOVAL_MODE::ALWAYS in *.kicad_pcb files
2022-03-09 13:17:18 +01:00
jean-pierre charras
e7f379c31d
Pcbnew, Knockout texts: fix issues seen with rotated texts.
...
Fixes #11085
https://gitlab.com/kicad/code/kicad/issues/11085
2022-03-09 11:22:05 +01:00
Jeff Young
e4b56ab7f1
Performance fixes for the board from hell....
2022-03-08 23:54:34 +00:00
Jeff Young
392a3ec131
Fix typo which leads to catastrophic performance on boards with tons of zones.
2022-03-08 20:16:37 +00:00
Jeff Young
f6dac9eb13
Support text knockouts in non-copper zones.
2022-03-08 18:06:41 +00:00
Jeff Young
40fd8860fe
Plotting (and some bug fixes) for knockout text.
2022-03-08 18:06:41 +00:00
jean-pierre charras
b6aa5bd1ed
Pcbnew: PCB_TEXT: save the Locked flag in file.
...
Previously, one could lock a graphic text on a board, but the lock state was not saved.
2022-03-08 17:35:26 +01:00
jean-pierre charras
bafd8ac9d5
plot_board_layers.cpp: Add missing layers (USer_x) in list
...
Fixes #11072
https://gitlab.com/kicad/code/kicad/issues/11072
2022-03-08 14:41:10 +01:00
Jeff Young
293021c58c
ADDED: knockout pcb and fp text.
...
Fixes https://gitlab.com/kicad/code/kicad/issues/7055
2022-03-08 13:22:20 +00:00
Seth Hillbrand
6934bc124c
Move temp save files to temporary directory
...
Avoid excess writes to the project directory to dodge issues with remote
file systems not fully writing data.
wxRename works across disk boundaries (in theory) and falls back to
wxCopy/wxRemove when it fails
Fixes https://gitlab.com/kicad/code/kicad/issues/10747
2022-03-07 20:13:28 -08:00
Jeff Young
bf0f2aa4a8
Adjust bitmap text spacing a bit so it's closer to the stroke font.
...
This helps the text better match the highlighting when it gets small
enough that we switch to the bitmap font for performance.
2022-03-07 20:30:50 +00:00
Thomas Pointhuber
a9ebb42ecd
altium: Parse keepout restrictions of tracks
2022-03-07 19:58:43 +01:00
jean-pierre charras
f866d15154
Pcbnew: fix crash when clicking on a footprint on a filled zone area.
2022-03-07 13:56:47 +01:00
Jeff Young
bf44ae907b
Minor fix for dialog.
2022-03-07 10:26:18 +00:00
Jeff Young
0dc857b5ab
Clean up pad handling in 3D viewer.
...
Most importantly, create F_Cu/B_Cu layers if they're otherwise empty
but we have plated pads to render on them.
Fixes https://gitlab.com/kicad/code/kicad/issues/10207
2022-03-06 13:57:12 +00:00
jean-pierre charras
dbfdd3fb56
Fix some Coverity warnings.
2022-03-06 09:48:33 +01:00
Frank Palazzolo
3cb1a689a7
pcbnew: Fix Bezier "Add Primitive" in Pad Creation Dialog
2022-03-06 00:35:53 +00:00
Jeff Young
1fc99dd2c0
Don't call GetLayer() on a multi-layer object.
2022-03-05 23:07:43 +00:00
Jeff Young
23088e6e1a
Minor performance enhancements for zone filler.
...
Be smarter about not knocking out some classes of pads twice.
2022-03-05 20:32:08 +00:00
Jeff Young
fed5bcbdf6
Improvements for pads/vias in zones which knockout other zones.
...
1) Drop tiny islands which might cause connection problems.
2) Cleanup some dead code in filler
3) Don't estabilish a connection to an island that is fully covered
by whatever its connecting to.
Fixes https://gitlab.com/kicad/code/kicad/issues/11036
2022-03-05 18:59:53 +00:00
Jeff Young
878c4d2f6b
Must clear arcs before calling Clipper.
2022-03-05 18:59:53 +00:00
Jon Evans
cb6d6d7ef4
Settings: allow multiple project access from Python standalone
...
We can't handle this in the UI, but we can externally, so allow
it for Python scripting and eventually we'll use this in the UI
also...
Fixes https://gitlab.com/kicad/code/kicad/-/issues/10540
(cherry picked from commit 1394509734
)
2022-03-05 13:04:19 -05:00
jean-pierre charras
69453964b4
pcbnew_scripting_helpers: fix a potential crash when running a script outside kicad.
...
BOARD* LoadBoard( wxString& aFileName, IO_MGR::PCB_FILE_T aFormat ) crashes if a
old project file (*.pro) exists and the *.kicad_pro file doses not exists.
The crash happens when trying to convert the old config outside kicad.
2022-03-05 18:26:33 +01:00
jean-pierre charras
cc5493e91e
DIALOG_COPPER_ZONE_BASE: better tool tip.
2022-03-05 18:23:08 +01:00
jean-pierre charras
3bb1fd8311
Teardrops: fixes and enhancements:
...
- do not allow smoothing outlines: outlines are already optimized.
- do not allow settings incompatible with teardrop area (grid, thermal relief)
- DIALOG_COPPER_ZONE: export zone settings to similar zones only.
Fixes #11040
https://gitlab.com/kicad/code/kicad/issues/11040
2022-03-05 17:18:42 +01:00
Seth Hillbrand
c18d9b9baf
Normalize `IsInsideCourtyard`
2022-03-04 15:49:02 -08:00
Seth Hillbrand
cd7141fd10
Cache read arc data for stability
...
Arcs can be altered by the process of changing from on-disk
representation to in-memory representation. Saving back to disk without
modifying the arc should not modify the calculated values.
This stores a copy of the on-disk representation that is only used to
save back to disk in the event that the arc is not modified during
editing.
Fixes https://gitlab.com/kicad/code/kicad/issues/10442
2022-03-04 15:20:31 -08:00
Seth Hillbrand
8218f9ab44
Finally found the intermittant QA crash
...
When loading footprints/zones in parallel, we cannot reference a static
vector that gets cleared by other threads.
It is unclear why this element was ever static to begin with (premature
optimization?) but it has been this way for a long time. We never
noticed until we threaded load cycles, which gave the hatch a chance to
override itself and cause crashes
Fixes https://gitlab.com/kicad/code/kicad/issues/9888
2022-03-04 11:37:49 -08:00