diff options
Diffstat (limited to 'src/animation.c')
-rw-r--r-- | src/animation.c | 34 |
1 files changed, 34 insertions, 0 deletions
diff --git a/src/animation.c b/src/animation.c new file mode 100644 index 0000000..15093d3 --- /dev/null +++ b/src/animation.c @@ -0,0 +1,34 @@ +/* + * animation.c + * + * Created by buzzert <buzzert@buzzert.net> 2019-01-20 + */ + +#include "animation.h" +#include <stdlib.h> + +anim_time_interval_t anim_now() +{ + struct timespec ts; + clock_gettime(CLOCK_MONOTONIC_RAW, &ts); + + long ms = (ts.tv_sec * 1000) + (ts.tv_nsec / 1000000); + return (ms / 1000.0); +} + +/* + * Easing functions + */ + +double anim_qubic_ease_out(double p) +{ + double f = (p - 1.0); + return (f * f * f) + 1; +} + +double anim_quad_ease_out(double p) +{ + return -(p * (p - 2.0)); +} + + |