UnityEditor.HandleUtility.DistanceToCircle C# (CSharp) Method

DistanceToCircle() public static method

Pixel distance from mouse pointer to camera facing circle.

public static DistanceToCircle ( Vector3 position, float radius ) : float
position Vector3
radius float
return float
        public static float DistanceToCircle(Vector3 position, float radius)
        {
            Vector2 vector = WorldToGUIPoint(position);
            Camera current = Camera.current;
            Vector2 zero = Vector2.zero;
            if (current != null)
            {
                zero = WorldToGUIPoint(position + ((Vector3) (current.transform.right * radius)));
                Vector2 vector3 = vector - zero;
                radius = vector3.magnitude;
            }
            Vector2 vector4 = vector - Event.current.mousePosition;
            float magnitude = vector4.magnitude;
            if (magnitude < radius)
            {
                return 0f;
            }
            return (magnitude - radius);
        }

Usage Example

 private static float DistanceToCircleInternal(Vector3 position, Quaternion rotation, float size)
 {
     return(HandleUtility.DistanceToCircle(position, size));
 }