Navigation
API > API/Plugins > API/Plugins/MeshModelingToolsEditorOnly
This class wraps all the data needed to isolate a selection of a mesh while editing skin weights
| Name | UWeightToolSelectionIsolator |
| Type | class |
| Header File | /Engine/Plugins/Runtime/MeshModelingToolset/Source/MeshModelingToolsEditorOnly/Public/SkeletalMesh/SkinWeightsPaintTool.h |
| Include Path | #include "SkeletalMesh/SkinWeightsPaintTool.h" |
Syntax
UCLASS (MinimalAPI)
class UWeightToolSelectionIsolator : public UObject
Inheritance Hierarchy
- UObjectBase → UObjectBaseUtility → UObject → UWeightToolSelectionIsolator
Variables
Protected
| Name | Type | Remarks | Include Path | Unreal Specifiers |
|---|---|---|---|---|
| bIsolatedMeshNeedsUpdated | bool | Flag to indicate the isolated mesh needs to be updated, handled on the next OnTick | SkeletalMesh/SkinWeightsPaintTool.h | |
| CurrentlyIsolatedTriangles | TArray< int32 > | When selection is isolated, we hide the full mesh and show a submesh when isolated selection is unhidden, we remap all changes from the submesh back to the full mesh | SkeletalMesh/SkinWeightsPaintTool.h | |
| PartialSubMesh | UE::Geometry::FDynamicSubmesh3 | Isolate selection sub-meshes | SkeletalMesh/SkinWeightsPaintTool.h | |
| WeightTool | TObjectPtr< USkinWeightsPaintTool > | SkeletalMesh/SkinWeightsPaintTool.h |
Functions
Public
| Name | Remarks | Include Path | Unreal Specifiers |
|---|---|---|---|
void ApplyWeightsToFullMesh() |
Apply weights directly | SkeletalMesh/SkinWeightsPaintTool.h | |
bool CanIsolate() |
Returns true if further isolation can be performed | SkeletalMesh/SkinWeightsPaintTool.h | |
int32 FullToPartialMeshVertexIndex
(
int32 FullMeshVertexIndex |
SkeletalMesh/SkinWeightsPaintTool.h | ||
const TArray< int32 > & GetIsolatedTriangles() |
Get the current triangles that are isolated | SkeletalMesh/SkinWeightsPaintTool.h | |
const FDynamicMesh3 & GetPartialMesh() |
Returns the isolated partial mesh (if PartialMeshDescription is not null, this will return an empty DynamicMesh3) | SkeletalMesh/SkinWeightsPaintTool.h | |
const UE::Geometry::FDynamicSubmesh3 & GetPartialSubmesh() |
Get the partial submesh mapping (valid only when IsMeshIsolated() is true) | SkeletalMesh/SkinWeightsPaintTool.h | |
USkinWeightsPaintTool & GetWeightTool() |
Get the weight tool this isolator is attached to | SkeletalMesh/SkinWeightsPaintTool.h | |
void InitialSetup
(
USkinWeightsPaintTool* InTool |
Call during tool Setup() | SkeletalMesh/SkinWeightsPaintTool.h | |
bool IsMeshIsolated() |
Returns true if any triangles are currently isolated | SkeletalMesh/SkinWeightsPaintTool.h | |
void IsolateSelectionAsTransaction() |
Isolate the current selection | SkeletalMesh/SkinWeightsPaintTool.h | |
int32 PartialToFullMeshVertexIndex
(
int32 PartialMeshVertexIndex |
Convert to/from partial-isolated and full mesh vertex indices | SkeletalMesh/SkinWeightsPaintTool.h | |
void RestoreFullMesh() |
Restores the whole mesh | SkeletalMesh/SkinWeightsPaintTool.h | |
void SetTrianglesToIsolate
(
const TArray< int32 >& TrianglesToIsolate |
Isolate the array of triangles | SkeletalMesh/SkinWeightsPaintTool.h | |
void UnIsolateSelectionAsTransaction() |
Unisolate the current selection | SkeletalMesh/SkinWeightsPaintTool.h | |
void UpdateIsolatedSelection() |
Call every tick to apply deferred changes to mesh | SkeletalMesh/SkinWeightsPaintTool.h |