public static float CalculateLerpValueClamp01(float lerpValue, Type easingType, bool isZeroToOne) { switch (easingType) { case Type.Linear: lerpValue = Linear.InOut(lerpValue); break; case Type.Quadratic: lerpValue = Quadratic.InOut(lerpValue); break; case Type.Cubic: lerpValue = Cubic.InOut(lerpValue); break; case Type.Quartic: lerpValue = Quartic.InOut(lerpValue); break; case Type.Quintic: lerpValue = Quintic.InOut(lerpValue); break; case Type.Sinusoidal: lerpValue = Sinusoidal.InOut(lerpValue); break; case Type.Exponential: lerpValue = Exponential.InOut(lerpValue); break; case Type.Circular: lerpValue = Circular.InOut(lerpValue); break; case Type.Elastic: lerpValue = Elastic.InOut(lerpValue); break; case Type.Back: lerpValue = Back.InOut(lerpValue); break; case Type.Bounce: lerpValue = Bounce.InOut(lerpValue); break; default: return(-1f); } lerpValue = ClampMinMax(0f, 1f, lerpValue); return(lerpValue); }
public void InOut_InputAboveRange_ReturnsDestination() { Ease ease = new Linear(); float x = 1.5f; float expected = ease.Scale.Y; float actual = ease.InOut(x); Assert.AreEqual(expected, actual, 0.001f); }
public void InOut_InputBelowRange_ReturnsOrigin() { Ease ease = new Linear(); float x = -0.5f; float expected = 0; float actual = ease.InOut(x); Assert.AreEqual(expected, actual, 0.001f); }
public void InOut_InputInRange_ReturnsExpectedValue() { Ease ease = new Linear(); float x = 0.6f; float expected = 0.6f; float actual = ease.InOut(x); Assert.AreEqual(expected, actual, 0.001f); }
public void InOut_ChangedScaleInputAboveRange_ReturnsDestination() { Vector scale = new Vector(4, 6); Ease ease = new Linear(scale); float x = 11.1f; float expected = ease.Scale.Y; float actual = ease.InOut(x); Assert.AreEqual(expected, actual, 0.001f); }
public void InOut_ChangedScaleInputBelowRange_ReturnsOrigin() { Vector scale = new Vector(4, 6); Ease ease = new Linear(scale); float x = -1.1f; float expected = 0; float actual = ease.InOut(x); Assert.AreEqual(expected, actual, 0.001f); }
public void InOut_ChangedScaleInputInRange_ReturnsExpectedValue() { Vector scale = new Vector(4, 6); Ease ease = new Linear(scale); float x = 2.5f; float expected = 3.75f; float actual = ease.InOut(x); Assert.AreEqual(expected, actual, 0.001f); }