UGizmoHandleGroup

Inheritance Hierarchy

Syntax

class UGizmoHandleGroup : public USceneComponent

Remarks

Base class for gizmo handles

Variables

Name Description

Protected variable

UMaterialInterf ...

 

GizmoMaterial

Gizmo material (opaque)

Protected variable

TArray < FGizmoH ...

 

Handles

All the StaticMeshes for this handle type

Protected variable

ABaseTransformG ...

 

OwningTransformGizmoActor

The actor transform gizmo owning this handlegroup

Protected variable

UMaterialInterf ...

 

TranslucentGizmoMaterial

Gizmo material (translucent)

Constructors

Name Description

Public function

UGizmoHandleGroup()

Default constructor that sets up CDO properties

Destructors

Name Description

Public function Virtual

~UGizmoHandleGroup()

Deconstructor

Functions

Name Description

Protected function

void

 

AddMeshToHandles

(
    UStaticMeshComponent * HandleMe...,
    const FTransformGizmoHandlePlacemen ...
)

Adds the HandleMeshComponent to the Handles list

Protected function

UStaticMeshC ...

 

CreateAndAddMeshHandle

(
    UStaticMesh * HandleMesh,
    const FString & ComponentName,
    const FTransformGizmoHandlePlacemen ...
)

Creates handle meshcomponent and adds it to the Handles list

Protected function

UStaticMeshC ...

 

CreateMeshHandle

(
    UStaticMesh * HandleMesh,
    const FString & ComponentName
)

Helper function to create gizmo handle meshes

Public function Static

FVector

 

GetAxisVector

(
    const int32 AxisIndex,
    const ETransformGizmoHandleDirectio ...
)

Static: Given an axis (0-2) and a facing direction, returns the vector normal for that axis

Public function Virtual

int32

 

GetDraggedHandleIndex

(
    UStaticMeshComponent * DraggedM...
)

Finds the index of DraggedMesh in HandleMeshes

Public function Virtual

void

 

GetHandleIndexInteractionType

(
    const int32 HandleIndex,
    ETransformGizmoInteractionType & Ou...,
    TOptional < FTransformGizmoHandlePla ...
)

Gets the InteractionType and the HandlePlacement for this Gizmo handle

Protected function

FTransformGi ...

 

GetHandlePlacement

(
    const int32 X,
    const int32 Y,
    const int32 Z
)

Gets the handleplacement axes

Public function

TArray < FGiz ...

 

GetHandles()

Gets all the handles

Public function Virtual

EGizmoHandle ...

 

GetHandleType()

Gets the GizmoType for this Gizmo handle

Public function Virtual

ETransformGi ...

 

GetInteractionType()

Gets the Gizmo InteractionType, needs to be implemented by derived classes

Public function

bool

 

GetShowOnUniversalGizmo()

Gets if this handlegroup will be visible with the universal gizmo

Public function

int32

 

MakeHandleIndex

(
    const FTransformGizmoHandlePlacemen ...
)

Makes a unique index for a handle

Public function

FString

 

MakeHandleName

(
    const FTransformGizmoHandlePlacemen ...
)

Makes up a name string for a handle

Public function

FTransformGi ...

 

MakeHandlePlacementForIndex

(
    const int32 HandleIndex
)

Given the unique index, makes a handle

Public function

void

 

SetGizmoMaterial

(
    UMaterialInterface * Material
)

Sets the Gizmo material

Public function

void

 

SetOwningTransformGizmo

(
    ABaseTransformGizmo * Transform...
)

Sets the owning transform gizmo for this handle group

Public function

void

 

SetShowOnUniversalGizmo

(
    const bool bShowHandleUniversal
)

Sets if this handlegroup will be visible with the universal gizmo

Public function

void

 

SetTranslucentGizmoMaterial

(
    UMaterialInterface * Material
)

Sets the translucent Gizmo material

Public function Virtual

bool

 

SupportsWorldCoordinateSpace()

Returns true if this type of handle is allowed with world space gizmos

Public function Virtual

void

 

UpdateGizmoHandleGroup

(
    const FTransform & LocalToWorld,
    const FBox & LocalBounds,
    const FVector ViewLocation,
    const bool bAllHandlesVisible,
    UActorComponent * DraggingHandl...,
    const TArray < UActorComponent *...,
    float AnimationAlpha,
    float GizmoScale,
    const float GizmoHoverScale,
    const float GizmoHoverAnimationDura...,
    bool& bOutIsHoveringOrDraggingThis...
)

Updates the Gizmo handles, needs to be implemented by derived classes

Protected function

void

 

UpdateHandleColor

(
    const int32 AxisIndex,
    FGizmoHandle & Handle,
    UActorComponent * DraggingHandl...,
    const TArray < UActorComponent *...
)

Updates the colors of the dynamic material instances for the handle passed using its axis index

Public function

void

 

UpdateVisibilityAndCollision

(
    const EGizmoHandleTypes GizmoType,
    const ECoordSystem GizmoCoordinateS...,
    const bool bAllHandlesVisible,
    const bool bAllowRotationAndScaleHa...,
    UActorComponent * DraggingHandl...
)

Default setting the visibility and collision for all the handles in this group

References

Module

ViewportInteraction

Header

Editor/ViewportInteraction/Public/VIGizmoHandle.h