16 Commits

Author SHA1 Message Date
Jeff Young
8d1119e5dd Uninitialized variables. 2025-06-16 12:01:20 +01:00
Seth Hillbrand
0b2d4d4879 Revise Copyright statement to align with TLF
Recommendation is to avoid using the year nomenclature as this
information is already encoded in the git repo.  Avoids needing to
repeatly update.

Also updates AUTHORS.txt from current repo with contributor names
2025-01-01 14:12:04 -08: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
Jeff Young
ffa6adec96 Add a cache for TrueType contours and triangulation data.
Also returns minimumSegmentLength to its former value as
it doesn't appear to be required to fix
https://gitlab.com/kicad/code/kicad/-/issues/11463.

Fixes: https://gitlab.com/kicad/code/kicad/-/issues/16568
(cherry picked from commit 162e8962f7c5b429d33a84f96eeae3857f43c6f7)
2024-02-23 16:53:29 +01:00
Jeff Young
de634c6f3e Generate tofu if we fail to decompose outline font glyph. 2024-02-05 15:49:57 +00:00
Jeff Young
a28f092b67 Don't cover STL types. 2024-02-05 15:49:57 +00:00
Seth Hillbrand
42e02552ac Make outline font min segment length configurable
This was hard coded at 10IU, which was way too small for pcbnew and
still too small for schematic editor.  Instead, we set a default of 50
and allow the user to adjust (smaller for less powerful machines)

Fixes https://gitlab.com/kicad/code/kicad/-/issues/16568
2024-01-11 18:30:00 -08:00
Seth Hillbrand
33bef16376 Simplify the winding calculation
This algorithm is more robust against points and cheaper to execute.
2023-01-25 13:13:38 -08:00
jean-pierre charras
32551cf1ea minor coding style fix. 2022-07-31 18:35:37 +02:00
jean-pierre charras
b042e8cc41 outline_decomposer.cpp: fix a typo from commit 0a5ddb8
stroke_font.cpp better fix for commit 6a9607b
2022-02-06 18:09:30 +01:00
Marek Roszko
0a5ddb8d40 Add some vector reservations 2022-02-05 21:12:29 -05:00
Ola Rinta-Koski
da65fe0469 Font outline decomposition fixes 2022-01-15 12:51:09 +00:00
Jeff Young
70ad554343 Coverity fixes. 2022-01-14 16:08:18 +00:00
jean-pierre charras
cf11abda3d Fix test_drc_regressions.cpp: disable tests that need a footprint library
DRCE_LIB_FOOTPRINT_ISSUES and DRCE_LIB_FOOTPRINT_MISMATCH imply a library
but the test cases do not have a library.
2022-01-12 15:57:41 +01:00
Ola Rinta-Koski
5b7198dfc8 Fixes as per @sethhillbrand's comments 2022-01-08 16:47:45 +00:00
Ola Rinta-Koski
9b406c1da4 Outline font support. 2022-01-08 16:47:45 +00:00