controlID | The control ID for the handle. |
position | The world-space position for the start of the handle. |
rotation | The rotation of the handle. |
size | The size of the handle in world-space units. |
Draw a camera-facing Circle. Pass this into handle functions.
Note: Use HandleUtility.GetHandleSize where you might want to have constant screen-sized handles.
Circle Cap in the scene view.
To use this example, place this script in the Assets/Editor folder:
And the script attached to this Handle:
using UnityEngine; using UnityEditor;
[CustomEditor( typeof( DummyCircleCap ) )] public class CircleCapEditor : Editor { public float circleSize = 1;
void OnSceneGUI( ) { DummyCircleCap t = target as DummyCircleCap;
Handles.color = Color.red; Handles.CircleCap( 0, t.transform.position + new Vector3( 5, 0, 0 ), t.transform.rotation, circleSize );
Handles.color = Color.green; Handles.CircleCap( 0, t.transform.position + new Vector3( 0, 5, 0 ), t.transform.rotation, circleSize );
Handles.color = Color.blue; Handles.CircleCap( 0, t.transform.position + new Vector3( 0, 0, 5 ), t.transform.rotation, circleSize ); } }
...and attach this script to the object where you'd like the CircleCap handles to appear:
using UnityEngine;
[ExecuteInEditMode] public class DummyCircleCap : MonoBehaviour { public void Start( ) { Debug.Log( "I have CircleCap Handles attached to this transform!" ); } }