/* * Easings.h * * Created: Sun Jun 22 2025 15:51:51 * Author Chris */ #ifndef EASINGS_H_ #define EASINGS_H_ // ============================================================================================ // Includes #include #include #include #include // ============================================================================================ // Defines // ============================================================================================ // Datatypes typedef enum { LINEAR, IN_SINE, IN_QUAD, IN_CUBIC, IN_QUART, IN_QUINT, IN_EXPO, IN_CIRC, OUT_SINE, OUT_QUAD, OUT_CUBIC, OUT_QUART, OUT_QUINT, OUT_EXPO, OUT_CIRC, INOUT_SINE, INOUT_QUAD, INOUT_CUBIC, INOUT_QUART, INOUT_QUINT, INOUT_EXPO, INOUT_CIRC } Easing; // ============================================================================================ // Function Declarations float Linear(float x); float Ease_In_Sine(float x); float Ease_Out_Sine(float x); float Ease_InOut_Sine(float x); float Ease_In_Quad(float x); float Ease_Out_Quad(float x); float Ease_InOut_Quad(float x); float Ease_In_Cubic(float x); float Ease_Out_Cubic(float x); float Ease_InOut_Cubic(float x); float Ease_In_Quart(float x); float Ease_Out_Quart(float x); float Ease_InOut_Quart(float x); float Ease_In_Quint(float x); float Ease_Out_Quint(float x); float Ease_InOut_Quint(float x); float Ease_In_Expo(float x); float Ease_Out_Expo(float x); float Ease_InOut_Expo(float x); float Ease_In_Circ(float x); float Ease_Out_Circ(float x); float Ease_InOut_Circ(float x); float ApplyEasing2(float ratio, float value1, float value2, Easing easing); float ApplyEasing1(float ratio, Easing easing); #endif /* EASINGS_H_ */