From: subhransu mohanty Date: Thu, 26 Sep 2019 01:16:10 +0000 (+0900) Subject: vector: refactor pathmesure to keep a scratch path object for memory efficieny X-Git-Tag: submit/tizen/20190926.223052~1 X-Git-Url: http://review.tizen.org/git/?a=commitdiff_plain;h=f6bf70eafad7e42f74ac3d77a51663872c591818;p=platform%2Fcore%2Fuifw%2Flottie-player.git vector: refactor pathmesure to keep a scratch path object for memory efficieny --- diff --git a/src/vector/vpathmesure.cpp b/src/vector/vpathmesure.cpp index f0f305b..929c2e7 100644 --- a/src/vector/vpathmesure.cpp +++ b/src/vector/vpathmesure.cpp @@ -46,7 +46,8 @@ VPath VPathMesure::trim(const VPath &path) std::numeric_limits::max(), // 2nd segment }; VDasher dasher(array, 4); - return dasher.dashed(path); + dasher.dashed(path, mScratchObject); + return mScratchObject; } else { float array[4] = { length * mEnd, (mStart - mEnd) * length, // 1st segment @@ -54,7 +55,8 @@ VPath VPathMesure::trim(const VPath &path) std::numeric_limits::max(), // 2nd segment }; VDasher dasher(array, 4); - return dasher.dashed(path); + dasher.dashed(path, mScratchObject); + return mScratchObject; } } diff --git a/src/vector/vpathmesure.h b/src/vector/vpathmesure.h index de3e824..2cb521b 100644 --- a/src/vector/vpathmesure.h +++ b/src/vector/vpathmesure.h @@ -25,12 +25,14 @@ V_BEGIN_NAMESPACE class VPathMesure { public: + void setRange(float start, float end) {mStart = start; mEnd = end;} void setStart(float start){mStart = start;} void setEnd(float end){mEnd = end;} VPath trim(const VPath &path); private: float mStart{0.0f}; float mEnd{1.0f}; + VPath mScratchObject; }; V_END_NAMESPACE