using GTweens.Easings; namespace GTweens.Interpolators { /// /// Represents an interpolator for working with transitions between two values of type . /// /// The type of values to interpolate. public interface IInterpolator { /// /// Evaluates the intermediate value between the initial and final values based on the specified time and easing function. /// /// The initial value. /// The final value. /// The interpolation time (usually between 0 and 1). /// The easing function to apply during interpolation. /// The interpolated value between and . T Evaluate(T initialValue, T finalValue, float time, EasingDelegate easingFunction); /// /// Subtracts two values of type . /// /// The initial value. /// The final value. /// The result of subtracting from . T Subtract(T initialValue, T finalValue); /// /// Adds two values of type . /// /// The initial value. /// The final value. /// The result of adding to . T Add(T initialValue, T finalValue); } }