Hermet Park
036ae3c2af
renderer: code refactoring
...
Replaced the transformation with
a strong associated data field.
This helps to reduce the binary size (-1k).
2024-07-29 23:27:19 +09:00
Hermet Park
c4d89d0983
common: code refactoring
...
Trimming the transform data pass,
from RenderTransform to Matrix.
No logical changes.
2024-07-29 12:16:58 +09:00
Hermet Park
69b1fb8208
common/math: code refactoring
...
- migrate tvgLine to tvgMath
- associate line functions with classes.
2024-07-10 00:21:02 +09:00
Hermet Park
44955b704e
common/math: code refactoring
...
Replaced the prefix "math" with "tvg" namespace.
2024-07-10 00:21:02 +09:00
Hermet Park
79cf7ca5af
common/math: introduced custom atan2()
...
the custom atan2 algorithm by Remez.
see: https://en.wikipedia.org/wiki/Remez_algorithm
This improved the Lottie example by ~2ms.
Total atan2 performance time was reduced by 43%
2024-07-09 23:50:37 +09:00
Hermet Park
189b1bf4e7
common: code refactoring
...
replaced min/max with the standard library
2024-07-01 22:10:46 +09:00
Hermet Park
1b9e6ef5a2
common/math: added minor math functions.
2024-06-10 11:18:53 +09:00
Hermet Park
a1818cf62b
common: code refactoring
...
Replace the math functions with operator overloading.
This should potentially reduce the code size.
2024-05-27 10:48:46 +09:00
Hermet Park
975907731d
math: introduced a custom floating epsilon
...
Rather than aiming for extremely high accuracy,
a compromise can achieve with better performance.
This modification helps prevent unnecessary image rotation.
issue: https://github.com/thorvg/thorvg/issues/2265
2024-05-24 10:45:24 +09:00
Mira Grudzinska
3077d983e6
lottie: handle roundness in path
...
Implemented rounding of corners between
bezier curves that are straight lines.
@Issue: https://github.com/thorvg/thorvg/issues/2230
2024-05-16 12:51:16 +09:00
Mira Grudzinska
638f42f19e
lottie: support rounded stars
...
Implementation of the roundness property
for a polystar. Only the corners that were
not subject to rounding by the inner or
outer roundness parameters are affected.
@Issue: https://github.com/thorvg/thorvg/issues/2230
2024-05-16 12:51:11 +09:00
Hermet Park
be7437e0a3
common: code refactoring
...
introduced mathDeg2Rad() and mathRad2Deg() for a common implementation.
2024-04-15 20:35:33 +09:00
vtorri
04977c43f1
[common] code clean up
...
use MATH_PI and MATH_PI2 instead of M_PI and M_PI_2
2024-03-22 23:48:25 +09:00
Hermet Park
103252642e
lottie: code refactoring.
...
Maintains compact lines of code and functions without altering logic,
consistently prioritizing simplicity in software complexity metrics.
2024-03-03 14:04:34 +09:00
Jinny You
2c6c8d3b21
updated copyright date ( #1866 )
2023-12-28 10:43:25 +09:00
Hermet Park
3c4e434b39
loader/ttf: introduce a new sfnt(scalable font) loader.
...
ttf is an industry standard format that is the most widely used
in the products. Now thorvg supports the basic features of
the font to supplement the text drawing.
The implementation is followed the ttf spec,
the covered features are:
- horizontal layouting with kerning.
- utf8 -> utf32 converted glyph drawing.
To use the feature, please enable ttf loader:
$meson -Dloaders="ttf_beta, ..."
@Issue: https://github.com/thorvg/thorvg/issues/969
2023-12-25 12:40:12 +09:00
Hermet Park
2257211852
sw_engine: fix a regression bug by 0dafe9ff64
...
rectified the stroke scale factor acquisition.
2023-09-12 11:44:27 +09:00
Hermet Park
64a444aeb6
loader/lottie: support focal property in the radial gradient
2023-09-05 10:29:12 +09:00
Hermet Park
ad9d9d0ecd
loader/lottie: support trimpath feature
2023-09-01 13:16:18 +09:00
Hermet Park
24711e485c
infra: renames the source folders
...
lib -> renderer
bin -> tools
utils -> common
2023-08-28 13:11:24 +09:00