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
Jeff Young
ee3be0802c
Move PCBNew overrides to nullable properties.
...
Fixes https://gitlab.com/kicad/code/kicad/-/issues/5562
2024-02-24 20:05:51 +00:00
jean-pierre charras
ef6a5b6252
teardrops: calculate better points on track for track arc.
...
Previously, a reference point to calculate teardrop length was calculated
using a track segment. It can create significant position error with track arcs.
Now a arc is used to find this reference point.
2024-02-23 11:36:14 +01:00
Seth Hillbrand
d99641be40
ADDED: Git integration support
...
Adds support for project-based git integration, branch support, commit,
revert and updates
Fixes https://gitlab.com/kicad/code/kicad/issues/10441
2023-10-20 12:51:47 +00:00
Jeff Young
b986391a04
Remove stale teardrops before rebuilding connectivity.
...
Fixes https://gitlab.com/kicad/code/kicad/-/issues/15398
2023-08-15 12:13:34 +01:00
Roberto Fernandez Bautista
90ff331c58
Refactor: Move static to be inside ZONE_SETTINGS
2023-06-10 12:03:41 +02:00
Wayne Stambaugh
bdee545841
Coverity warning fixes.
2023-06-03 07:28:17 -04:00
Jeff Young
ea341289de
Fix uninitialized variable (Coverity report).
2023-05-20 21:10:09 +01:00
Jeff Young
8b1fd62d35
Make pad & via teardrops 1st-class citizens (props of the pad/via)
...
Change teardrop generation to rely more heavily on BOARD_CONNECTIVITY
for improved performance.
Add updating of teardrops on BOARD_COMMIT::Push().
Also converts m_CopperItemRTreeCache to std::shared_ptr.
We don't copy it around anyway, and having to create a new set
of std::unique_ptr's for each operation is likely to be more
expensive than std::shared_ptr's overhead.
2023-05-19 18:02:03 +01:00
jean-pierre charras
22de1c8813
Teardrop dialog: refinements. Show a PROGRESS_REPORTER when refilling zones.
2023-05-12 10:06:20 +02:00
Jeff Young
4da6d5ff28
Add "generate raw teardrops" option to Add Teardrops dialog.
...
Fixes https://gitlab.com/kicad/code/kicad/issues/14711
Fixes https://gitlab.com/kicad/code/kicad/issues/14704
2023-05-11 15:47:42 +01:00
Jeff Young
daa3a1aae9
Revert addition of update-teardrops checkbox to DRC dialog.
2023-05-11 14:53:28 +01:00
Jeff Young
2d15067453
ADDED allow update of teardrops before running DRC.
...
Fixes https://gitlab.com/kicad/code/kicad/issues/14264
2023-04-15 12:18:41 +01:00
jean-pierre charras
0bd83d3096
Footprint viewer: ensure the footprint is updated after new library selection
...
Previously, if the first fp of the new lib has the same name as the old
displayed fp, the old fp was not replace by the new fp.
2023-03-29 16:53:49 +02:00
jean-pierre charras
db66419f02
Teardrops: fix incorrect shape in some cases.
2023-02-20 09:06:21 +01:00
jean-pierre charras
3a11d90d92
Teardrops: handle arcs in tracks.
...
Fixes #13858
https://gitlab.com/kicad/code/kicad/issues/13858
2023-02-19 14:44:37 +01:00
jean-pierre charras
3f50199dad
TEARDROP_MANAGER: fix a corner case that generate a invalid teardrop polygon.
...
Also add a better handling of connected tracks when searching for a track connected
to a too short track to create a teardrop, search was stopped to Y connections.
Now the selected track is the longest of these 2 candidates.
Fixes #13006
https://gitlab.com/kicad/code/kicad/issues/13006
2022-11-26 14:37:20 +01:00
Jeff Young
c409646aad
Update message panel after rebuilding connectivity.
...
Fixes https://gitlab.com/kicad/code/kicad/issues/10122
2022-11-18 15:29:16 +00:00
Jeff Young
d16b23d16e
Name shortening and line-break reduction.
2022-10-21 18:41:39 +01:00
Jeff Young
57a6aeb86a
Redraw ratsnest after removing teardrops.
...
No, I don't know why this is needed. But after a couple of hours trying
to chase it down, return-on-investment is fading....
Fixes https://gitlab.com/kicad/code/kicad/issues/12420
2022-10-10 21:07:18 +01:00
Jeff Young
d67437a2aa
Move ratsnest exclusion processing to a post-pass.
...
Also fixes a few cases where we were unnecessarily rebuilding
connectivity more than once for an operation.
2022-09-29 17:08:49 +01:00
Marek Roszko
3d5913c825
Remove convert_to_biu.h, merge contents to base_units.h
2022-09-16 21:09:28 -04:00
Marek Roszko
a8613ee80f
Combine Iu2Millimeter & remove PcbMm2iu
2022-09-16 21:09:26 -04:00
Marek Roszko
161775fdbc
Fix another type warning
2022-08-26 20:15:01 -04:00
Jeff Young
4423755176
Pretty up the Teardrops dialog.
...
Fixes https://gitlab.com/kicad/code/kicad/issues/12170
2022-08-07 23:22:21 +01:00
jean-pierre charras
05785ac6b9
Teardrops: use default zone settings instead of last settings set by the zone dialog.
...
Fixes #12171
https://gitlab.com/kicad/code/kicad/issues/
Fixes #12172
2022-08-07 08:52:40 +02:00
Jeff Young
2de10080cd
Add edge and margin clearances to message panel.
2022-07-15 16:14:32 +01:00
luz paz
af6ba1a16e
Fix typos in pcbnew sub-directory
...
Found via `codespell -q 3 -S *.po,./thirdparty,./Documentation/changelogs -L aactual,acount,aline,alocation,alog,anormal,anumber,aother,apoints,aparent,aray,ba,busses,dout,einstance,leaded,modul,ontext,ot,overide,serie,te,,tesselate,tesselator,tht`
2022-06-30 09:39:45 -04:00
Wayne Stambaugh
7da7864f5e
Fix some Coverity issues.
2022-03-25 15:51:05 -04: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
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
Jeff Young
843a56c4e4
Implement two-staged zone priority: assigned priority followed by UUID.
2022-03-01 14:53:35 +00:00
jean-pierre charras
27c25debea
teardrops: fix a not very good shape for not round targets after code change.
2022-02-02 13:31:29 +01:00
jean-pierre charras
419010ec46
teardrop: add filtering to skip teardrops when pad/vias and tracks have similar sizes
2022-01-30 15:39:28 +01:00
jean-pierre charras
3a66f33d96
TEARDROP_MANAGER: add option to add teardrops on pads in zones.
2022-01-30 15:39:27 +01:00
jean-pierre charras
f651e31965
Fix minor compil and Coverity warnings.
2022-01-25 12:52:13 +01:00
jean-pierre charras
be99240c8c
Fix strings and update French translation
2022-01-23 13:22:32 +01:00
jean-pierre charras
712b304da7
Teardrop: Simplify code.
2022-01-23 12:57:40 +01:00
jean-pierre charras
1b42152ba0
Teardrops: store parameters in BOARD_DESIGN_SETTINGS.
2022-01-23 10:57:08 +01:00
Jeff Young
c8a50d9b50
Remove unit-less angles from VECTOR2I/D APIs.
2022-01-20 23:58:20 +00:00
Jeff Young
14006495d5
Angle cleanup.
2022-01-20 22:35:41 +00:00
Jeff Young
4eac8d7c66
Remove unit-less angles from geometry lib APIs.
2022-01-20 21:10:04 +00:00
jean-pierre charras
826154d666
teardrop: rework on code
2022-01-18 17:12:17 +01:00
jean-pierre charras
21cdc5aec0
make dialog_teardrop_base translatable.
2022-01-16 21:09:05 +01:00
jean-pierre charras
ef6ce972d6
Fix missing filtering of teardrop targets.
2022-01-16 17:20:48 +01:00
jean-pierre charras
5b0527bdfe
Teardrop: add separate settings for round, rect shapes and tracks
2022-01-16 10:24:23 +01:00
jean-pierre charras
ac78d51b14
Teardrops: better dialog, and better code
2022-01-10 20:04:41 +01:00
jean-pierre charras
d42514ad30
Add code and dialog to create/add/remove teardrops, step 1
2022-01-10 20:04:40 +01:00