HandleUtility.DistanceToCone
Declaration
public static float DistanceToCone(Vector3 position, Quaternion rotation, float size);Параметры
| Параметр | Описание |
|---|---|
| должность | Положение конуса. |
| ротация | Вращение конуса. |
| размер | Размер конуса. |
Возвращаемое значение
поплавок Расстояние от мыши до конуса в пикселях.
Описание
Возвращает расстояние в пикселях от указателя мыши до конуса.
Вычисляет расстояние в экранном пространстве от указателя мыши до конуса в данном мировом пространстве position с заданными rotation и size.
Возвращает нуль, когда указатель мыши находится прямо над конусом.
Использует текущую камеру для определения расстояния.
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(); } }
.
Дополнительные ресурсы: DistanceToCircle, DistanceToCube, DistanceToLine.