Version: 2017.3 (switch to 2017.4)
LanguageEnglish
  • C#
  • JS

Script language

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

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 Handle GUIs consistent with Unity's.

Static Properties

accelerationGet standard acceleration for dragging values (Read Only).
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.
DistanceToArcPixel distance from mouse pointer to a 3D section of a disc.
DistanceToCirclePixel distance from mouse pointer to camera facing circle.
DistanceToDiscPixel distance from mouse pointer to a 3D disc.
DistanceToLinePixel distance from mouse pointer to line.
DistanceToPolyLinePixel distance from mouse pointer to a polyline.
DistanceToRectanglePixel distance from mouse pointer to a rectangle on screen.
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.
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 report if 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 world space point to a 2D GUI position.

Did you find this page useful? Please give it a rating: