UnityEditor.HandleUtility.DistanceToRectangle C# (CSharp) Method

DistanceToRectangle() public static method

Pixel distance from mouse pointer to a rectangle on screen.

public static DistanceToRectangle ( Vector3 position, Quaternion rotation, float size ) : float
position Vector3
rotation UnityEngine.Quaternion
size float
return float
        public static float DistanceToRectangle(Vector3 position, Quaternion rotation, float size)
        {
            return DistanceToRectangleInternal(position, rotation, new Vector2(size, size));
        }

Usage Example

        // Draw a camera-facing dot. Pass this into handle functions.
        public static void DotHandleCap(int controlID, Vector3 position, Quaternion rotation, float size, EventType eventType)
        {
            switch (eventType)
            {
            case (EventType.Layout):
                HandleUtility.AddControl(controlID, HandleUtility.DistanceToRectangle(position, rotation, size));
                break;

            case (EventType.Repaint):
                // Only apply matrix to the position because DotCap is camera facing
                position = matrix.MultiplyPoint(position);

                Vector3 sideways = Camera.current.transform.right * size;
                Vector3 up       = Camera.current.transform.up * size;

                Color col = color * new Color(1, 1, 1, 0.99f);
                HandleUtility.ApplyWireMaterial();
                GL.Begin(GL.QUADS);
                GL.Color(col);
                GL.Vertex(position + sideways + up);
                GL.Vertex(position + sideways - up);
                GL.Vertex(position - sideways - up);
                GL.Vertex(position - sideways + up);
                GL.End();
                break;
            }
        }
All Usage Examples Of UnityEditor.HandleUtility::DistanceToRectangle