diff options
| author | Eskil Abrahamsen Blomfeldt <eskil.abrahamsen-blomfeldt@qt.io> | 2024-09-17 13:17:54 +0200 |
|---|---|---|
| committer | Qt Cherry-pick Bot <cherrypick_bot@qt-project.org> | 2024-12-20 17:32:53 +0000 |
| commit | 130cd22d5ed03f96e85d5585f172eccee3a85ba7 (patch) | |
| tree | 06903d9d8393ffc80c7cd961fbdf39b43511ba49 /tools | |
| parent | 8d41cbe533a71bbdf0e7515af060e3909099b3f5 (diff) | |
Transform animations for VectorImage
This works by first creating a transform object per animated
property we have in SVG. Then it creates a set of key frames
based on these. All key frames will touch all animations, so
that they can also control activating and deactivating an
animation, freezing the end result of one, etc. The frames
we generate are based on the end points of animations as well
as right after (and sometimes right before) the animation to
record the state when it is inactive.
If any of the animations have infinite repeats, we create a
set of key frames for the finite part first and then the
infinite loop, so that these are separated into two different
animations in QML.
At each key frame we check all animations to see if they
affect their corresponding transform at this time. If they
are inactive, the transform will be set to a default value.
But if they are active (either running or frozen), we
query the interpolated value from the animator to get the
value at the specific time.
Fixes: QTBUG-127590
Change-Id: I0102cefb3713a0c36661fb3da008b25b19a80427
Reviewed-by: Hatem ElKharashy <hatem.elkharashy@qt.io>
(cherry picked from commit cccea98f6fad507f38de4fa862bf01f4a71cc534)
Reviewed-by: Qt Cherry-pick Bot <cherrypick_bot@qt-project.org>
Diffstat (limited to 'tools')
| -rw-r--r-- | tools/svgtoqml/CMakeLists.txt | 1 |
1 files changed, 1 insertions, 0 deletions
diff --git a/tools/svgtoqml/CMakeLists.txt b/tools/svgtoqml/CMakeLists.txt index fd6c91e7ea..277a0a587d 100644 --- a/tools/svgtoqml/CMakeLists.txt +++ b/tools/svgtoqml/CMakeLists.txt @@ -14,6 +14,7 @@ qt_internal_add_tool(${target_name} LIBRARIES Qt::Core Qt::Gui + Qt::GuiPrivate Qt::Qml Qt::Quick Qt::QuickVectorImageGeneratorPrivate |
