Commit Graph

17004 Commits

Author SHA1 Message Date
Jeff Young d865bda4f2 Cache display netnames.
Also changes the redraw behaviour to not try and redraw
only when things entered the view (this didn't work
because it may be the netname that's entering the view,
not the whole track).  Instead we only process a finite
number of tracks on each idle event (in order to avoid
#12436).

Note that we don't need the timer at all anymore as the
netnames are in fixed locations on the track and never
make the track look like it's being dragged.

Also improves performance by avoiding sqrt.
2024-06-11 16:30:52 +01:00
jean-pierre charras 9bf0b479ed fix a compil issue on msys2 2024-06-11 10:58:21 +02:00
Alex Shvartzkop 44fd13af47 Slight optimization for PCB_PAINTER when drawing vias/tracks. 2024-06-11 05:30:02 +03:00
Wayne Stambaugh 012d3f098f Fix build error caused by commit 82c2bda52b. 2024-06-10 10:56:02 -04:00
Alex Shvartzkop 0d2838518b Altium PCB import: don't add thickness to Solid style fills.
(cherry picked from commit b34dbf58c5)
2024-06-10 17:33:26 +03:00
Alex Shvartzkop 82c2bda52b Altium PCB import: make sure Polygon fill is contained within the outline. 2024-06-10 17:21:41 +03:00
Alex Shvartzkop 43dab2a8b5 Altium PCB import: avoid integer overflows when rotating rectangular fills.
Fixes artifacts seen in https://gitlab.com/kicad/code/kicad/-/issues/18156

(cherry picked from commit 3ea314cb9f)
2024-06-10 01:01:32 +03:00
Jeff Young ca54eb422b Don't default KeepUpright to true in Eagle importer.
Fixes https://gitlab.com/kicad/code/kicad/-/issues/18175
2024-06-09 22:19:26 +01:00
Alex Shvartzkop 80b7f5fcbf Revert "Pcbnew, Altium import: Fix issues with hatched zones."
This removed the hatch fill import functionality,
and is no longer needed now that the root cause was found.

This reverts commit 616510aca2.
2024-06-09 20:04:27 +03:00
jean-pierre charras fb3730a9c0 STEP export: fix missing zones (they were added too late in code)
Fixes https://gitlab.com/kicad/code/kicad/-/issues/18177
2024-06-09 17:32:34 +02:00
Jon Evans 3bb7b3722c Fix MSVC not understanding operator== anymore 2024-06-08 17:27:34 -04:00
Jon Evans f5e7c705db Move custom shapes to PADSTACK; support in API 2024-06-08 14:26:36 -04:00
Jeff Young ed0869aa0c Share more library tree code. 2024-06-08 19:06:10 +01:00
Jeff Young 90652a741d Don't generate thermal reliefs for pads that don't intersect zone.
Fixes https://gitlab.com/kicad/code/kicad/-/issues/18174
2024-06-07 23:08:15 +01:00
Seth Hillbrand ff188450e6 Handle degenerate arcs
Arcs with their centers too far away are effectively straight lines, so
draw them as such

Fixes https://gitlab.com/kicad/code/kicad/-/issues/18170
2024-06-07 11:28:34 -07:00
jean-pierre charras 616510aca2 Pcbnew, Altium import: Fix issues with hatched zones.
- Filled zones using the hatch pattern cannot use the primitives from Altium.
the filled shapes must be rebuilt.
_ Filled zones using the hatch pattern with a very small gap are now converted
to a polygon pattern. Otherwise the calculation time can be very big.

Fixes https://gitlab.com/kicad/code/kicad/-/issues/18156
2024-06-06 16:37:28 +02:00
Jeff Young 9b8f1109e6 Formatting. 2024-06-06 11:41:37 +01:00
Mike Williams f3d2f4af01 PCB: add fields checkbox to Edit Text and Graphics
Also add missing saves for dimensions checkboxes.
2024-06-05 11:50:17 -04:00
Jeff Young 9fb07d886e PCB_GENERATOR_Ts are PCB_GROUP_Ts too.
Also, an item must already be in a commit to add it to a group.

Fixes https://gitlab.com/kicad/code/kicad/-/issues/17595
2024-06-05 10:51:24 +01:00
Marek Roszko 944835eefc Add PCB_VIA equality operator overload 2024-06-04 21:34:14 -04:00
Jon Evans 0b0a37aaf7 Move padstack serialization to PADSTACK
Also move a few more things from pad/via
2024-06-04 09:28:24 -04:00
Jeff Young 855c972156 Add regression test and example rule.
Fixes https://gitlab.com/kicad/code/kicad/-/issues/18142
2024-06-04 10:58:52 +01:00
dsa-t bc3ae8ca51 Don't construct an arc if we won't need it in pcbnew gfx importer.
(cherry picked from commit d34df3e951)

Co-authored-by: Alex Shvartzkop <dudesuchamazing@gmail.com>
2024-06-04 04:21:06 +00:00
Jeff Young 18e33a0957 Check drilled holes against other holes, even if laser burned.
Fixes https://gitlab.com/kicad/code/kicad/-/issues/18142
2024-06-03 21:53:37 +01:00
Frank Muenstermann 63d828d5ff kicad-cli: The --precision parameter was not recognized, if unit was inch, the export crashed 2024-06-03 09:03:57 +00:00
Jeff Young efd3cb115b Update Zone Manager for look & feel and coding stds. 2024-06-02 17:41:54 +01:00
Jeff Young 86d7cf5d96 Formatting. 2024-06-02 10:52:18 +01:00
Sven Pauli c7ad5efbed Implemented flip for tuning patterns. 2024-06-02 09:49:41 +00:00
Jeff Young dc8fd0996d Don't attempt to plot rule areas.
Fixes https://gitlab.com/kicad/code/kicad/-/issues/18133
2024-06-01 19:17:05 +01:00
Jeff Young 53ec5d2c19 Retain UUIDs where possible when updating footprints.
Fixes https://gitlab.com/kicad/code/kicad/-/issues/17451
2024-06-01 13:45:15 +01:00
Seth Hillbrand ae232054f7 Revert "Remove unneeded != operator"
MSVC errors when we don't keep this operator.

This reverts commit c6499cf5db.
2024-05-31 17:38:45 -07:00
Seth Hillbrand e8c96a8a20 Fixups for a9ae86ee
Correcting a couple mistakes and clarifying rounding
2024-05-31 17:31:50 -07:00
Marek Roszko 8b4253cda4 Drop the first point of an arc when building an outline when there's a previous point that's being changed
Fixes https://gitlab.com/kicad/code/kicad/-/issues/18125
2024-05-31 18:40:16 -04:00
Jeff Young 5d62345cbd ADDED checkbox to turn Margin layer on/off.
Fixes https://gitlab.com/kicad/code/kicad/-/issues/12493
2024-05-31 22:08:40 +01:00
Seth Hillbrand c6499cf5db Remove unneeded != operator
C++20 defines these implicitly
2024-05-31 13:29:34 -07:00
Seth Hillbrand a9ae86eefd Cleanup geometry functions
Added Distance(VECTOR2) function that returns a double.  Removed
superfluous EuclideanNorm, GetLineLength, integer constructor for
EDA_ANGLE (this promotes to double in the CTOR), DistanceLinePoint and
HitTestPoints

Also extended the size for arc calculations that get distances to center
points to avoid overflow
2024-05-31 12:26:37 -07:00
Jeff Young 931de12072 Use wxWidgets to track DPI.
Fixes https://gitlab.com/kicad/code/kicad/-/issues/17981
2024-05-31 17:08:43 +01:00
Jeff Young e3f77cd410 Handle DPI_CHANGED events for 3D canvases.
Fixes https://gitlab.com/kicad/code/kicad/-/issues/17981
2024-05-31 17:08:43 +01:00
Jeff Young 3cc653b6ff Revert DPI-change fix.
(Jon has a better one coming.)
2024-05-31 15:46:01 +01:00
Jeff Young f907b58d17 Handle DPI-change for footprint 3D-previews in Footprint Chooser. 2024-05-31 13:48:44 +01:00
Jeff Young f3d5d4afdd Formatting. 2024-05-31 12:35:17 +01:00
Jeff Young 3be6d5c5de Setup 3D canvas for Footprint Chooser previews.
Fixes https://gitlab.com/kicad/code/kicad/-/issues/17910
2024-05-31 12:33:32 +01:00
Jeff Young 6f0a1ade01 Don't add things to the selection that aren't in the commit.
Don't process line-pairs when one has already been deleted.

Clean up created line segments when operation is cancelled.

Fixes https://gitlab.com/kicad/code/kicad/-/issues/18122
2024-05-31 11:49:24 +01:00
Jeff Young b567e4d521 Silently interpret 0 as cancel.
No need to interrupt the user's workflow.
2024-05-31 10:54:07 +01:00
Jeff Young c60796aa4f Formatting. 2024-05-31 10:46:34 +01:00
Jeff Young 7151f9a131 Formatting. 2024-05-31 10:36:51 +01:00
Jeff Young 1eb26b439a REMOVED new footprint dialog.
We now just create an "Untitled" footprint.

Also fixes a bug where the preview of new footprints
would zoom in too far.

Fixes https://gitlab.com/kicad/code/kicad/-/issues/17573
2024-05-31 10:36:51 +01:00
Seth Hillbrand 015b93b474 Fixup arc check in dp coupled
Handle arcs starting at candidate end point.
Fix total arc size

Fixes https://gitlab.com/kicad/code/kicad/-/issues/17967
2024-05-30 22:45:33 -07:00
Seth Hillbrand 75ab3d9e8b Handle arcs dp coupling
Calculate coupled arcs and spacing

Fixes https://gitlab.com/kicad/code/kicad/-/issues/17967
2024-05-30 16:11:12 -07:00
Seth Hillbrand bffbdad9c0 Cleanup track comps 2024-05-30 14:21:51 -07:00