/Engine/Plugins/Runtime/MeshModelingToolset/Source/ModelingComponents/Public/Mechanics/CurveControlPointsMechanic.h
TODO:
[UCLASS](Programming/UnrealArchitecture/Reference/Classes#classdeclaration)() class UCurveControlPointsMechanic : public [UInteractionMechanic](API\Runtime\InteractiveToolsFramework\UInteractionMechanic), public [IClickBehaviorTarget](API\Runtime\InteractiveToolsFramework\BaseBehaviors\IClickBehaviorTarget), public [IHoverBehaviorTarget](API\Runtime\InteractiveToolsFramework\BaseBehaviors\IHoverBehaviorTarget)
bool
bAddToSelectionToggle
Support for Shift and Ctrl toggles.
bool
bAutoRevertToInteractiveInitialization
bool
bGizmoBeingDragged
Used to make it easy to tell whether the gizmo was moved by the user or by undo/redo or some other change that we shoulnd't respond to.
bool
bInsertPointToggle
bool
bInteractiveInitializationMode
bool
bIsLoop
bool
bSnappingEnabled
bool
bSnapToggle
FViewCameraStat...
CameraState
Support for hovering.
TObjectPtr<USi...
ClickBehavior
Behaviors used for moving points around and hovering them.
FOrderedPoints
ControlPoints
This actually stores the sequence of point IDs, and their coordinates.
int32
CtrlModifierId
int32
CurrentChangeStamp
Used for expiring undo/redo changes, which compare this to their stored value and expire themselves if they do not match.
FColor
CurrentPointsColor
FColor
CurrentSegmentsColor
float
DepthBias
TObjectPtr<UPo...
DrawnControlPoints
TObjectPtr<ULi...
DrawnControlSegments
UE::Geometry::F...
DrawPlane
Used for adding new points on the ends and for limiting point movement.
int32
EndpointSnapPriority
int32
FirstPointSnapID
Used for snapping to the start/end of the curve to get out of initialization mode.
UE::Geometry::F...
GeometrySet
Used for spatial queries.
TFunction< bool...
GeometrySetToleranceTest
FVector
GizmoStartPosition
The starting point of the gizmo is needed to determine the offset by which to move the points.
FColor
HighlightColor
TObjectPtr<UMo...
HoverBehavior
FColor
HoverColor
int32
HoveredPointID
FColor
InitializationCurveColor
Variables for drawing.
int32
LastPointSnapID
int32
LineSnapIDMin
When storing user-defined lines to snap to, we add this to the user-provided id to avoid conflicting with any lines generated by the snap engine.
int32
LineSnapPriority
int32
MinPointsForLoop
int32
MinPointsForNonLoop
FColor
NormalCurveColor
OnModeChangedEv...
OnModeChanged
OnPointsChanged...
OnPointsChanged
float
PointsSize
TObjectPtr<UCo...
PointTransformGizmo
TObjectPtr<UTr...
PointTransformProxy
Support for gizmo.
FColor
PreHoverPointColor
Used to unhover a point, since this will differ depending on whether the point is selected.
FColor
PreviewColor
TObjectPtr<APr...
PreviewGeometryActor
Used for displaying points/segments
TObjectPtr<UPo...
PreviewPoint
These get drawn separately because the other components have to be 1:1 with the control points structure, which would make it complicated to keep track of special id's.
TObjectPtr<ULi...
PreviewSegment
float
SegmentsThickness
FColor
SelectedColor
TArray< int32 >
SelectedPointIDs
Support for selection.
TArray< FVector...
SelectedPointStartPositions
We need the selected point start positions so we can move multiple points appropriately.
int32
ShiftModifierId
UE::Geometry::F...
SnapEngine
FColor
SnapLineColor