summaryrefslogtreecommitdiffstats
path: root/thirdparty/thorvg/src/renderer/tvgRender.cpp
diff options
context:
space:
mode:
Diffstat (limited to 'thirdparty/thorvg/src/renderer/tvgRender.cpp')
-rw-r--r--thirdparty/thorvg/src/renderer/tvgRender.cpp27
1 files changed, 23 insertions, 4 deletions
diff --git a/thirdparty/thorvg/src/renderer/tvgRender.cpp b/thirdparty/thorvg/src/renderer/tvgRender.cpp
index 9c779f7c00..82145b9aa4 100644
--- a/thirdparty/thorvg/src/renderer/tvgRender.cpp
+++ b/thirdparty/thorvg/src/renderer/tvgRender.cpp
@@ -32,6 +32,20 @@
/* External Class Implementation */
/************************************************************************/
+uint32_t RenderMethod::ref()
+{
+ ScopedLock lock(key);
+ return (++refCnt);
+}
+
+
+uint32_t RenderMethod::unref()
+{
+ ScopedLock lock(key);
+ return (--refCnt);
+}
+
+
void RenderTransform::override(const Matrix& m)
{
this->m = m;
@@ -43,13 +57,18 @@ void RenderTransform::update()
{
if (overriding) return;
- mathIdentity(&m);
+ m.e11 = 1.0f;
+ m.e12 = 0.0f;
- mathScale(&m, scale, scale);
+ m.e21 = 0.0f;
+ m.e22 = 1.0f;
- mathRotate(&m, degree);
+ m.e31 = 0.0f;
+ m.e32 = 0.0f;
+ m.e33 = 1.0f;
- mathTranslate(&m, x, y);
+ mathScale(&m, scale, scale);
+ mathRotate(&m, degree);
}