41 bool bIsTextAnimation)
43 mbIsTextAnimation(bIsTextAnimation)
55 if(GroupPrimitive2D::operator==(rPrimitive))
126 const std::vector< basegfx::B2DHomMatrix >& rmMatrixStack,
132 const sal_uInt32
nCount(rmMatrixStack.size());
135 for(
const auto&
a : rmMatrixStack)
153 else if(fState > 1.0)
158 const double fIndex(fState *
static_cast<double>(nSize - 1));
159 const sal_uInt32 nIndA(sal_uInt32(floor(fIndex)));
160 const double fOffset(fIndex -
static_cast<double>(nIndA));
162 std::vector< basegfx::utils::B2DHomMatrixBufferedDecompose >::const_iterator aMatA(
maMatrixStack.begin() + nIndA);
167 aTargetTransform = aMatA->getB2DHomMatrix();
172 const sal_uInt32 nIndB((nIndA + 1) % nSize);
173 std::vector< basegfx::utils::B2DHomMatrixBufferedDecompose >::const_iterator aMatB(
maMatrixStack.begin() + nIndB);
178 const double fRotate(((aMatB->getRotate() - aMatA->getRotate()) * fOffset) + aMatA->getRotate());
179 const double fShearX(((aMatB->getShearX() - aMatA->getShearX()) * fOffset) + aMatA->getShearX());
183 aScale, fShearX, fRotate, aTranslate);
188 rVisitor.
visit(xRef);
virtual std::unique_ptr< AnimationEntry > clone() const =0
virtual void get2DDecomposition(Primitive2DDecompositionVisitor &rVisitor, const geometry::ViewInformation2D &rViewInformation) const override
create local decomposition
virtual sal_uInt32 getPrimitive2DID() const override
provide unique ID
AnimatedBlinkPrimitive2D(const animation::AnimationEntry &rAnimationEntry, Primitive2DContainer &&aChildren)
constructor
virtual sal_uInt32 getPrimitive2DID() const override
provide unique ID
AnimatedInterpolatePrimitive2D(const std::vector< basegfx::B2DHomMatrix > &rmMatrixStack, const animation::AnimationEntry &rAnimationEntry, Primitive2DContainer &&aChildren)
constructor
virtual void get2DDecomposition(Primitive2DDecompositionVisitor &rVisitor, const geometry::ViewInformation2D &rViewInformation) const override
create local decomposition
std::vector< basegfx::utils::B2DHomMatrixBufferedDecompose > maMatrixStack
the transformations
AnimatedSwitchPrimitive2D class.
const animation::AnimationEntry & getAnimationEntry() const
data read access
void setAnimationEntry(const animation::AnimationEntry &rNew)
write access right for classes deriving from this who want to do special things (e....
std::unique_ptr< animation::AnimationEntry > mpAnimationEntry
The animation definition which allows translation of a point in time to an animation state [0....
AnimatedSwitchPrimitive2D(const animation::AnimationEntry &rAnimationEntry, Primitive2DContainer &&aChildren, bool bIsTextAnimation)
constructor
virtual void get2DDecomposition(Primitive2DDecompositionVisitor &rVisitor, const geometry::ViewInformation2D &rViewInformation) const override
Override getDecomposition() here since the decompose depends on the point in time,...
virtual sal_uInt32 getPrimitive2DID() const override
provide unique ID
virtual ~AnimatedSwitchPrimitive2D() override
destructor - needed due to mpAnimationEntry
virtual bool operator==(const BasePrimitive2D &rPrimitive) const override
compare operator
const Primitive2DContainer & getChildren() const
data read access
virtual void visit(const Primitive2DReference &)=0
#define PRIMITIVE2D_ID_ANIMATEDINTERPOLATEPRIMITIVE2D
#define PRIMITIVE2D_ID_ANIMATEDSWITCHPRIMITIVE2D
#define PRIMITIVE2D_ID_ANIMATEDBLINKPRIMITIVE2D
B2DHomMatrix createScaleShearXRotateTranslateB2DHomMatrix(double fScaleX, double fScaleY, double fShearX, double fRadiant, double fTranslateX, double fTranslateY)
B2DTuple interpolate(const B2DTuple &rOld1, const B2DTuple &rOld2, double t)
B2IRange fround(const B2DRange &rRange)