#ifndef F_INTERPOLATE #define F_INTERPOLATE #include "FrameCallback.h" #include "../FrameRender/P_Square.h" #include "../FrameRender/P_Circle.h" #include "../FrameRender/P_Checker.h" #include "../FrameRender/P_Image.h" #include "../FrameRender/P_LineSegment.h" #include "../FrameRender/P_TransformCenter.h" #include "../FrameRender/P_TransformRotate.h" typedef void (*f_interpolate)(void* value, const void* start, const void* end, double progress); typedef struct Interpolate { f_interpolate interpolate; void* value; const void* startValue; const void* endValue; } Interpolate; FrameCallback* Interpolate_setup(Interpolate obj); void Interpolate_Square(Square* value, const Square* start, const Square* end, double progress); void Interpolate_Circle(Circle* value, const Circle* start, const Circle* end, double progress); void Interpolate_Checker(Checker* value, const Checker* start, const Checker* end, double progress); void Interpolate_Image(Image* value, const Image* start, const Image* end, double progress); void Interpolate_LineSegment(LineSegment* value, const LineSegment* start, const LineSegment* end, double progress); void Interpolate_TransformCenter(TransformCenter* value, const TransformCenter* start, const TransformCenter* end, double progress); void Interpolate_TransformRotate(TransformRotate* value, const TransformRotate* start, const TransformRotate* end, double progress); #endif /* F_INTERPOLATE */