28 AView* mView =
nullptr;
30 float mCurrentTheta = 0;
33 bool mIsPlaying =
true;
34 bool mIsRepeating =
false;
36 std::chrono::milliseconds mLastFrameTime = std::chrono::milliseconds(0);
49 virtual void doPostRender(
AView* view,
float theta,
IRenderer& render) {};
51 void translateToCenter(IRenderer& render);
52 void translateToCorner(IRenderer& render);
54 static void translateToCenter(AView* view, IRenderer& render);
55 static void translateToCorner(AView* view, IRenderer& render);
59 void setCurve(
const std::function<
float(
float)>& curve) {
63 void animate(AView* view, IRenderer& render);
64 void postRender(AView* view, IRenderer& render);
67 void setDuration(
float period) {
71 void setRepeating(
bool repeating) {
72 mIsRepeating = repeating;
75 [[nodiscard]]
const AView* getView()
const {
79 void setView(AView* view) {
83 static _<AAnimator> combine(
const AVector<_<AAnimator>>& animators);
virtual void doAnimation(AView *view, float theta, IRenderer &render)
Does the animation (sets matrix, colors, etc...)
Definition AAnimator.h:47