Navigation
API > API/Plugins > API/Plugins/MeshModelingToolsExp
Inheritance Hierarchy
- UObjectBase
- UObjectBaseUtility
- UObject
- UInteractiveTool
- USingleSelectionTool
- UMeshSurfacePointTool
- UBaseBrushTool
- UDynamicMeshBrushTool
- UMeshSelectionTool
- UEditMeshMaterialsTool
References
| Module | MeshModelingToolsExp |
| Header | /Engine/Plugins/Experimental/MeshModelingToolsetExp/Source/MeshModelingToolsExp/Public/MeshSelectionTool.h |
| Include | #include "MeshSelectionTool.h" |
Syntax
UCLASS&40;&41;
class UMeshSelectionTool :
public UDynamicMeshBrushTool,
public IInteractiveToolNestedAcceptCancelAPI
Variables
| Type | Name | Description | |
|---|---|---|---|
| TSharedPtr< UE::Geometry::FPolygroupSet, ESPMode::ThreadSafe > | ActiveGroupSet | ||
| FMeshSelectionChangeBuilder * | ActiveSelectionChange | Selection change | |
| bool | bColorsUpdatePending | ||
| bool | bFullMeshInvalidationPending | ||
| bool | bHaveModifiedMesh | If true, mesh has been edited | |
| bool | bHavePendingAction | ||
| bool | bInRemoveStroke | ||
| bool | bOctreeValid | ||
| bool | bStampPending | ||
| TObjectPtr< UMeshSelectionToolActionPropertySet > | EditActions | ||
| TArray< int > | IndexBuf | Temp | |
| UE::Geometry::FGeometrySelection | InputGeometrySelection | ||
| FBrushStampData | LastStamp | ||
| TObjectPtr< UMeshElementsVisualizer > | MeshElementsDisplay | ||
| TObjectPtr< UMeshStatisticsProperties > | MeshStatisticsProperties | ||
| TUniquePtr< UE::Geometry::FDynamicMeshOctree3 > | Octree | Note: ideally this octree would be part of PreviewMesh! | |
| EMeshSelectionToolActions | PendingAction | ||
| TObjectPtr< UPolygroupLayersProperties > | PolygroupLayerProperties | ||
| TArray< int > | PreviewBrushROI | ||
| TBitArray | SelectedTriangles | ||
| TBitArray | SelectedVertices | ||
| TObjectPtr< UMeshSelectionSet > | Selection | ||
| TObjectPtr< UMeshSelectionEditActions > | SelectionActions | ||
| TObjectPtr< UMeshSelectionToolProperties > | SelectionProps | ||
| EMeshSelectionElementType | SelectionType | ||
| TArray< TObjectPtr< AActor > > | SpawnedActors | ||
| FBrushStampData | StartStamp | ||
| UWorld * | TargetWorld | ||
| TArray< int32 > | TemporaryBuffer | ||
| TSet< int32 > | TemporarySet | ||
| TArray< int > | TriangleToUVIsland | ||
| TObjectPtr< UMeshUVChannelProperties > | UVChannelProperties |
Constructors
| Type | Name | Description | |
|---|---|---|---|
Functions
| Type | Name | Description | |
|---|---|---|---|
| void | |||
| void | ApplyAction
(
EMeshSelectionToolActions ActionType |
||
| void | ApplyShutdownAction
(
EToolShutdownType ShutdownType |
||
| void | ApplyStamp
(
const FBrushStampData& Stamp |
||
| void | |||
| void | BeginChange
(
bool bAdding |
||
| void | |||
| void | CalculateTriangleROI
(
const FBrushStampData& Stamp, |
||
| void | CalculateVertexROI
(
const FBrushStampData& Stamp, |
||
| void | CancelChange () |
||
| void | |||
| UMeshSelectionToolActionPropertySet * | |||
| void | |||
| void | |||
| TUniquePtr< FToolCommandChange > | EndChange () |
||
| void | |||
| void | |||
| FColor | GetCurrentFaceColor
(
const FDynamicMesh3* Mesh, |
||
| TUniquePtr< UE::Geometry::FDynamicMeshOctree3 > & | GetOctree () |
||
| void | GrowShrinkSelection
(
bool bGrow |
||
| void | |||
| void | |||
| void | |||
| void | OnRegionHighlightUpdated
(
const TArray< int32 >& Triangles |
||
| void | OnRegionHighlightUpdated
(
const TSet< int32 >& Triangles |
||
| void | |||
| void | |||
| void | RequestAction
(
EMeshSelectionToolActions ActionType |
||
| void | SelectAll () |
||
| void | |||
| void | SelectLargestComponent
(
bool bWeightByArea |
||
| void | SeparateSelectedTriangles
(
bool bDeleteSelected |
||
| void | SetGeometrySelection
(
UE::Geometry::FGeometrySelection&& SelectionIn |
Input selection support | |
| void | |||
| void | |||
| void | |||
| void | UpdateFaceSelection
(
const FBrushStampData& Stamp, |
||
| void | UpdateVisualization
(
bool bSelectionModified |
Overridden from UDynamicMeshBrushTool
| Type | Name | Description | |
|---|---|---|---|
| void | OnShutdown
(
EToolShutdownType ShutdownType |
Subclasses can override these to customize behavior |
Overridden from UMeshSurfacePointTool
| Type | Name | Description | |
|---|---|---|---|
| bool | HitTest
(
const FRay& Ray, |
||
| void | OnBeginDrag
(
const FRay& Ray |
UMeshSurfacePointTool implementation. | |
| void | OnEndDrag
(
const FRay& Ray |
This function is called when the user releases the button driving a click-drag-release interaction | |
| void | OnUpdateDrag
(
const FRay& Ray |
This function is called each frame that the user is in a click-drag-release interaction |
Overridden from UInteractiveTool
| Type | Name | Description | |
|---|---|---|---|
| bool | CanAccept () |
Virtual bool CanAccept() const override { return Super::CanAccept() && bHaveModifiedMesh; } | |
| bool | HasAccept () |
||
| bool | HasCancel () |
||
| void | OnTick
(
float DeltaTime |
Allow the Tool to do any necessary processing on Tick | |
| void | RegisterActions
(
FInteractiveToolActionSet& ActionSet |
Override this function to register the set of Actions this Tool supports, using FInteractiveToolActionSet::RegisterAction. | |
| void | Render
(
IToolsContextRenderAPI* RenderAPI |
Allow the Tool to do any custom drawing (ie via PDI/RHI) | |
| void | Setup () |
UInteractiveTool. |
Overridden from IInteractiveToolCameraFocusAPI
| Type | Name | Description | |
|---|---|---|---|
| FBox | IInteractiveToolCameraFocusAPI implementation. |
Overridden from IHoverBehaviorTarget
| Type | Name | Description | |
|---|---|---|---|
| bool | OnUpdateHover
(
const FInputDeviceRay& DevicePos |
Update active hover sequence with new input position |
Overridden from IInteractiveToolNestedAcceptCancelAPI
| Type | Name | Description | |
|---|---|---|---|
| bool | |||
| bool | Called by Editor levels to tell the implementor (eg Tool) to execute a nested Cancel action | ||
| bool | IInteractiveToolCancelAPI. |