Name | Description |
---|---|
rotation | The rotation of the disc. |
position | The center of the disc. |
axis | The axis to rotate around. |
size | The size of the disc in world space See Also:HandleUtility.GetHandleSize. |
cutoffPlane | If true, only the front-facing half of the circle is draw / draggable. This is useful when you have many overlapping rotation axes (like in the default rotate tool) to avoid clutter. |
snap | The new value after the user has modified it. |
Make a 3D disc that can be dragged with the mouse.
Disc Handle on the Scene View.
// Create a handle to rotate an object over 45 degrees on X and Y axis
@CustomEditor (DiscValueModifier)
class DiscHandle extends Editor {
function OnSceneGUI () {
target.rot =
Handles.Disc(target.rot,
target.transform.position,
Vector3(1,1,0),
5,
false,
1);
if (GUI.changed)
EditorUtility.SetDirty (target);
}
}
And the script attached to this Handle:
// Usage: Place this script on the Game Object you want to modify
// the handle's rot with the disc
@script ExecuteInEditMode()
var rot : Quaternion = Quaternion.identity;
function Update() {
transform.rotation = rot;
}