/// <summary> /// Tweens to the specified value. /// </summary> /// <param name="target">The target.</param> /// <param name="speed">The speed.</param> /// <param name="type">The type.</param> /// <param name="replace">if set to <c>true</c> [replace].</param> internal void TweenTo(double target, double speed, TweenTypes type, bool replace) { target = Math.Max(MinAmount, Math.Min(MaxAmount, target)); var t = TweenData.Setup(target, speed, type); if (replace) { Tween.Clear(); } Tween.Add(t); }
/// <summary> /// Tweens to the specified value. /// </summary> /// <param name="target">The target.</param> /// <param name="time">The time.</param> /// <param name="type">The type.</param> /// <param name="replace">if set to <c>true</c> [replace].</param> internal void TweenTo(double target, long time, TweenTypes type, bool replace) { target = Math.Max(this.MinAmount, Math.Min(this.MaxAmount, target)); var t = TweenData.Setup(target, time, type); if (replace) { this.Tween.Clear(); } this.Tween.Add(t); }
public static float Interpolate(TweenTypes tween, float v0, float v1, float t) { switch (tween) { case TweenTypes.Linear: return(Linear(v0, v1, t)); case TweenTypes.Lerp: return(Lerp(v0, v1, t)); case TweenTypes.SmoothStep: return(SmoothStep(v0, v1, t)); case TweenTypes.Spring: return(spring(v0, v1, t)); case TweenTypes.easeInQuad: return(easeInQuad(v0, v1, t)); case TweenTypes.easeOutQuad: return(easeOutQuad(v0, v1, t)); case TweenTypes.easeInOutQuad: return(easeInOutQuad(v0, v1, t)); case TweenTypes.easeInCubic: return(easeInCubic(v0, v1, t)); case TweenTypes.easeOutCubic: return(easeOutCubic(v0, v1, t)); case TweenTypes.easeInQuart: return(easeInQuart(v0, v1, t)); case TweenTypes.easeOutQuart: return(easeOutQuart(v0, v1, t)); case TweenTypes.easeInSine: return(easeInSine(v0, v1, t)); case TweenTypes.easeOutSine: return(easeOutSine(v0, v1, t)); case TweenTypes.easeInOutSine: return(easeInOutSine(v0, v1, t)); case TweenTypes.easeInExpo: return(easeInExpo(v0, v1, t)); case TweenTypes.easeOutExpo: return(easeOutExpo(v0, v1, t)); case TweenTypes.easeInOutExpo: return(easeInOutExpo(v0, v1, t)); case TweenTypes.easeInCirc: return(easeInCirc(v0, v1, t)); case TweenTypes.easeOutCirc: return(easeOutCirc(v0, v1, t)); case TweenTypes.easeInOutCirc: return(easeInOutCirc(v0, v1, t)); case TweenTypes.easeInBounce: return(easeInBounce(v0, v1, t)); case TweenTypes.easeOutBounce: return(easeOutBounce(v0, v1, t)); case TweenTypes.easeInBack: return(easeInBack(v0, v1, t)); case TweenTypes.easeOutBack: return(easeOutBack(v0, v1, t)); case TweenTypes.punch: return(punch(v0, v1, t)); case TweenTypes.EaseInOutElastic: return(EaseInOutElastic(v0, v1, t)); case TweenTypes.EaseInElastic: return(EaseInElastic(v0, v1, t)); case TweenTypes.EaseOutElastic: return(EaseOutElastic(v0, v1, t)); } throw new System.Exception("Not implemneted : " + tween); }
public static float Tween(float start, float end, float val, TweenTypes type) { switch (type) { case TweenTypes.notUsed: Debug.LogError("Attempted to use tween type without having selected a tween type."); return(-1); case TweenTypes.linear: return(linear(start, end, val)); case TweenTypes.easeOutQuad: return(easeOutQuad(start, end, val)); case TweenTypes.easeInQuad: return(easeInQuad(start, end, val)); case TweenTypes.easeInOutQuad: return(easeInOutQuad(start, end, val)); case TweenTypes.easeInQuart: return(easeInQuart(start, end, val)); case TweenTypes.easeOutQuart: return(easeOutQuart(start, end, val)); case TweenTypes.easeInOutQuart: return(easeInOutQuart(start, end, val)); case TweenTypes.easeInQuint: return(easeInQuint(start, end, val)); case TweenTypes.easeOutQuint: return(easeOutQuint(start, end, val)); case TweenTypes.easeInOutQuint: return(easeInOutQuint(start, end, val)); case TweenTypes.easeInSine: return(easeInSine(start, end, val)); case TweenTypes.easeOutSine: return(easeOutSine(start, end, val)); case TweenTypes.easeInOutSine: return(easeInOutSine(start, end, val)); case TweenTypes.easeInExpo: return(easeInExpo(start, end, val)); case TweenTypes.easeOutExpo: return(easeOutExpo(start, end, val)); case TweenTypes.easeInOutExpo: return(easeInOutExpo(start, end, val)); case TweenTypes.easeInCirc: return(easeInCirc(start, end, val)); case TweenTypes.easeOutCirc: return(easeOutCirc(start, end, val)); case TweenTypes.easeInOutCirc: return(easeInOutCirc(start, end, val)); case TweenTypes.easeInBounce: return(easeInBounce(start, end, val)); case TweenTypes.easeOutBounce: return(easeOutBounce(start, end, val)); case TweenTypes.easeInOutBounce: return(easeInOutBounce(start, end, val)); case TweenTypes.easeInBack: return(easeInBack(start, end, val)); case TweenTypes.easeOutBack: return(easeOutBack(start, end, val)); case TweenTypes.easeInOutBack: return(easeInOutBack(start, end, val)); case TweenTypes.easeInElastic: return(easeInElastic(start, end, val)); case TweenTypes.easeOutElastic: return(easeOutElastic(start, end, val)); case TweenTypes.easeInOutElastic: return(easeInOutElastic(start, end, val)); case TweenTypes.easeSpring: return(spring(start, end, val)); default: Debug.LogError("Selected tween type not found. Try anoter one."); return(-1); } }