Legacy Documentation: Version 4.5.0

Script language:

  • JS
  • C#
  • Boo
Script language

Select your preferred scripting language. All code snippets will be displayed in this language.

Handles.SphereCap

static function SphereCap(controlID: int, position: Vector3, rotation: Quaternion, size: float): void;
static void SphereCap(int controlID, Vector3 position, Quaternion rotation, float size);
static def SphereCap(controlID as int, position as Vector3, rotation as Quaternion, size as float) as void

Description

Draw a Sphere. Pass this into handle functions.

Note: Use HandleUtility.GetHandleSize where you might want to have constant screen-sized handles.


Sphere Cap on the Scene View.

	// Draw one sphere on each axis of any GameObject that has 
	// the "DummySphereCapScript.js" script attached.
	
	@CustomEditor (DummySphereCapScript)
	class SphereCap extends Editor {
		
		var sphereSize : float = 1;
	
	    function OnSceneGUI () {
	    	Handles.color = Color.red;
	    	Handles.SphereCap(0,
				target.transform.position + Vector3(5,0,0),
				target.transform.rotation,
				sphereSize);
	    	Handles.color = Color.green;
	    	Handles.SphereCap(0,
				target.transform.position + Vector3(0,5,0),
				target.transform.rotation,
				sphereSize);    	
	    	Handles.color = Color.blue;
	    	Handles.SphereCap(0,
				target.transform.position + Vector3(0,0,5),
				target.transform.rotation,
				sphereSize);
	    }
	}

And the script attached to this Handle:

	//DummySphereCapScript.js
	
	Debug.Log("I have SphereCap Handles attached to this transform!");