thorvg/src/renderer
Mira Grudzinska 30662afba7 renderer: improve radial gradient handling
This change ensures at the api level that if the focal
point lies outside the end circle, it is projected onto
the edge of the end circle.
Additionally, if the start circle does not fully fit
inside the end circle (after possible repositioning), its
radius is reduced accordingly.

The modification aligns with the SVG 1.1 standard (for fr = 0).
Cases with fr > 0 are not covered by the SVG 1.1, and edge
cases have been handled here to avoid numerical issues.

Note:
This update replaces previous behavior where gl handled
the SVG 2.0 standard.
2025-06-24 21:23:26 +09:00
..
gl_engine renderer: improve radial gradient handling 2025-06-24 21:23:26 +09:00
sw_engine renderer: improve radial gradient handling 2025-06-24 21:23:26 +09:00
wg_engine renderer: improve radial gradient handling 2025-06-24 21:23:26 +09:00
meson.build renderer: migrated TrimPath as the integrated rendering method 2025-02-25 15:38:03 +09:00
tvgAccessor.cpp updated copyright 2025-01-03 14:32:31 +09:00
tvgAnimation.cpp renderer: rectify the update flag once more 2025-06-18 15:49:47 +09:00
tvgAnimation.h renderer: introduced paint reference counting 2024-11-20 01:53:25 +09:00
tvgCanvas.cpp renderer: hotfix 2025-06-18 11:05:05 +09:00
tvgCanvas.h renderer: hotfix 2025-06-18 11:05:05 +09:00
tvgCommon.h api: revise engine initialization and termination 2025-04-23 15:46:49 +09:00
tvgFill.cpp renderer: revise the pImpl design with a better efficiency 2025-04-20 00:07:50 +09:00
tvgFill.h renderer: improve radial gradient handling 2025-06-24 21:23:26 +09:00
tvgFrameModule.h api: revised the animation segment specification 2025-01-22 13:03:48 +09:00
tvgGlCanvas.cpp renderer/engines: redesigned RenderRegion property layout 2025-05-28 11:41:52 +09:00
tvgInitializer.cpp api: revise engine initialization and termination 2025-04-23 15:46:49 +09:00
tvgIteratorAccessor.h updated copyright 2025-01-03 14:32:31 +09:00
tvgLoader.cpp ttf: ++thread safety 2025-03-25 17:02:58 +09:00
tvgLoader.h common: ++stability of the font cache 2025-03-06 19:00:06 +09:00
tvgLoadModule.h ttf: ++thread safety 2025-03-25 17:02:58 +09:00
tvgPaint.cpp renderer: clean up the base render flow 2025-06-16 18:00:30 +09:00
tvgPaint.h renderer: add partial rendering support 2025-06-23 16:04:48 +09:00
tvgPicture.cpp renderer: revise the pImpl design with a better efficiency 2025-04-20 00:07:50 +09:00
tvgPicture.h renderer: delegate the null data handling to engines 2025-06-17 15:54:44 +09:00
tvgRender.cpp infra: add the partial rendering build option 2025-06-23 16:04:48 +09:00
tvgRender.h infra: add the partial rendering build option 2025-06-23 16:04:48 +09:00
tvgSaveModule.h updated copyright 2025-01-03 14:32:31 +09:00
tvgSaver.cpp common: str refactoring 2025-03-06 12:18:24 +09:00
tvgScene.cpp renderer: revise the pImpl design with a better efficiency 2025-04-20 00:07:50 +09:00
tvgScene.h renderer: --compiler warning 2025-06-23 17:11:47 +09:00
tvgShape.cpp renderer: revise the pImpl design with a better efficiency 2025-04-20 00:07:50 +09:00
tvgShape.h api: handling values <= 0 in strokeDash() api 2025-06-24 21:02:29 +09:00
tvgSwCanvas.cpp renderer/engines: redesigned RenderRegion property layout 2025-05-28 11:41:52 +09:00
tvgTaskScheduler.cpp common: ++loader thread safety 2025-03-24 18:18:30 +09:00
tvgTaskScheduler.h common: ++loader thread safety 2025-03-24 18:18:30 +09:00
tvgText.cpp renderer: revise the pImpl design with a better efficiency 2025-04-20 00:07:50 +09:00
tvgText.h renderer: clean up the base render flow 2025-06-16 18:00:30 +09:00
tvgWgCanvas.cpp renderer/engines: redesigned RenderRegion property layout 2025-05-28 11:41:52 +09:00