Choose your operating system:
Windows
macOS
Linux
| UObjectBase
|
Module |
|
Header |
/Engine/Plugins/Runtime/MeshModelingToolset/Source/ModelingComponents/Public/Selection/PolygonSelectionMechanic.h |
Include |
#include "Selection/PolygonSelectionMechanic.h" |
UCLASS()
class UPolygonSelectionMechanic :
public UInteractionMechanic,
public IClickBehaviorTarget,
public IHoverBehaviorTarget
UPolygonSelectionMechanic implements the interaction for selecting a set of faces/vertices/edges from a FGroupTopology on a UDynamicMeshComponent.
Name | Description | ||
---|---|---|---|
|
TUniquePtr< FPo... |
ActiveChange |
|
|
bAddSelectionFilterPropertiesToParentTool |
Configuration variables that must be set before bSetup is called |
|
|
BasePriority |
||
|
bCtrlToggle |
||
|
bIsEnabled |
||
|
bShiftToggle |
||
|
CameraState |
||
|
TObjectPtr< USi... |
ClickOrDragBehavior |
|
|
TSet< int > |
CurrentlyHighlightedGroups |
|
|
TObjectPtr< UTr... |
DrawnTriangleSetComponent |
|
|
TFunction< FDyn... |
GetSpatialFunc |
|
|
TObjectPtr< UMa... |
HighlightedFaceMaterial |
|
|
HilightRenderer |
||
|
HilightSelection |
||
|
TObjectPtr< UMo... |
HoverBehavior |
|
|
LastClickedHitNormal |
||
|
LastClickedHitPosition |
||
|
TObjectPtr< URe... |
MarqueeMechanic |
|
|
const FDynamicM... |
Mesh |
|
|
FSimpleMulticas... |
OnSelectionChanged |
OnSelectionChanged is broadcast whenever the selection is modified (including by FChanges, which means that called functions should not issue undo transactions. |
|
PersistentSelection |
||
|
PolyEdgesRenderer |
||
|
PreDragPersistentSelection |
Used for box selection. |
|
|
PreDragTopoSelectorSettings |
||
|
TObjectPtr< APr... |
PreviewGeometryActor |
The actor we create internally to own the DrawnTriangleSetComponent |
|
TObjectPtr< UPo... |
Properties |
TODO: Is it worth issuing separate callbacks in normal selection changes and in FChange ones, to allow the user to bundle in some FChanges into the normal callback? |
|
SelectionRenderer |
||
|
SelectionTimestamp |
||
|
ShouldAddToSelectionFunc |
||
|
ShouldRemoveFromSelectionFunc |
||
|
ShouldSelectEdgeLoopsFunc |
When bSelectEdgeLoops is true, this function is tested to see if we should select edge loops, to allow edge loop selection to be toggled with some key (setting bSelectEdgeLoops to false overrides this function). |
|
|
ShouldSelectEdgeRingsFunc |
When bSelectEdgeRings is true, this function is tested to see if we should select edge rings, to allow edge ring selection to be toggled with some key (setting bSelectEdgeRings to false overrides this function). |
|
|
TargetTransform |
||
|
const FGroupTop... |
Topology |
|
|
TSharedPtr< FGr... |
TopoSelector |
Name | Description | |
---|---|---|
|
~UPolygonSelectionMechanic() |
Name | Description | ||
---|---|---|---|
|
BeginChange() |
Change Tracking Begin a change record. |
|
|
ClearHighlight() |
Clear current hover-highlight |
|
|
ClearSelection() |
Clear the current selection. |
|
|
DisableBehaviors ( |
Removes the mechanic's own click/hover handlers, which means that the parent tool will need to call UpdateSelection(), UpdateHighlight(), ClearHighlight(), and ClearSelection() from its own hover/click handlers. |
|
|
DrawHUD ( |
||
|
TUniquePtr< ... |
EndChange() |
End the active change and return it. Returns empty change if the selection was not modified! |
|
EndChangeAndEmitIfModified() |
Ends the active change and emits it via the parent tool, if the selection has been modified. |
|
|
const FGroup... |
GetActiveSelection() |
|
|
GetClickedHitPosition |
Can be used by in an OnSelectionChanged event to inspect the clicked location (i.e., the values returned by the UpdateSelection() function when the click happened). |
|
|
GetPriorityRange() |
Gets the current priority range used by behaviors in the mechanic. |
|
|
GetSelection ( |
Gives the current selection as a storable selection object. |
|
|
FAxisAligned... |
GetSelectionBounds ( |
|
|
GetSelectionFrame |
||
|
TSharedPtr< ... |
GetTopologySelector() |
|
|
FGroupTopolo... |
GetTopoSelectorSettings ( |
Get the topology selector settings to use given the current selection settings. |
|
HasSelection() |
||
|
Initialize ( |
Initializes the mechanic. |
|
|
Initialize ( |
||
|
LoadSelection ( |
Sets the current selection using the given storable selection object. |
|
|
NotifyMeshChanged ( |
Notify internal data structures that the associated MeshComponent has been modified. |
|
|
OnDragRectangleChanged ( |
||
|
OnDragRectangleFinished ( |
||
|
OnDragRectangleStarted() |
These get bound to marquee mechanic delegates. |
|
|
SetBasePriority ( |
Sets the base priority so that tools can make sure that their own behaviors are higher priority. |
|
|
SetIsEnabled ( |
Enable/disable the mechanic without permanently removing behaviors or shutting it down. |
|
|
SetSelection ( |
Replace the current selection with an external selection. |
|
|
SetShouldAddToSelectionFunc |
By default, the shift key will cause new clicks to add to the selection. |
|
|
SetShouldRemoveFromSelectionFunc |
By default, the Ctrl key will cause new clicks to remove from the existing selection. |
|
|
SetShouldSelectEdgeLoopsFunc |
||
|
SetShouldSelectEdgeRingsFunc |
||
|
TopologyHitTest ( |
Perform a hit test on the topology using the current selection settings. |
|
|
TopologyHitTest ( |
Perform a hit test on the topology using the current selection settings. |
|
|
UpdateHighlight ( |
Hover API Update the hover highlight based on the hit elements at the given World Ray |
|
|
UpdateMarqueeEnabled() |
||
|
UpdateSelection |
Selection API Intersect the ray with the mesh and update the selection based on the hit element, modifier states, etc |
Name | Description | ||
---|---|---|---|
|
Render ( |
Allow the Mechanic to do any custom drawing (ie via PDI/RHI) |
|
|
Setup ( |
Called to initialize the InteractionMechanic |
|
|
Shutdown() |
Called to clean up the InteractionMechanic |
Name | Description | ||
---|---|---|---|
|
IsHitByClick ( |
IClickBehaviorTarget implementation. |
|
|
OnClicked ( |
Notify Target that click ocurred |
Name | Description | ||
---|---|---|---|
|
OnUpdateModifierState ( |
Notify target of current modifier state |
Name | Description | ||
---|---|---|---|
|
BeginHoverSequenceHitTest ( |
IHoverBehaviorTarget implementation. |
|
|
OnBeginHover ( |
Initialize hover sequence at given position |
|
|
OnEndHover() |
Terminate active hover sequence |
|
|
OnUpdateHover ( |
Update active hover sequence with new input position |
Name |
Description |
---|---|
FAxisAlignedBox3d |
|
FFrame3d |
|
FTransform3d |
Name |
Description |
---|---|
CtrlModifierID |
|
ShiftModifierID |