CSharpRoboticsLib.Utility.Util.WrapError C# (CSharp) Метод

WrapError() публичный статический Метод

Wraps an error value around a maximum and minimum input.
public static WrapError ( double value, double setpoint, double min, double max ) : double
value double
setpoint double
min double
max double
Результат double
        public static double WrapError(double value, double setpoint, double min, double max)
        {
            double error = setpoint - value;
            if (Math.Abs(error) <= (max - min)/2)
                return error;

            if (error < 0) //value > setpoint
            {
                return (max - value) + (setpoint - min);
            }
            else
            {
                return (min - value) - (max - setpoint);
            }
        }