Navigation
API > API/Runtime > API/Runtime/GeometryCore > API/Runtime/GeometryCore/DynamicMesh
References
| Module | GeometryCore |
| Header | /Engine/Source/Runtime/GeometryCore/Public/DynamicMesh/NonManifoldMappingSupport.h |
| Include | #include "DynamicMesh/NonManifoldMappingSupport.h" |
Syntax
class FNonManifoldMappingSupport
Remarks
The FNonManifoldMappingSupport is a light-weight class that exists to interpret and manage additional DynamicMesh data stored when the mesh was created from a potentially non-manifold source mesh.
For context the FDynamicMesh3 is less accepting of non-manifold mesh features than some source mesh data-structures and conversion to a DynamicMesh may require changes to the topology ( e.g. vertex splits) and in such cases this class can be use to access the mapping from DynamicMesh vertices to the source mesh vertices that generated them.
Note: Since this class holds pointers to named attributes owned by the DynamicMesh, unintended behavior will result if said attributes are removed from the mesh while an associated NomManifoldSupport object is in use.
Also, any mapping information between the DynamicMesh and source data will be corrupted by topological changes to the DynamicMesh (e.g. edge splits, collapses etc).
Variables
| Type | Name | Description | |
|---|---|---|---|
| const FDynamicMesh3 * | DynamicMesh | ||
| const FNonManifoldSourceVertexIdAttribute * | NonManifoldSrcVIDsAttribute |
Constructors
| Type | Name | Description | |
|---|---|---|---|
FNonManifoldMappingSupport
(
const FDynamicMesh3& Mesh |
Functions
| Type | Name | Description | |
|---|---|---|---|
| bool | AttachNonManifoldVertexMappingData
(
const TArray< int32 >& VertexToNonManifoldVertexIDMap, |
Attaches or replaces non-manifold vertex mapping data to the provided mesh. | |
| int32 | GetOriginalNonManifoldVertexID
(
const int32 vid |
Return the vertex ID in the potentially non-manifold data used to generate this DynamicMesh associated with the provided vertex id. | |
| bool | IsNonManifoldVertexID
(
const int32 vid |
Return true if the provided DynamicMesh vertex id resulted from a non-manifold vertex in the source data. | |
| bool | Return true if attribute data indicates that the source data that was converted to this DynamicMesh contained non-manifold vertices. | ||
| void | RemoveAllNonManifoldMappingData
(
FDynamicMesh3& MeshInOut |
Removes all mapping data related to the non-manifold nature of the source data the produced this DynamicMesh. | |
| void | RemoveNonManifoldVertexMappingData
(
FDynamicMesh3& MeshInOut |
Removes vertex mapping data related to the non-manifold nature of the source data the produced this DynamicMesh. | |
| void | Reset
(
const FDynamicMesh3& Mesh |
Update the support for a new DynamicMesh. |
Constants
| Name | Description |
|---|---|
| NonManifoldMeshVIDsAttrName | Name used to identify vertex attribute data generated during conversion to a DynamicMesh in the case that the source was non-manifold. |