Seth Hillbrand
9aba808366
Altium import
...
- Handle intermediate Altium version with some fields but not others
- Ensure that we are properly moving text that is not a box and not a
field
2024-06-18 21:35:41 -07:00
Seth Hillbrand
bcf6b620a8
Large rework of BEZIER_POLY
...
Add direct handling of quadratic beziers to save compute time and number
of points. Update cubic interpolation to reduce number of points
generated for a given smoothness
Cache data on open and used cached data to avoid multiple re-calcs
Remove minimum line length and number of segments and replace with
standard max error level. Allows us to specify the tolerance of bezier
interpolation
2024-06-18 17:55:41 -07:00
Seth Hillbrand
0d2c4c91fd
Properly initialize fonttype for older Altium files
2024-06-18 17:55:31 -07:00
Jon Evans
81a1e9e83e
Don't write out non-explicit tenting
...
Fixes https://gitlab.com/kicad/code/kicad/-/issues/18230
2024-06-18 17:52:42 -04:00
Jon Evans
1a1083def6
Revert "Tented usually means that there is no soldermask"
...
This reverts commit 021f251efd
.
Fixes https://gitlab.com/kicad/code/kicad/-/issues/18230
2024-06-18 17:52:42 -04:00
Seth Hillbrand
7e561acf53
Altium: Handle textboxes
...
Also, corrects a minor issue with the text width calculation where
Altium calculates centerline to centerline but KiCad text heights are to
the edge of the stroke font. Need to still do better adjustments for
the various altium stroke fonts
Fixes https://gitlab.com/kicad/code/kicad/-/issues/9468
2024-06-16 17:20:59 -07:00
Seth Hillbrand
b11e030f8f
Cleanup Altium text import
...
Handle inverted text
Correct location for flags
Add mechanics to detect inverted_rect (like text boxes)
2024-06-16 17:20:59 -07:00
Jeff Young
5a9b681009
Clear timestamp when clearing cache.
...
Fixes https://gitlab.com/kicad/code/kicad/-/issues/17913
2024-06-16 10:46:36 +01:00
Jeff Young
5ba2896968
enclosedByArea test for zone needs to be outline-based.
...
(Otherwise it's order-specific when filling, which
is pretty unpredictable.)
Fixes https://gitlab.com/kicad/code/kicad/-/issues/18202
2024-06-15 17:52:15 +01:00
Jeff Young
eae85742cc
Don't report reasonable solder mask bridges in a net-tie footprint.
2024-06-15 15:57:13 +01:00
Jon Evans
fa235116f7
Import Altium via tenting settings
2024-06-15 09:36:25 -04:00
jean-pierre charras
16e708a0e7
Fix minor compil and Coverity warnings.
2024-06-15 11:20:21 +02:00
Seth Hillbrand
7ea013b96c
Altium: Handle footprint vias
...
These are treated as pads in KiCad
Fixes https://gitlab.com/kicad/code/kicad/-/issues/18194
2024-06-14 16:49:56 -07:00
Seth Hillbrand
021f251efd
Tented usually means that there is no soldermask
...
Probably was a typo
2024-06-14 16:49:56 -07:00
Seth Hillbrand
d21eba4021
Unselected tree before syncing
...
On GTK, the selected item is checked for its parent when being
unselected. This breaks if the parent has been removed by the Sync()
call, so we need to ensure that the unselect all call happens prior
2024-06-14 16:49:56 -07:00
Jeff Young
db9f0a0358
Report footprint parent of shape when in board editor.
...
While the user can't select these, we do report them
in DRC messages and the like, where it's handy to
know what they're from.
2024-06-14 23:19:26 +01:00
Jeff Young
8cddd40fc9
Check mask apertures on the mask layer.
...
(Otherwise testing A:B and B:A will add items to the
m_maskApertureNetMap cache on different layers.)
2024-06-14 22:55:40 +01:00
Jeff Young
b2588e0bbf
Footprint Editor doesn't have nets.
...
(Copper shapes, on the other hand, can. Since we use
GetItemDescription() to report DRC errors and the like,
it's better to have it report the net even when it's
<no net>.)
2024-06-14 22:46:29 +01:00
Jeff Young
7fef6e8d83
Use view's RTree for redrawing netnames.
2024-06-14 00:20:37 +01:00
Jeff Young
c9ddcd618d
Make sure to reset the cached viewport.
2024-06-12 23:35:06 +01:00
Jon Evans
ccc76aad2f
Fix typo loading legacy tenting setting
2024-06-12 17:42:44 -04:00
Alex Shvartzkop
44a33eedf4
Update only visible track segments in redrawNetnames.
...
RequestRefresh doesn't seem to be needed.
2024-06-13 00:28:37 +03:00
Alex Shvartzkop
f0e9f9f15a
Optimize PAD LoD calculation.
2024-06-12 23:05:33 +03:00
Alex Shvartzkop
52daf14c78
Optimize VIA LoD calculation.
2024-06-12 23:05:33 +03:00
Jeff Young
0ca7a81181
Deferred redraw for netnames.
2024-06-12 17:20:20 +01:00
Jeff Young
b7161181e8
Hidden footprint libraries are not yet supported.
...
Fixes https://gitlab.com/kicad/code/kicad/-/issues/18183
2024-06-12 16:59:20 +01:00
Jeff Young
694a7db457
Performance improvements.
...
Don't construct a wxString or a LSEQ when you don't
have to. They're both more expensive than you might
think.
2024-06-12 11:06:10 +01:00
Jon Evans
63cd110720
Make verbiage more clear
2024-06-11 22:19:33 -04:00
Jon Evans
896f56772f
Fix warnings
2024-06-11 22:01:06 -04:00
Jon Evans
5fc0f1f51e
ADDED: Independent control of front/back via tenting
2024-06-11 21:50:25 -04:00
Jon Evans
4aab9f59aa
ADDED: Support tenting control of individual vias
...
REMOVED: Tenting option from plot dialog (tenting is now
controlled from Board Setup and via properties)
See https://gitlab.com/kicad/code/kicad/-/issues/2402
2024-06-11 21:25:02 -04:00
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