18f2ef8f2d70edcfa159195e2efd23f95ff1b5789Jorim Jaggipackage aurelienribon.tweenengine; 28f2ef8f2d70edcfa159195e2efd23f95ff1b5789Jorim Jaggi 38f2ef8f2d70edcfa159195e2efd23f95ff1b5789Jorim Jaggiimport aurelienribon.tweenengine.equations.Back; 48f2ef8f2d70edcfa159195e2efd23f95ff1b5789Jorim Jaggiimport aurelienribon.tweenengine.equations.Bounce; 58f2ef8f2d70edcfa159195e2efd23f95ff1b5789Jorim Jaggiimport aurelienribon.tweenengine.equations.Circ; 68f2ef8f2d70edcfa159195e2efd23f95ff1b5789Jorim Jaggiimport aurelienribon.tweenengine.equations.Cubic; 78f2ef8f2d70edcfa159195e2efd23f95ff1b5789Jorim Jaggiimport aurelienribon.tweenengine.equations.Elastic; 88f2ef8f2d70edcfa159195e2efd23f95ff1b5789Jorim Jaggiimport aurelienribon.tweenengine.equations.Expo; 98f2ef8f2d70edcfa159195e2efd23f95ff1b5789Jorim Jaggiimport aurelienribon.tweenengine.equations.Linear; 108f2ef8f2d70edcfa159195e2efd23f95ff1b5789Jorim Jaggiimport aurelienribon.tweenengine.equations.Quad; 118f2ef8f2d70edcfa159195e2efd23f95ff1b5789Jorim Jaggiimport aurelienribon.tweenengine.equations.Quart; 128f2ef8f2d70edcfa159195e2efd23f95ff1b5789Jorim Jaggiimport aurelienribon.tweenengine.equations.Quint; 138f2ef8f2d70edcfa159195e2efd23f95ff1b5789Jorim Jaggiimport aurelienribon.tweenengine.equations.Sine; 148f2ef8f2d70edcfa159195e2efd23f95ff1b5789Jorim Jaggi 158f2ef8f2d70edcfa159195e2efd23f95ff1b5789Jorim Jaggi/** 168f2ef8f2d70edcfa159195e2efd23f95ff1b5789Jorim Jaggi * Collection of miscellaneous utilities. 178f2ef8f2d70edcfa159195e2efd23f95ff1b5789Jorim Jaggi * 188f2ef8f2d70edcfa159195e2efd23f95ff1b5789Jorim Jaggi * @author Aurelien Ribon | http://www.aurelienribon.com/ 198f2ef8f2d70edcfa159195e2efd23f95ff1b5789Jorim Jaggi */ 208f2ef8f2d70edcfa159195e2efd23f95ff1b5789Jorim Jaggipublic class TweenUtils { 218f2ef8f2d70edcfa159195e2efd23f95ff1b5789Jorim Jaggi private static TweenEquation[] easings; 228f2ef8f2d70edcfa159195e2efd23f95ff1b5789Jorim Jaggi 238f2ef8f2d70edcfa159195e2efd23f95ff1b5789Jorim Jaggi /** 248f2ef8f2d70edcfa159195e2efd23f95ff1b5789Jorim Jaggi * Takes an easing name and gives you the corresponding TweenEquation. 258f2ef8f2d70edcfa159195e2efd23f95ff1b5789Jorim Jaggi * You probably won't need this, but tools will love that. 268f2ef8f2d70edcfa159195e2efd23f95ff1b5789Jorim Jaggi * 278f2ef8f2d70edcfa159195e2efd23f95ff1b5789Jorim Jaggi * @param easingName The name of an easing, like "Quad.INOUT". 288f2ef8f2d70edcfa159195e2efd23f95ff1b5789Jorim Jaggi * @return The parsed equation, or null if there is no match. 298f2ef8f2d70edcfa159195e2efd23f95ff1b5789Jorim Jaggi */ 308f2ef8f2d70edcfa159195e2efd23f95ff1b5789Jorim Jaggi public static TweenEquation parseEasing(String easingName) { 318f2ef8f2d70edcfa159195e2efd23f95ff1b5789Jorim Jaggi if (easings == null) { 328f2ef8f2d70edcfa159195e2efd23f95ff1b5789Jorim Jaggi easings = new TweenEquation[] {Linear.INOUT, 338f2ef8f2d70edcfa159195e2efd23f95ff1b5789Jorim Jaggi Quad.IN, Quad.OUT, Quad.INOUT, 348f2ef8f2d70edcfa159195e2efd23f95ff1b5789Jorim Jaggi Cubic.IN, Cubic.OUT, Cubic.INOUT, 358f2ef8f2d70edcfa159195e2efd23f95ff1b5789Jorim Jaggi Quart.IN, Quart.OUT, Quart.INOUT, 368f2ef8f2d70edcfa159195e2efd23f95ff1b5789Jorim Jaggi Quint.IN, Quint.OUT, Quint.INOUT, 378f2ef8f2d70edcfa159195e2efd23f95ff1b5789Jorim Jaggi Circ.IN, Circ.OUT, Circ.INOUT, 388f2ef8f2d70edcfa159195e2efd23f95ff1b5789Jorim Jaggi Sine.IN, Sine.OUT, Sine.INOUT, 398f2ef8f2d70edcfa159195e2efd23f95ff1b5789Jorim Jaggi Expo.IN, Expo.OUT, Expo.INOUT, 408f2ef8f2d70edcfa159195e2efd23f95ff1b5789Jorim Jaggi Back.IN, Back.OUT, Back.INOUT, 418f2ef8f2d70edcfa159195e2efd23f95ff1b5789Jorim Jaggi Bounce.IN, Bounce.OUT, Bounce.INOUT, 428f2ef8f2d70edcfa159195e2efd23f95ff1b5789Jorim Jaggi Elastic.IN, Elastic.OUT, Elastic.INOUT 438f2ef8f2d70edcfa159195e2efd23f95ff1b5789Jorim Jaggi }; 448f2ef8f2d70edcfa159195e2efd23f95ff1b5789Jorim Jaggi } 458f2ef8f2d70edcfa159195e2efd23f95ff1b5789Jorim Jaggi 468f2ef8f2d70edcfa159195e2efd23f95ff1b5789Jorim Jaggi for (int i=0; i<easings.length; i++) { 478f2ef8f2d70edcfa159195e2efd23f95ff1b5789Jorim Jaggi if (easingName.equals(easings[i].toString())) 488f2ef8f2d70edcfa159195e2efd23f95ff1b5789Jorim Jaggi return easings[i]; 498f2ef8f2d70edcfa159195e2efd23f95ff1b5789Jorim Jaggi } 508f2ef8f2d70edcfa159195e2efd23f95ff1b5789Jorim Jaggi 518f2ef8f2d70edcfa159195e2efd23f95ff1b5789Jorim Jaggi return null; 528f2ef8f2d70edcfa159195e2efd23f95ff1b5789Jorim Jaggi } 538f2ef8f2d70edcfa159195e2efd23f95ff1b5789Jorim Jaggi} 54