# DistanceToCone(Vector3, Quaternion, float)

> Returns the distance in pixels from the mouse pointer to a cone.

## Definition

* **Type:** Method
* **Namespace:** [UnityEditor](/engine/6000.0/script-reference/unityeditor.md)
* **Assembly:** UnityEditor

```csharp
public static float DistanceToCone(Vector3 position, Quaternion rotation, float size)
```

### Parameters

**** (\[Vector3]\(/engine/6000.0/script-reference/unityengine/vector3)): Position of the cone.**** (\[Quaternion]\(/engine/6000.0/script-reference/unityengine/quaternion)): Rotation of the cone.**** (\[float]\(https\://learn.microsoft.com/dotnet/api/system.single)): Size of the cone.

### Returns

| Type                                                          | Description                            |
| ------------------------------------------------------------- | -------------------------------------- |
| [float](https://learn.microsoft.com/dotnet/api/system.single) | Distance from mouse to cone in pixels. |

### Remarks

Calculates the screen space distance from the mouse pointer to a cone at given world space position with the given rotation and size.

Returns zero when mouse pointer is directly over the cone.

Uses the current camera to determine the distance.

```csharp
using UnityEngine;
using UnityEditor;

public class ExampleScript : MonoBehaviour
{
}

// Displays cone in scene view, and distance from mouse
// to the cone.
[CustomEditor(typeof(ExampleScript))]
public class ExampleEditor : Editor
{
    public void OnSceneGUI()
    {
        var t = target as ExampleScript;
        var tr = t.transform;
        var position = tr.position;
        var rotation = tr.rotation;
        var size = 1.0f;
        // draw a cone in scene
        Handles.color = Color.yellow;
        Handles.ConeHandleCap(0, position, rotation, size, Event.current.type);
        // calculate distance from mouse to cone, and display it
        var distance = HandleUtility.DistanceToCone(position, rotation, size);
        GUI.color = Color.black;
        Handles.Label(position, distance.ToString("F0"));
        // make scene view repaint on mouse move
        if (Event.current.type == EventType.MouseMove)
            Event.current.Use();
    }
}
```

![HandleUtilityDistanceToCone (DistanceToCone(Vector3, Quaternion, float))](/api/media?file=/engine/6000.0/media/images/HandleUtilityDistanceToCone.png).

Additional Resources: [HandleUtility.DistanceToCircle](/engine/6000.0/script-reference/unityeditor/handleutility/distancetocircle.md), [HandleUtility.DistanceToCube](/engine/6000.0/script-reference/unityeditor/handleutility/distancetocube.md), [HandleUtility.DistanceToLine](/engine/6000.0/script-reference/unityeditor/handleutility/distancetoline.md).
