Namespace UnityEditor.Splines
Classes
EditorSplineUtility
Editor utility functions for working with Spline and SplineData<T>.
EmbeddedSplineDataPropertyDrawer
Creates a property drawer for EmbeddedSplineData types.
SerializedPropertyUtility
Contains specialized utility functions for creating SerializedObject and SerializedProperty objects from SplineContainer, Spline, and SplineData<T>.
SplineDataHandles
Provides default handles to SplineData. Call DataPointHandles<TSpline, TData>(TSpline, SplineData<TData>, bool) in your Editor Tool to add default handles for you to add, move, and remove SplineData's DataPoints along a spline.
SplineExtrudeUtility
SplineGUI
Contains IMGUI controls for editing Spline data.
SplineGUILayout
Provides IMGUI controls to edit Spline data.
SplineGizmoUtility
SplineGizmoUtility provides methods for drawing in-scene representations of Splines.
SplineHandles
This class provides the ability to draw a handle for a spline.
SplineHandles.SplineHandleScope
The scope used to draw a spline. This is managing several purposes when using SplineHandles.DrawSomething(). This ensure selection is working properly, and that hovering an element is highlighting the correct related elements (for instance hovering a tangent highlights the opposite one when needed and the knot as well).
SplineIndexPropertyDrawer
A PropertyDrawer used to show a popup menu with available spline indices relative to a ISplineContainer. Add SplineIndexAttribute to a serialized integer type to use.
SplineInfoPropertyDrawer
Create a property drawer for SplineInfo types.
SplineMeshHandle<T>
Creates a cylinder mesh along a spline.
SplineMoveTool
Provides methods that move knots and tangents in the Scene view. This tool is only available when you use SplineToolContext.
SplineMoveTool
works similarly to the Move tool for GameObjects, except that it has extra handle configurations according to the handleOrientation
settings.
SplineToolContext
manages the selection of knots and tangents. You can manipulate the selection of knots and tangents with SplineMoveTool
.
SplineRotateTool
Provides methods to rotate knots and tangents in the Scene view. This tool is only available when you use SplineToolContext.
SplineRotateTool
is similar to the Rotate tool for GameObjects except that it has extra handle configurations according to the handleOrientation
settings.
The rotation of tangents are usually related to the rotation of their knots, except when tangents use the Broken Bezier tangent mode. The rotation of tangents that use the Broken Bezier tangent mode are independent from the rotation of their knot.
SplineToolContext
manages the selection of knots and tangents. You can manipulate the selection of knots and tangents with SplineRotateTool
.
SplineScaleTool
Provides methods to scale knots and tangents in the Scene view. This tool is only available when you use SplineToolContext.
When you scale a knot, you also scale both its tangents and change the curvature of the segment around the knot.
SplineToolContext
manages the selection of knots and tangents. You can manipulate the selection of knots and tangents with SplineRotateTool
.
SplineSelection
Provides methods to track the selection of spline elements, knots, and tangents.
SplineTools
and SplineHandles
use SplineSelection
to manage these elements.
SplineTool
Base class from which all Spline tools inherit. Inherit SplineTool to author tools that behave like native spline tools. This class implements some common functionality and shortcuts specific to spline authoring.
SplineToolContext
Defines a tool context for editing splines. When authoring tools for splines, pass the SplineToolContext type to the EditorToolAttribute.editorToolContext parameter to register as a spline tool.
Structs
SelectableKnot
Implements the ISelectableElement interface. SelectableKnot is used by the spline selection and handles to use tools and handles to manipulate spline elements.
SelectableTangent
Represents a struct that implements the ISelectableElement interface. Spline selection uses
SelectableTangent
and handles to easily manipulate spline elements with tools and handles.
Interfaces
ISelectableElement
An interface that represents a selectable spline element. A selectable spline element can be a knot or a tangent.
ISelectableElement
is used by the selection to get information about the spline, the knot, and the positions of the spline elements.
Enums
HandleOrientation
Describes how the handles are oriented. Besides the default tool handle rotation settings, Global and Local, spline elements have the Parent and Element handle rotations. When elements are selected, a tool's handle rotation setting affects the behavior of some transform tools, such as the Rotate and Scale tools.