Navigation
API > API/Plugins > API/Plugins/ModelingComponents
Helper class that can store a list of edges as pairs of triangle IDs and {0,1,2} indices into the triangle edge triplet, because regular FDynamicMesh edge IDs may not stay the same across some mesh operations that preserve the vertex/triangle ID topology. For instance, deleting and reinserting triangles during an undo/redo transaction may preserve all the relevant vids and tids, but change the eids of edges even though these edges still exist in the mesh topology.
Note this way of identifying edges will still not be stable in the case of triangles being reinserted with rotated indices (e.g. a triangle "a, b, c" reinserted as "b, c, d"). Storing Vid pairs would be necessary to be robust to that case, but finding an edge from vertices is a slower operation compared to the constant-time tri/index lookup used here.
| Name | FMeshEdgesFromTriangleSubIndices |
| Type | class |
| Header File | /Engine/Plugins/Runtime/MeshModelingToolset/Source/ModelingComponents/Public/Selection/StoredMeshSelectionUtil.h |
| Include Path | #include "Selection/StoredMeshSelectionUtil.h" |
Syntax
class FMeshEdgesFromTriangleSubIndices
Variables
Protected
| Name | Type | Remarks | Include Path | Unreal Specifiers |
|---|---|---|---|---|
| EdgeTriIndexPairs | TArray< TPair< int32, int8 > > | The pair is (tid, {0,1,2}), where the second element is an index into the edge triplet for that triangle. | Selection/StoredMeshSelectionUtil.h |
Functions
Public
| Name | Remarks | Include Path | Unreal Specifiers |
|---|---|---|---|
void Empty() |
Selection/StoredMeshSelectionUtil.h | ||
void GetEdgeIDs
(
const FDynamicMesh3& Mesh, |
Selection/StoredMeshSelectionUtil.h | ||
void InitializeFromEdgeIDs
(
const FDynamicMesh3& Mesh, |
Selection/StoredMeshSelectionUtil.h | ||
bool IsEmpty() |
Selection/StoredMeshSelectionUtil.h | ||
void Reset() |
Selection/StoredMeshSelectionUtil.h |