22#include "cameraeasingtype.h"
28 explicit Camera(
QPointF translation, qreal rotation, qreal scaling);
29 explicit Camera(
QPointF translation, qreal rotation, qreal scaling, CameraEasingType type);
33 Camera* clone()
const override;
36 void resetTransform();
37 void updateViewTransform();
38 void assign(
const Camera& rhs);
40 void translate(qreal dx, qreal dy);
42 QPointF translation()
const {
return mTranslate; }
44 void rotate(qreal degree);
45 qreal rotation()
const {
return mRotate; }
47 void scale(qreal scaleValue);
48 qreal scaling()
const {
return mScale; }
50 bool compare(
const Camera& rhs)
const;
52 void setEasingType(CameraEasingType type);
53 CameraEasingType getEasingType()
const {
return mEasingType; }
55 void setPathControlPoint(
QPointF point);
56 QPointF getPathControlPoint()
const {
return mPathControlPoint; }
58 void setPathControlPointMoved(
bool pathMoved);
59 bool pathControlPointMoved()
const {
return mPathControlPointMoved; }
66 bool mNeedUpdateView =
true;
68 CameraEasingType mEasingType = CameraEasingType::LINEAR;
70 bool mPathControlPointMoved =
false;