UPolyEditInsertEdgeActivity

Interactive activity for inserting a group edge into a mesh.

Choose your operating system:

Windows

macOS

Linux

Inheritance Hierarchy

References

Module

MeshModelingTools

Header

/Engine/Plugins/Runtime/MeshModelingToolset/Source/MeshModelingTools/Public/ToolActivities/PolyEditInsertEdgeActivity.h

Include

#include "ToolActivities/PolyEditInsertEdgeActivity.h"

Syntax

UCLASS()
class UPolyEditInsertEdgeActivity :
    public UInteractiveToolActivity,
    public UE::Geometry::IDynamicMeshOperatorFactory,
    public IHoverBehaviorTarget,
    public IClickBehaviorTarget

Remarks

Interactive activity for inserting a group edge into a mesh.

Variables

Name Description

Protected variable UProperty

TObjectPtr< UPo...

 

ActivityContext

Protected variable

bool

 

bEndIsCorner

Protected variable

bool

 

bIsRunning

Protected variable

bool

 

bLastComputeSucceeded

Protected variable

bool

 

bShowingBaseMesh

Protected variable

bool

 

bStartIsCorner

Protected variable

FViewCameraStat...

 

CameraState

Protected variable

int32

 

CommonBoundaryIndex

Protected variable

int32

 

CommonGroupID

Protected variable

TSharedPtr< con...

 

ComputeStartMesh

Safe inputs for the background compute to use, untouched by undo/redo/other CurrentMesh updates.

Protected variable

TSharedPtr< con...

 

ComputeStartTopology

Protected variable

int32

 

CurrentChangeStamp

Protected variable

FGroupEdgeInser...

 

EndPoint

Protected variable

int32

 

EndTopologyID

Protected variable

FToolDataVisual...

 

ExistingEdgesRenderer

Protected variable

TSharedPtr< TSe...

 

LatestOpChangedTids

Protected variable

TSharedPtr< FGr...

 

LatestOpTopologyResult

Protected variable

FToolDataVisual...

 

PreviewEdgeRenderer

Protected variable

TArray< TPair< ...

 

PreviewEdges

Protected variable

TArray< FVector...

 

PreviewPoints

Protected variable UProperty

TObjectPtr< UGr...

 

Settings

Protected variable

FGroupEdgeInser...

 

StartPoint

Inputs from user interaction:

Protected variable

int32

 

StartTopologyID

Protected variable

FTransform

 

TargetTransform

Protected variable

EState

 

ToolState

State control:

Protected variable

TSharedPtr< FGr...

 

TopologySelector

Protected variable

FGroupTopologyS...

 

TopologySelectorSettings

Constructors

Functions

Name Description

Protected function

void

 

ClearPreview

(
    bool bClearDrawnElements
)

Protected function

void

 

ConditionallyUpdatePreview

(
    const FGroupEdgeInserter::FGroupEdg...,
    int32 NewEndTopologyID,
    bool bNewEndIsCorner,
    int32 NewCommonGroupID,
    int32 NewBoundaryIndex
)

Update the preview unless we've already computed one with the same parameters (such as when snapping to the same vertex despite moving the mouse).

Protected function

void

 

ExpireChanges()

Expires the tool-associated changes in the undo/redo stack.

Protected function

void

 

GetCornerTangent

(
    int32 CornerID,
    int32 GroupID,
    int32 BoundaryIndex,
    FVector3d& TangentOut
)

Protected function

bool

 

GetHoveredItem

(
    const FRay& WorldRay,
    FGroupEdgeInserter::FGroupEdgeSplit...,
    int32& TopologyElementIDOut,
    bool& bIsCornerOut,
    FVector3d& PositionOut,
    FRay3d* LocalRayOut
)

Public function Virtual

void

 

OnPropertyModified

(
    UObject* PropertySet,
    FProperty* Property
)

Protected function

void

 

SetupPreview()

Protected function

bool

 

TopologyHitTest

(
    const FRay& WorldRay,
    FVector3d& RayPositionOut,
    FRay3d* LocalRayOut
)

Protected function

void

 

UpdateComputeInputs()

Overridden from UInteractiveToolActivity

Name Description

Public function Virtual Const

bool

 

CanAccept()

If true, calling End with EToolShutdownType::Accept will result in a valid completion of the activity.

Public function Virtual Const

bool

 

CanStart()

Check whether a Start() call will result in a success.

Public function Virtual

EToolActivit...

 

End

(
    EToolShutdownType
)

Force an end to the activity.

Public function Virtual Const

bool

 

IsRunning()

Check whether the activity is running (though the tool can just check the result of Start() itself).

Public function Virtual

void

 

Shutdown

(
    EToolShutdownType ShutdownType
)

Should be called during a tool's Shutdown()Should be called during a tool's Shutdown()

Public function Virtual

EToolActivit...

 

Start()

Attempt to start the activity.

Overridden from UInteractionMechanic

Name Description

Public function Virtual

void

 

Render

(
    IToolsContextRenderAPI* Render...
)

If the activity is running, should be called from the tool's Render()

Public function Virtual

void

 

Setup

(
    UInteractiveTool* ParentTool
)

IInteractiveToolActivity.

Public function Virtual

void

 

Tick

(
    float DeltaTime
)

If the activity is running, should be called from the tool's OnTick()

Overridden from IDynamicMeshOperatorFactory

Name Description

Public function Virtual

TUniquePtr< ...

 

MakeNewOperator()

IDynamicMeshOperatorFactory.

Overridden from IHoverBehaviorTarget

Name Description

Public function Virtual

FInputRayHit

 

BeginHoverSequenceHitTest

(
    const FInputDeviceRay& PressPos
)

IHoverBehaviorTarget.

Public function Virtual

void

 

OnBeginHover

(
    const FInputDeviceRay& DevicePos
)

Initialize hover sequence at given position

Public function Virtual

void

 

OnEndHover()

Terminate active hover sequence

Public function Virtual

bool

 

OnUpdateHover

(
    const FInputDeviceRay& DevicePos
)

Update active hover sequence with new input position

Overridden from IClickBehaviorTarget

Name Description

Public function Virtual

FInputRayHit

 

IsHitByClick

(
    const FInputDeviceRay& ClickPos
)

IClickBehaviorTarget.

Public function Virtual

void

 

OnClicked

(
    const FInputDeviceRay& ClickPos
)

Notify Target that click ocurred

Enums

Name

Description

Private enum

EState

Typedefs