Behdad Esfahbod
bbdee18f67
[ttGlyphPen_test] Exercise preserveTopology
2023-02-22 07:57:37 -07:00
Behdad Esfahbod
7580fc7e24
[cu2quPen] Remove unnecessary check
2023-02-22 07:44:13 -07:00
Behdad Esfahbod
68bfd99da0
[ttGlyphPen_test] Exercise preserveTopology=False
...
Still wouldn't exercise non-empty drop codepath.
2023-02-22 07:43:14 -07:00
Cosimo Lupo
c7fa0e6f26
Cu2QuPointPen: minor refactoring of _drawPoints method
2023-02-22 12:03:04 +00:00
Behdad Esfahbod
58f9245115
[ttGlyphPen] Refactor code into function
2023-02-21 21:16:27 -07:00
Behdad Esfahbod
5e141f027b
[cubic-glyf] Add test for offcurve wrap-around and all-offcurve
2023-02-21 16:52:36 -07:00
Behdad Esfahbod
9c60b86b46
[cu2quPen] Add all_quadratic=True
2023-02-21 14:52:15 -07:00
Behdad Esfahbod
a21b71ef01
[cu2qu] Add all_quadratic=True parameter
...
If set to False, then either a single quadratic or a single cubic
is returned.
2023-02-21 13:14:01 -07:00
Behdad Esfahbod
9e40409094
[woff2] Support cubic curves as untransformed glyph table
2023-02-21 13:01:49 -07:00
Behdad Esfahbod
568dd0c5d4
[glyf] Support and test cubic spline
2023-02-21 13:01:49 -07:00
Behdad Esfahbod
2d98427c99
[fvar] Black
2023-02-21 13:01:49 -07:00
Behdad Esfahbod
9df8e6dd64
Add missing test file
2023-02-21 13:01:49 -07:00
Behdad Esfahbod
0a0b152c33
[glyf] Support, and add test for, all-offcurve cubic contour
2023-02-21 13:01:49 -07:00
Behdad Esfahbod
77e96bdcd9
[glyf_test] Add cubic test
2023-02-21 13:01:49 -07:00
Behdad Esfahbod
24e798da95
[ttGlyphPen] Add tests for cubic glyf
2023-02-21 13:01:49 -07:00
Behdad Esfahbod
82e0536beb
[glyf] Support cubic curves
...
https://github.com/harfbuzz/boring-expansion-spec/issues/41
2023-02-21 13:01:49 -07:00
Behdad Esfahbod
085b489012
[qu2cuPen] Change stats
...
To count number of quadratic vs cubic segments.
2023-02-21 13:01:41 -07:00
Behdad Esfahbod
b355b59c2c
[qu2cu] No need to add 0 to forced set
2023-02-20 21:14:04 -07:00
Behdad Esfahbod
f305e53dfc
[qu2cu] Typo
2023-02-20 18:30:20 -07:00
Behdad Esfahbod
710232f1d0
[qu2cu] Optimize using a forced set of oncurve points
...
Speeds up benchmark 12x.
2023-02-20 18:04:54 -07:00
Behdad Esfahbod
a4f4cd078c
[qu2cu.benchmark] Black
2023-02-20 17:20:06 -07:00
Behdad Esfahbod
c77ddcad45
[qu2cu.benchmark] Convert multiple quadratics splines instead of 1
...
More realistic benchmark.
2023-02-20 17:10:36 -07:00
Behdad Esfahbod
26f590ddaa
[qu2cu] Adjust comment
2023-02-20 16:22:06 -07:00
Behdad Esfahbod
7457a06c68
[qu2cu] Avoid copying curve list passed to for merge_curves
2023-02-20 16:19:30 -07:00
Behdad Esfahbod
c53933a9bc
[qu2cu] Adjust cost calculation again
...
I believe I've got it right this time. Produces slightly better output.
2023-02-20 15:24:07 -07:00
Behdad Esfahbod
03d2cd1fa5
[qu2cu] More cython annotations
...
Apparently you can even annotate variables inside generator expressions.
2023-02-20 14:12:59 -07:00
Behdad Esfahbod
5ee6cb9961
[qu2cu] Add a few more cython annotations
2023-02-20 14:04:02 -07:00
Behdad Esfahbod
c1d1386e2c
Add a few more cython annotations
2023-02-20 13:54:35 -07:00
Behdad Esfahbod
a9a6d24c6d
[qu2cu] Fix up costs setup
2023-02-20 13:26:56 -07:00
Behdad Esfahbod
d9f6b82fb9
[qu2cu] Fix optimization
...
Previous one was wrong.
2023-02-20 13:15:22 -07:00
Behdad Esfahbod
bf1ed91bde
[qu2cu] Adjust optimization
2023-02-20 13:08:14 -07:00
Behdad Esfahbod
e3d8472187
[qu2cu] Minor save a variable
2023-02-20 13:05:52 -07:00
Behdad Esfahbod
a7c9de3f50
[qu2cu] Black
2023-02-20 12:32:28 -07:00
Behdad Esfahbod
caa0c81b73
[qu2cu] Better initial condition
2023-02-20 12:25:37 -07:00
Behdad Esfahbod
94ee47c6e4
[qu2cu] Add a test and fix a bug
2023-02-20 12:22:16 -07:00
Behdad Esfahbod
41732b5904
[qu2cu] Use math.isclose
2023-02-20 12:02:09 -07:00
Behdad Esfahbod
f87a897c7f
Merge pull request #2993 from fonttools/qu2cu
...
qu2cu
2023-02-20 11:04:48 -07:00
Behdad Esfahbod
789f45d4ee
[qu2cu] Improve docs
2023-02-20 10:41:13 -07:00
Behdad Esfahbod
90a2a80524
Revert "Revert "[qu2cu] Add an optimization""
...
This reverts commit eec3dca58a762cddb8f4315e2c8591ca4aecf7d4.
The optimization is correct now.
It brings down the Cythonized benchmark from 1400us to 1100us.
2023-02-20 10:31:23 -07:00
Behdad Esfahbod
68c735aa76
[qu2cu] Fix optimization
...
4 wouldn't have caused problem really but 3 is correct.
2023-02-20 10:29:48 -07:00
Behdad Esfahbod
51ed6c151f
[qu2cu] More annotation
2023-02-20 10:25:28 -07:00
Behdad Esfahbod
95692c29df
[qu2cu] Tweak annotation again
2023-02-20 10:21:12 -07:00
Behdad Esfahbod
eec3dca58a
Revert "[qu2cu] Add an optimization"
...
This reverts commit 97caa108c871522058a159a46342cedbe61a4650.
This was wrong, and made the test fail indeed. I'll think to see
if I can come up with a proper one.
2023-02-20 10:19:50 -07:00
Behdad Esfahbod
702265a760
[qu2cu] Fixup annotation
2023-02-20 10:19:21 -07:00
Behdad Esfahbod
6028fee260
[qu2cu] Rename tolerance to max_err
...
To match cu2qu.
2023-02-20 10:16:34 -07:00
Behdad Esfahbod
dd080d473a
[qu2cu] Improve docs
2023-02-20 10:15:50 -07:00
Behdad Esfahbod
97caa108c8
[qu2cu] Add an optimization
2023-02-20 10:08:33 -07:00
Behdad Esfahbod
34a3f90859
[qu2cu] Typo
2023-02-20 10:07:31 -07:00
Behdad Esfahbod
d0896ac296
[qu2cu] Simplify API
...
Drop the one that was special-case of the other.
2023-02-20 10:03:30 -07:00
Behdad Esfahbod
f58a17d6e9
[qu2cu] Document new API
2023-02-20 09:50:52 -07:00