Blender  V2.93
BLI_easing.h
Go to the documentation of this file.
1 /*
2  * Redistribution and use in source and binary forms, with or without
3  * modification, are permitted provided that the following conditions are met:
4  *
5  * * Redistributions of source code must retain the above copyright
6  * notice, this list of conditions and the following disclaimer.
7  *
8  * * Redistributions in binary form must reproduce the above copyright
9  * notice, this list of conditions and the following disclaimer in the
10  * documentation and/or other materials provided with the distribution.
11  *
12  * * Neither the name of the author nor the names of contributors may be
13  * used to endorse or promote products derived from this software without
14  * specific prior written permission.
15  *
16  * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS"
17  * AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE
18  * IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE
19  * ARE DISCLAIMED. IN NO EVENT SHALL <COPYRIGHT HOLDER> BE LIABLE FOR ANY
20  * DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES
21  * (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES;
22  * LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND
23  * ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
24  * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF
25  * THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
26  *
27  * Copyright (c) 2001 Robert Penner
28  * All rights reserved.
29  */
30 
31 #pragma once
32 
37 #ifdef __cplusplus
38 extern "C" {
39 #endif
40 
42  float time, float begin, float change, float duration, float overshoot);
44  float time, float begin, float change, float duration, float overshoot);
46  float time, float begin, float change, float duration, float overshoot);
47 float BLI_easing_bounce_ease_out(float time, float begin, float change, float duration);
48 float BLI_easing_bounce_ease_in(float time, float begin, float change, float duration);
49 float BLI_easing_bounce_ease_in_out(float time, float begin, float change, float duration);
50 float BLI_easing_circ_ease_in(float time, float begin, float change, float duration);
51 float BLI_easing_circ_ease_out(float time, float begin, float change, float duration);
52 float BLI_easing_circ_ease_in_out(float time, float begin, float change, float duration);
53 float BLI_easing_cubic_ease_in(float time, float begin, float change, float duration);
54 float BLI_easing_cubic_ease_out(float time, float begin, float change, float duration);
55 float BLI_easing_cubic_ease_in_out(float time, float begin, float change, float duration);
57  float time, float begin, float change, float duration, float amplitude, float period);
59  float time, float begin, float change, float duration, float amplitude, float period);
61  float time, float begin, float change, float duration, float amplitude, float period);
62 float BLI_easing_expo_ease_in(float time, float begin, float change, float duration);
63 float BLI_easing_expo_ease_out(float time, float begin, float change, float duration);
64 float BLI_easing_expo_ease_in_out(float time, float begin, float change, float duration);
65 float BLI_easing_linear_ease(float time, float begin, float change, float duration);
66 float BLI_easing_quad_ease_in(float time, float begin, float change, float duration);
67 float BLI_easing_quad_ease_out(float time, float begin, float change, float duration);
68 float BLI_easing_quad_ease_in_out(float time, float begin, float change, float duration);
69 float BLI_easing_quart_ease_in(float time, float begin, float change, float duration);
70 float BLI_easing_quart_ease_out(float time, float begin, float change, float duration);
71 float BLI_easing_quart_ease_in_out(float time, float begin, float change, float duration);
72 float BLI_easing_quint_ease_in(float time, float begin, float change, float duration);
73 float BLI_easing_quint_ease_out(float time, float begin, float change, float duration);
74 float BLI_easing_quint_ease_in_out(float time, float begin, float change, float duration);
75 float BLI_easing_sine_ease_in(float time, float begin, float change, float duration);
76 float BLI_easing_sine_ease_out(float time, float begin, float change, float duration);
77 float BLI_easing_sine_ease_in_out(float time, float begin, float change, float duration);
78 
79 #ifdef __cplusplus
80 }
81 #endif
float BLI_easing_sine_ease_in(float time, float begin, float change, float duration)
Definition: easing.c:374
float BLI_easing_back_ease_out(float time, float begin, float change, float duration, float overshoot)
Definition: easing.c:51
float BLI_easing_linear_ease(float time, float begin, float change, float duration)
Definition: easing.c:308
float BLI_easing_bounce_ease_in_out(float time, float begin, float change, float duration)
Definition: easing.c:92
float BLI_easing_quint_ease_out(float time, float begin, float change, float duration)
Definition: easing.c:360
float BLI_easing_quart_ease_in_out(float time, float begin, float change, float duration)
Definition: easing.c:346
float BLI_easing_circ_ease_in_out(float time, float begin, float change, float duration)
Definition: easing.c:113
float BLI_easing_quart_ease_out(float time, float begin, float change, float duration)
Definition: easing.c:340
float BLI_easing_bounce_ease_in(float time, float begin, float change, float duration)
Definition: easing.c:87
float BLI_easing_circ_ease_in(float time, float begin, float change, float duration)
Definition: easing.c:101
float BLI_easing_expo_ease_in(float time, float begin, float change, float duration)
Definition: easing.c:281
float BLI_easing_expo_ease_out(float time, float begin, float change, float duration)
Definition: easing.c:289
float BLI_easing_elastic_ease_in(float time, float begin, float change, float duration, float amplitude, float period)
Definition: easing.c:172
float BLI_easing_quad_ease_in_out(float time, float begin, float change, float duration)
Definition: easing.c:325
float BLI_easing_elastic_ease_out(float time, float begin, float change, float duration, float amplitude, float period)
Definition: easing.c:205
float BLI_easing_cubic_ease_in(float time, float begin, float change, float duration)
Definition: easing.c:122
float BLI_easing_elastic_ease_in_out(float time, float begin, float change, float duration, float amplitude, float period)
Definition: easing.c:237
float BLI_easing_quint_ease_in(float time, float begin, float change, float duration)
Definition: easing.c:355
float BLI_easing_sine_ease_out(float time, float begin, float change, float duration)
Definition: easing.c:379
float BLI_easing_bounce_ease_out(float time, float begin, float change, float duration)
Definition: easing.c:69
float BLI_easing_quad_ease_in(float time, float begin, float change, float duration)
Definition: easing.c:313
float BLI_easing_quad_ease_out(float time, float begin, float change, float duration)
Definition: easing.c:319
float BLI_easing_circ_ease_out(float time, float begin, float change, float duration)
Definition: easing.c:107
float BLI_easing_cubic_ease_out(float time, float begin, float change, float duration)
Definition: easing.c:128
float BLI_easing_back_ease_in(float time, float begin, float change, float duration, float overshoot)
Definition: easing.c:44
float BLI_easing_quint_ease_in_out(float time, float begin, float change, float duration)
Definition: easing.c:365
float BLI_easing_expo_ease_in_out(float time, float begin, float change, float duration)
Definition: easing.c:297
float BLI_easing_quart_ease_in(float time, float begin, float change, float duration)
Definition: easing.c:334
float BLI_easing_back_ease_in_out(float time, float begin, float change, float duration, float overshoot)
Definition: easing.c:58
float BLI_easing_cubic_ease_in_out(float time, float begin, float change, float duration)
Definition: easing.c:134
float BLI_easing_sine_ease_in_out(float time, float begin, float change, float duration)
Definition: easing.c:384
double time