diff options
author | Kwanghyo Park <kwanghyo.park@qt.io> | 2022-06-23 17:19:25 +0300 |
---|---|---|
committer | Qt Cherry-pick Bot <cherrypick_bot@qt-project.org> | 2022-12-14 08:28:48 +0000 |
commit | eb96127e15b81f929757fb4d75e114ce5ae78ba0 (patch) | |
tree | aa5ff19831f1a6607a21310f79d28f7b362302e3 | |
parent | 146defd6a02f886144347794f458800607aab9a4 (diff) |
Fix bugs on ellipse and fill shape
The direction of ellipse is not reversed by default.
The fill shape now applies the opacity value to color.
Task-number: QTBUG-102550
Change-Id: I93ceb17c85b10af5b1255db8d8803c355cd662ea
Reviewed-by: Tomi Korpipää <tomi.korpipaa@qt.io>
Reviewed-by: Kwanghyo Park <kwanghyo.park@qt.io>
Reviewed-by: Laszlo Agocs <laszlo.agocs@qt.io>
(cherry picked from commit 8b7128b925d376cc73c3ba9d904c03448aaffd03)
Reviewed-by: Qt Cherry-pick Bot <cherrypick_bot@qt-project.org>
-rw-r--r-- | src/bodymovin/bmellipse.cpp | 2 | ||||
-rw-r--r-- | src/imports/rasterrenderer/lottierasterrenderer.cpp | 5 |
2 files changed, 5 insertions, 2 deletions
diff --git a/src/bodymovin/bmellipse.cpp b/src/bodymovin/bmellipse.cpp index a52d791..9c25022 100644 --- a/src/bodymovin/bmellipse.cpp +++ b/src/bodymovin/bmellipse.cpp @@ -90,7 +90,7 @@ void BMEllipse::updateProperties(int frame) m_path = QPainterPath(); m_path.arcMoveTo(QRectF(pos, m_size.value()), 90); - m_path.arcTo(QRectF(pos, m_size.value()), 90, -360); + m_path.arcTo(QRectF(pos, m_size.value()), 90, 360); if (m_direction) m_path = m_path.toReversed(); diff --git a/src/imports/rasterrenderer/lottierasterrenderer.cpp b/src/imports/rasterrenderer/lottierasterrenderer.cpp index 35db7df..8fcbd7c 100644 --- a/src/imports/rasterrenderer/lottierasterrenderer.cpp +++ b/src/imports/rasterrenderer/lottierasterrenderer.cpp @@ -204,7 +204,10 @@ void LottieRasterRenderer::render(const BMFill &fill) if (m_fillEffect) return; - m_painter->setBrush(fill.color()); + float alpha = fill.color().alphaF() * fill.opacity() / 100.0f; + QColor color = fill.color(); + color.setAlphaF(alpha); + m_painter->setBrush(color); } void LottieRasterRenderer::render(const BMGFill &gradient) |