Version: 2021.3
LanguageEnglish
  • C#

HandleUtility

class in UnityEditor

Suggest a change

Success!

Thank you for helping us improve the quality of Unity Documentation. Although we cannot accept all submissions, we do read each suggested change from our users and will make updates where applicable.

Close

Submission failed

For some reason your suggested change could not be submitted. Please <a>try again</a> in a few minutes. And thank you for taking the time to help us improve the quality of Unity Documentation.

Close

Cancel

Description

Helper functions for Scene View style 3D GUI.

These are mainly mathematical functions that assist in converting between the 3D Scene space and the 2D GUI. The functions are used in the construction of the Unity Editor itself and so using them is a good way to make your own Handles GUIs consistent with Unity's.

Static Properties

accelerationGet standard acceleration for dragging values (Read Only).
nearestControlThe controlID of the nearest Handle to the mouse cursor.
niceMouseDeltaGet nice mouse delta to use for dragging a float value (Read Only).
niceMouseDeltaZoomGet nice mouse delta to use for zooming (Read Only).

Static Methods

AddControlRecord a distance measurement from a handle.
AddDefaultControlAdd the ID for a default control. This will be picked if nothing else is.
CalcLineTranslationMap a mouse drag onto a movement along a line in 3D space.
ClosestPointToArcGet the point on an arc (in 3D space) which is closest to the current mouse position.
ClosestPointToDiscGet the point on an disc (in 3D space) which is closest to the current mouse position.
ClosestPointToPolyLineGet the point on a polyline (in 3D space) which is closest to the current mouse position.
DistancePointBezierCalculate distance between a point and a Bezier curve.
DistancePointLineCalculate distance between a point and a line.
DistancePointToLineDistance from a point p in 2d to a line defined by two points a and b.
DistancePointToLineSegmentDistance from a point p in 2d to a line segment defined by two points a and b.
DistanceToArcReturns the distance in pixels from the mouse pointer to a 3D section of a disc.
DistanceToCircleReturns the distance in pixels from the mouse pointer to a camera facing circle.
DistanceToConeReturns the distance in pixels from the mouse pointer to a cone.
DistanceToCubeReturns the distance in pixels from the mouse pointer to a cube.
DistanceToDiscReturns the distance in pixels from the mouse pointer to a 3D disc.
DistanceToLineReturns the distance in pixels from the mouse pointer to a line.
DistanceToPolyLineReturns the distance in pixels from the mouse pointer to a polyline.
DistanceToRectangleReturns the distance in pixels from the mouse pointer to a rectangle on screen.
FindNearestVertexReturns the nearest vertex to a guiPoint within a maximum radius of 50 pixels.
GetHandleSizeGet world space size of a manipulator handle at given position.
GUIPointToScreenPixelCoordinateConverts a 2D GUI position to screen pixel coordinates.
GUIPointToWorldRayConvert 2D GUI position to a world space ray.
PickGameObjectPick game object closest to specified position.
PickRectObjectsPick GameObjects that lie within a specified screen rectangle.
PlaceObjectCasts a ray against the loaded scenes and returns the nearest intersected point on a collider.
PointOnLineParameterReturns the parameter for the projection of the point on the given line.
PopCameraRetrieve all camera settings.
ProjectPointLineProject point onto a line.
PushCameraStore all camera settings.
RaySnapCasts ray against the Scene and reports whether an object lies in its path.
RepaintRepaint the current view.
WorldPointToSizedRectCalculate a rectangle to display a 2D GUI element near a projected point in 3D space.
WorldToGUIPointConvert a world space point to a 2D GUI position.
WorldToGUIPointWithDepthConvert a world space point to a 2D GUI position.

Events

pickGameObjectCustomPassesSubscribe to this event to add additional picking objects to the HandleUtility.PickGameObject method.
placeObjectCustomPassesSubscribe to this event to handle object placement in the SceneView.

Delegates

PickGameObjectCallbackThis is the method definition for pickGameObjectCustomPasses.
PlaceObjectDelegateThis is the method definition for placeObjectCustomPasses.