Объявление
public static void DrawWireDisc(Vector3 center, Vector3 normal, float radius, float thickness = 0.0f);Параметры
center | Центр диска в мировом пространстве. |
normal | Нормаль диска в мировом пространстве. |
radius | Радиус диска в мировых космических единицах. |
thickness | Толщина линии в точках пользовательского интерфейса (нулевая толщина рисует линию в один пиксель). |
Описание
Рисует контур плоского диска в трехмерном пространстве.
Свойства Handles.color и Handles.matrix раскрашивают и дополнительно преобразуют положение диска. Unity игнорирует DrawWireDisc
(то есть ничего не происходит), если текущий тип события GUI не Repaint.

using UnityEngine;
using UnityEditor;
// рисуем красный круг вокруг куба сцены
[CustomEditor(typeof(CubeExample))]
public class CubeEditor : Editor
{
void OnSceneGUI()
{
CubeExample cubeExample = (CubeExample)target;
Handles.color = Color.red;
Handles.DrawWireDisc(cubeExample.transform.position, new Vector3(0, 1, 0), cubeExample.circleSize);
}
}
Куб:
using UnityEngine;
public class CubeExample : MonoBehaviour
{
public float circleSize = 3.0f;
}
Вы можете использовать HandleUtility.GetHandleSize, чтобы вычислить подходящий размер дескриптора манипулятора.
Дисковая линия толщина
может быть установлена дополнительно. Нулевая толщина рисует линию в один пиксель. Большие значения толщины выражают толщину линии в точках пользовательского интерфейса. Например, толщина 1,0 может соответствовать ширине экрана в два пикселя, если масштаб отображения равен 200 % (см. EditorGUIUtility.pixelsPerPoint).

using UnityEngine;
using UnityEditor;
public class ExampleScript : MonoBehaviour
{
}
// Отображает круги различной толщины в окне просмотра сцены
[CustomEditor(typeof(ExampleScript))]
public class ExampleEditor : Editor
{
public void OnSceneGUI()
{
var t = target as ExampleScript;
var tr = t.transform;
var position = tr.position;
Handles.color = Color.yellow;
for (int i = 0; i < 10; ++i)
{
Handles.DrawWireDisc(position + Vector3.right * i, Vector3.forward, 2, i);
}
}
}
Смотрите так же: Handles.lineThickness, Handles.DrawLine, Handles.DrawSolidDisc, Handles.DrawWireArc.