/// <summary> /// Dynamically accelerates until the middle point and then decelerates. /// </summary> /// <param name="t">Time in the value between 0 and duration (inclusive)</param> /// <param name="from">Starting value from the ease</param> /// <param name="to">Target value to ease</param> /// <param name="duration">Duration of the ease</param> /// <returns>Eased value</returns> public static double PerlinInOut(double t, double from, double to, double duration) { return(from + (to - from) * Easings.PerlinInOut(t / duration)); }