UAlignObjectsTool

[UAlignObjectsTool](API\Plugins\MeshModelingToolsExp\UAlignObjectsTool) transforms the input Components so that they are aligned in various ways, depending on the current settings.

Choose your operating system:

Windows

macOS

Linux

Inheritance Hierarchy

References

Module

MeshModelingToolsExp

Header

/Engine/Plugins/Experimental/MeshModelingToolsetExp/Source/MeshModelingToolsExp/Public/AlignObjectsTool.h

Include

#include "AlignObjectsTool.h"

Syntax

UCLASS()
class UAlignObjectsTool :
    public UMultiSelectionMeshEditingTool,
    public IClickDragBehaviorTarget

Remarks

UAlignObjectsTool transforms the input Components so that they are aligned in various ways, depending on the current settings. The object positions move after every change in the parameters. Currently those changes are not transacted. On cancel the original positions are restored, and on accept the positions are updated with a transaction.

Variables

Name Description

Public variable UProperty

TObjectPtr< UAl...

 

AlignProps

Protected variable

FVector3d

 

AveragePivot

Protected variable

bool

 

bAlignDirty

Protected variable

FAxisAlignedBox...

 

CombinedBounds

Protected variable

TArray< FAlignI...

 

ComponentInfo

Protected variable

FAxisAlignedBox...

 

PivotBounds

Constructors

Name Description

Public function

UAlignObjectsTool()

Functions

Overridden from UInteractiveTool

Name Description

Public function Virtual Const

bool

 

CanAccept()

Public function Virtual Const

bool

 

HasAccept()

Public function Virtual Const

bool

 

HasCancel()

Public function Virtual

void

 

OnPropertyModified

(
    UObject* PropertySet,
    FProperty* Property
)

Automatically called by UInteractiveToolPropertySet.OnModified delegate to notify Tool of child property set changes

Public function Virtual

void

 

OnTick

(
    float DeltaTime
)

Action support/system

Public function Virtual

void

 

RegisterActions

(
    FInteractiveToolActionSet& ActionS...
)

Override this function to register the set of Actions this Tool supports, using FInteractiveToolActionSet::RegisterAction.

Public function Virtual

void

 

Render

(
    IToolsContextRenderAPI* Render...
)

Allow the Tool to do any custom drawing (ie via PDI/RHI)

Public function Virtual

void

 

Setup()

Called by ToolManager to initialize the Tool after ToolBuilder::BuildTool() has been called

Public function Virtual

void

 

Shutdown

(
    EToolShutdownType ShutdownType
)

Called by ToolManager to shut down the Tool

Overridden from IClickDragBehaviorTarget

Name Description

Public function Virtual

FInputRayHit

 

CanBeginClickDragSequence

(
    const FInputDeviceRay& PressPos
)

Test if target can begin click-drag interaction at this point

Public function Virtual

void

 

OnClickDrag

(
    const FInputDeviceRay& DragPos
)

Notify Target that input position has changed

Public function Virtual

void

 

OnClickPress

(
    const FInputDeviceRay& PressPos
)

Notify Target that click press ocurred

Public function Virtual

void

 

OnClickRelease

(
    const FInputDeviceRay& ReleasePos
)

Notify Target that click release occurred

Public function Virtual

void

 

OnTerminateDragSequence()

Notify Target that click-drag sequence has been explicitly terminated (eg by escape key)

Classes

Name

Description

Protected struct

FAlignInfo

Typedefs

Name

Description

FAxisAlignedBox3d

FTransform3d