InverseKinematics.ClampAngle C# (CSharp) Метод

ClampAngle() приватный Метод

private ClampAngle ( float angle, float from, float to ) : float
angle float
from float
to float
Результат float
    float ClampAngle(float angle, float from, float to)
    {
        angle = Mathf.Abs((angle % 360) + 360) % 360;

            //Check limits
            if (from > to && (angle > from || angle < to))
                return angle;
            else if (to > from && (angle < to && angle > from))
                return angle;

            //Return nearest limit if not in bounds
            return (Mathf.Abs(angle - from) < Mathf.Abs(angle - to)
                && Mathf.Abs(angle - from) < Mathf.Abs((angle + 360) - to))
                || (Mathf.Abs(angle - from - 360) < Mathf.Abs(angle - to)
                && Mathf.Abs(angle - from - 360) < Mathf.Abs((angle + 360) - to)) ? from : to;
    }