diff options
Diffstat (limited to 'java/api/src/aurelienribon/tweenengine/equations/Quart.java')
-rwxr-xr-x | java/api/src/aurelienribon/tweenengine/equations/Quart.java | 47 |
1 files changed, 47 insertions, 0 deletions
diff --git a/java/api/src/aurelienribon/tweenengine/equations/Quart.java b/java/api/src/aurelienribon/tweenengine/equations/Quart.java new file mode 100755 index 0000000..826eebb --- /dev/null +++ b/java/api/src/aurelienribon/tweenengine/equations/Quart.java @@ -0,0 +1,47 @@ +package aurelienribon.tweenengine.equations; + +import aurelienribon.tweenengine.TweenEquation; + +/** + * Easing equation based on Robert Penner's work: + * http://robertpenner.com/easing/ + * @author Aurelien Ribon | http://www.aurelienribon.com/ + */ +public abstract class Quart extends TweenEquation { + public static final Quart IN = new Quart() { + @Override + public final float compute(float t) { + return t*t*t*t; + } + + @Override + public String toString() { + return "Quart.IN"; + } + }; + + public static final Quart OUT = new Quart() { + @Override + public final float compute(float t) { + return -((t-=1)*t*t*t - 1); + } + + @Override + public String toString() { + return "Quart.OUT"; + } + }; + + public static final Quart INOUT = new Quart() { + @Override + public final float compute(float t) { + if ((t*=2) < 1) return 0.5f*t*t*t*t; + return -0.5f * ((t-=2)*t*t*t - 2); + } + + @Override + public String toString() { + return "Quart.INOUT"; + } + }; +}
\ No newline at end of file |