Navigation
API > API/Runtime > API/Runtime/GeometryCore > API/Runtime/GeometryCore/DynamicMesh
Inheritance Hierarchy
- TDynamicAttributeBase
- TDynamicMeshTriangleAttribute
- TDynamicMeshScalarTriangleAttribute
References
| Module | GeometryCore |
| Header | /Engine/Source/Runtime/GeometryCore/Public/DynamicMesh/DynamicMeshTriangleAttribute.h |
| Include | #include "DynamicMesh/DynamicMeshTriangleAttribute.h" |
Syntax
template<typename AttribValueType, int AttribDimension>
class TDynamicMeshTriangleAttribute : public UE::Geometry::TDynamicAttributeBase< FDynamicMesh3 >
Remarks
TDynamicMeshTriangleAttribute is an add-on to a FDynamicMesh3 that allows for per-triangle storage of an attribute value.
The FDynamicMesh3 mesh topology operations (eg split/flip/collapse edge, poke face, etc) can be mirrored to the overlay via OnSplitEdge(), etc.
Variables
| Type | Name | Description | |
|---|---|---|---|
| TDynamicVector< AttribValueType > | AttribValues | List of per-triangle attribute values | |
| FDynamicMesh3 * | ParentMesh | The parent mesh this overlay belongs to |
Constructors
| Type | Name | Description | |
|---|---|---|---|
| Create an empty overlay | |||
TDynamicMeshTriangleAttribute
(
FDynamicMesh3* ParentMeshIn, |
Create an overlay for the given parent mesh |
Functions
| Type | Name | Description | |
|---|---|---|---|
| void | CompactCopy
(
const FCompactMaps& CompactMaps, |
||
| void | Copy
(
const TDynamicMeshTriangleAttribute< AttribValueType, AttribDimension >& Copy |
Set this overlay to contain the same arrays as the copy overlay | |
| bool | CopyThroughMapping
(
const TDynamicAttributeBase< FDynamicMesh3 >* Source, |
Accessors/Queries | |
| void | CopyValue
(
int FromTriangleID, |
Copy the attribute value at FromTriangleID to ToTriangleID | |
| AttribValueType | |||
| FDynamicMesh3 * | |||
| const FDynamicMesh3 * | |||
| void | GetValue
(
int TriangleID, |
Get the element at a given index | |
| void | GetValue
(
int TriangleID, |
Get the element at a given index | |
| void | Initialize
(
AttribValueType InitialValue |
Initialize the attribute values to the given max triangle ID | |
| bool | IsBorderEdge
(
int EdgeID, |
Returns true if the parent-mesh edge is a "Seam" in this overlay | |
| bool | IsSameAs
(
const TDynamicMeshTriangleAttribute< AttribValueType, AttribDimension >& Other, |
Returns true if this AttributeSet is the same as Other. | |
| FDynamicMeshAttributeBase * | MakeCompactCopy
(
const FCompactMaps& CompactMaps, |
||
| FDynamicMeshAttributeBase * | MakeCopy
(
FDynamicMesh3* ParentMeshIn |
||
| FDynamicMeshAttributeBase * | MakeNew
(
FDynamicMesh3* ParentMeshIn |
||
| void | ResizeAttribStoreIfNeeded
(
int TriangleID |
||
| void | Serialize
(
FArchive& Ar, |
Serialize to and from an archive. | |
| void | SetNewValue
(
int NewTriangleID, |
||
| void | SetValue
(
int TriangleID, |
Set the element at a given index | |
| void | SetValue
(
int TriangleID, |
Set the element at a given index |
Overridden from TDynamicAttributeBase
| Type | Name | Description | |
|---|---|---|---|
| void | CompactInPlace
(
const FCompactMaps& CompactMaps |
Compact the attribute in place | |
| bool | CopyIn
(
int RawID, |
Generic function to copy data in to an attribute; it's up to the derived class to map RawID to chunks of attribute data | |
| bool | CopyOut
(
int RawID, |
Generic function to copy data out of an attribute; it's up to the derived class to map RawID to chunks of attribute data | |
| TUniquePtr< FDynamicMeshAttributeChangeBase > | |||
| void | OnCollapseEdge
(
const DynamicMeshInfo::FEdgeCollapseInfo& CollapseInfo |
Update the overlay to reflect an edge collapse in the parent mesh | |
| void | OnFlipEdge
(
const DynamicMeshInfo::FEdgeFlipInfo& FlipInfo |
Update the overlay to reflect an edge flip in the parent mesh | |
| void | OnMergeEdges
(
const DynamicMeshInfo::FMergeEdgesInfo& MergeInfo |
Update the overlay to reflect an edge merge in the parent mesh | |
| void | OnNewTriangle
(
int TriangleID, |
||
| void | OnPokeTriangle
(
const DynamicMeshInfo::FPokeTriangleInfo& PokeInfo |
Update the overlay to reflect a face poke in the parent mesh | |
| void | OnSplitEdge
(
const DynamicMeshInfo::FEdgeSplitInfo& SplitInfo |
Update the overlay to reflect an edge split in the parent mesh | |
| void | OnSplitVertex
(
const DynamicMeshInfo::FVertexSplitInfo& SplitInfo, |
Update the overlay to reflect a vertex split in the parent |
Typedefs
| Name | Description |
|---|---|
| Super |