UGroomCardsEditorTool

Choose your operating system:

Windows

macOS

Linux

Inheritance Hierarchy

References

Module

HairModelingToolset

Header

/Engine/Plugins/Experimental/HairModelingToolset/Source/HairModelingToolset/Public/GroomCardsEditorTool.h

Include

#include "GroomCardsEditorTool.h"

Syntax

UCLASS()
class UGroomCardsEditorTool :
    public UMeshSurfacePointTool,
    public IClickBehaviorTarget

Variables

Name Description

Protected variable

TPimplPtr< FGro...

 

ActiveCardEdit

Protected variable

int32

 

ActiveCardGroupID

Protected variable

FMeshVertexChan...

 

ActiveVertexChange

Protected variable

bool

 

bActiveCardEditUpdated

Protected variable

bool

 

bCurveUpdatePending

Protected variable

bool

 

bSelectionStateDirty

Protected variable

bool

 

bSetupValid

Protected variable

bool

 

bVisualizationChanged

Protected variable

bool

 

bWasTopologyEdited

Protected variable UProperty

TObjectPtr< UPo...

 

CardMeshSelectionMechanic

Protected variable UProperty

TObjectPtr< USp...

 

ControlPointsMechanic

Protected variable

int32

 

CurrentOperationTimestamp

Protected variable

TSharedPtr< FSp...

 

CurveSourceAdapter

Protected variable

TPimplPtr< FEdi...

 

EditableCardSet

Protected variable UProperty

TObjectPtr< UEd...

 

EditActions

Protected variable UProperty

TObjectPtr< UGr...

 

InfoProperties

Protected variable UProperty

TObjectPtr< UMa...

 

MeshMaterial

Protected variable

int32

 

ModifiedTopologyCounter

Protected variable

FDelegateHandle

 

OnPreviewMeshChangedHandle

Protected variable

EEditGroomCards...

 

PendingAction

Protected variable UProperty

TObjectPtr< UPr...

 

PreviewGeom

Protected variable UProperty

TObjectPtr< UPr...

 

PreviewMesh

Protected variable UProperty

TObjectPtr< USe...

 

SelectActions

Protected variable UProperty

TLazyObjectPtr<...

 

TargetGroom

Protected variable

UWorld *

 

TargetWorld

Protected variable

TUniquePtr< FGr...

 

Topology

Protected variable UProperty

TObjectPtr< UMa...

 

UVMaterial

Constructors

Name Description

Public function

UGroomCardsEditorTool()

Functions

Name Description

Protected function

void

 

AfterTopologyEdit()

Protected function

void

 

ApplyDeleteAction()

Public function

void

 

ApplyGroomCardEdit

(
    const FGroomCardEdit& Edit,
    bool bIsRevert
)

Protected function

void

 

BeginCardEdit

(
    int32 CardGroupID
)

Protected function

void

 

BeginMoveChange()

Protected function Const

bool

 

CheckInOperation

(
    int32 Timestamp
)

Protected function

void

 

CompleteActiveCardEditAndEmitChanges()

Protected function

void

 

CompleteMeshEditChange

(
    const FText& TransactionLabel,
    TUniquePtr< FToolCommandChange > Ed...,
    const FGroupTopologySelection& Out...
)

Protected function

void

 

EndCardEdit()

Protected function

void

 

EndMoveChange()

Protected function

void

 

InitializeMesh()

Protected function

void

 

OnPreviewMeshChanged()

Protected function

void

 

OnSelectionModifiedEvent()

Protected function

void

 

RecomputeTopology()

Public function

void

 

RequestAction

(
    EEditGroomCardsToolActions ActionTy...
)

Actions API

Protected function

void

 

RestoreCardEdit

(
    const FGroomCardEdit* RestoreE...
)

Public function Virtual

void

 

SetWorld

(
    UWorld* World
)

Protected function

void

 

UpdateLineSet()

Protected function

void

 

UpdateOnCurveEdit()

Overridden from UMeshSurfacePointTool

Name Description

Public function Virtual

bool

 

HitTest

(
    const FRay& Ray,
    FHitResult& OutHit
)

UMeshSurfacePointTool API.

Public function Virtual

void

 

OnBeginDrag

(
    const FRay& Ray
)

This function is called when the user begins a click-drag-release interaction

Public function Virtual

void

 

OnEndDrag

(
    const FRay& Ray
)

This function is called when the user releases the button driving a click-drag-release interaction

Public function Virtual

void

 

OnUpdateDrag

(
    const FRay& Ray
)

This function is called each frame that the user is in a click-drag-release interaction

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

 

OnTick

(
    float DeltaTime
)

Action support/system

Public function Virtual

void

 

Render

(
    IToolsContextRenderAPI* Render...
)

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

Public function Virtual

void

 

Setup()

Register InputBehaviors, etc

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
)

IClickDragBehaviorTarget API.

Overridden from IHoverBehaviorTarget

Name Description

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 API.

Public function Virtual

void

 

OnClicked

(
    const FInputDeviceRay& ClickPos
)

Notify Target that click ocurred