Navigation
API > API/Runtime > API/Runtime/GeometryCore > API/Runtime/GeometryCore/FDynamicMeshEditor
Overloads
| Name | Remarks | Include Path | Unreal Specifiers |
|---|---|---|---|
void DisconnectTriangles
(
const TArray< int >& Triangles, |
Disconnects triangles (without constructing boundary loops) such that the input Triangles are not connected to any other triangles in the mesh | DynamicMeshEditor.h | |
bool DisconnectTriangles
(
const TArray< int >& Triangles, |
Finds boundary loops of connected components of a set of triangles, and duplicates the vertices along the boundary, such that the triangles become disconnected. | DynamicMeshEditor.h | |
bool DisconnectTriangles
(
const TSet< int >& TriangleSet, |
Variant of DisconnectTriangles that takes a precomputed set of BoundaryLoops of the triangles, and a TSet of Triangles. | DynamicMeshEditor.h |
DisconnectTriangles(const TArray< int > &, bool)
Description
Disconnects triangles (without constructing boundary loops) such that the input Triangles are not connected to any other triangles in the mesh
| Name | DisconnectTriangles |
| Type | function |
| Header File | /Engine/Source/Runtime/GeometryCore/Public/DynamicMeshEditor.h |
| Include Path | #include "DynamicMeshEditor.h" |
| Source | /Engine/Source/Runtime/GeometryCore/Private/DynamicMeshEditor.cpp |
void DisconnectTriangles
(
const TArray < int > & Triangles,
bool bPreventBowties
)
Parameters
| Name | Remarks |
|---|---|
| Triangles | set of triangles |
| bPreventBowties | do some additional processing and vertex splitting as needed to prevent the creation of any new bowties |
DisconnectTriangles(const TArray< int > &, TArray< FLoopPairSet > &, bool)
Description
Finds boundary loops of connected components of a set of triangles, and duplicates the vertices along the boundary, such that the triangles become disconnected. If the triangle set includes boundary vertices, they cannot be disconnected as they will become unreferenced. The function returns false if boundary vertices are found, unless bHandleBoundaryVertices = true. In that case, the boundary vertex is duplicated, and the original vertex is kept with the "Inner" loop. The new unreferenced vertex is left on the "Outer" loop, and the attached edges do not exist so are set as InvalidID. The FLoopPairSet.bOuterIncludesIsolatedVertices flag is set to true if boundary vertices are encountered. Note: This function can create a mesh with bowties if you pass in a subset of triangles that would have bowtie connectivity. (it is impossible to create the paired LoopSetOut with 1:1 vertex pairs without leaving in the bowties?)
| Name | DisconnectTriangles |
| Type | function |
| Header File | /Engine/Source/Runtime/GeometryCore/Public/DynamicMeshEditor.h |
| Include Path | #include "DynamicMeshEditor.h" |
| Source | /Engine/Source/Runtime/GeometryCore/Private/DynamicMeshEditor.cpp |
bool DisconnectTriangles
(
const TArray < int > & Triangles,
TArray < FLoopPairSet > & LoopSetOut,
bool bHandleBoundaryVertices
)
true on success
Parameters
| Name | Remarks |
|---|---|
| Triangles | set of triangles |
| LoopSetOut | set of boundary loops. LoopA is original loop which remains with "outer" triangles, and LoopB is new boundary loop of triangle set |
| bHandleBoundaryVertices | if true, boundary vertices are handled as described above, otherwise function aborts and returns false if a boundary vertex is encountered |
DisconnectTriangles(const TSet< int > &, const TArray< FEdgeLoop > &, TArray< FLoopPairSet > &, bool)
Warnings * If the BoundaryLoops are not correct for the provided TriangleSet, this version will likely crash.
Description
Variant of DisconnectTriangles that takes a precomputed set of BoundaryLoops of the triangles, and a TSet of Triangles. These are both computed internally by the version that only takes a TArray of Triangles.
If the BoundaryLoops are not correct for the provided TriangleSet, this version will likely crash.
| Name | DisconnectTriangles |
| Type | function |
| Header File | /Engine/Source/Runtime/GeometryCore/Public/DynamicMeshEditor.h |
| Include Path | #include "DynamicMeshEditor.h" |
| Source | /Engine/Source/Runtime/GeometryCore/Private/DynamicMeshEditor.cpp |
bool DisconnectTriangles
(
const TSet< int > & TriangleSet,
const TArray < FEdgeLoop > & BoundaryLoops,
TArray < FLoopPairSet > & LoopSetOut,
bool bAllowBoundaryVertices
)
Parameters
| Name | Remarks |
|---|---|
| Triangles | set of triangles |
| BoundaryLoops | precomputed set of boundary EdgeLoops of TriangleSet |
| LoopSetOut | returned set of boundary loops. LoopA is original loop which remains with "outer" triangles previously connected to TriangleSet, and LoopB is new boundary loop of TriangleSet |
| bAllowBoundaryVertices | if true, mesh boundary vertices are duplicated and left on the 'outer' loop, otherwise function aborts and returns false if a boundary vertex is encountered |