-
-
Notifications
You must be signed in to change notification settings - Fork 8
/
Copy pathBack.cs
43 lines (38 loc) · 1.19 KB
/
Back.cs
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
internal class Back : Ease
{
public static double EaseIn(double t, double b, double c, double d)
{
double num = 1.70158;
return c * (t /= d) * t * ((num + 1.0) * t - num) + b;
}
public static double EaseOut(double t, double b, double c, double d)
{
double num = 1.70158;
return c * ((t = t / d - 1.0) * t * ((num + 1.0) * t + num) + 1.0) + b;
}
public static double EaseInOut(double t, double b, double c, double d)
{
double num = 1.70158;
if ((t /= d / 2.0) < 1.0)
{
return c / 2.0 * (t * t * (((num *= 1.525) + 1.0) * t - num)) + b;
}
return c / 2.0 * ((t -= 2.0) * t * (((num *= 1.525) + 1.0) * t + num) + 2.0) + b;
}
public static double EaseIn(double t, double b, double c, double d, double s)
{
return c * (t /= d) * t * ((s + 1.0) * t - s) + b;
}
public static double EaseOut(double t, double b, double c, double d, double s)
{
return c * ((t = t / d - 1.0) * t * ((s + 1.0) * t + s) + 1.0) + b;
}
public static double EaseInOut(double t, double b, double c, double d, double s)
{
if ((t /= d / 2.0) < 1.0)
{
return c / 2.0 * (t * t * (((s *= 1.525) + 1.0) * t - s)) + b;
}
return c / 2.0 * ((t -= 2.0) * t * (((s *= 1.525) + 1.0) * t + s) + 2.0) + b;
}
}