TDynamicVertexAttribute

[TDynamicVertexAttribute](API\Plugins\DynamicMesh\TDynamicVertexAttribute) provides per-vertex storage of an attribute value

Windows
MacOS
Linux

Inheritance Hierarchy

TDynamicAttributeBase

TDynamicVertexAttribute

References

Module

DynamicMesh

Header

/Engine/Plugins/Experimental/GeometryProcessing/Source/DynamicMesh/Public/DynamicVertexAttribute.h

Include

#include "DynamicVertexAttribute.h"

Syntax

template<typename AttribValueType, int AttribDimension, typename ParentType>
class TDynamicVertexAttribute : public TDynamicAttributeBase< ParentType >

Remarks

TDynamicVertexAttribute provides per-vertex storage of an attribute value

Variables

Name Description

Protected variable

TDynamicVector<...

 

AttribValues

List of per-triangle attribute values

Protected variable

ParentType *...

 

Parent

The parent object (e.g. mesh, point set) this attribute belongs to

Constructors

Name Description

Public function

TDynamicVertexAttribute()

Create an empty overlay

Public function

TDynamicVertexAttribute

(
    ParentType* ParentIn,
    bool bAutoInit
)

Create an attribute for the given parent

Destructors

Name Description

Public function Virtual

~TDynamicVertexAttribute()

Functions

Name Description

Public function

void

 

CompactCopy

(
    const FCompactMaps& CompactMaps,
    const TDynamicVertexAttribute< Attr...
)

Public function

void

 

Copy

(
    const TDynamicVertexAttribute< Attr...
)

Set this overlay to contain the same arrays as the copy overlay

Public function

void

 

CopyValue

(
    int FromVertexID,
    int ToVertexID
)

Copy the attribute value at FromVertexID to ToVertexID

Public function Virtual

AttribValueT...

 

GetDefaultAttributeValue()

Public function

ParentType &...

 

GetParent()

Public function Const

const Parent...

 

GetParent()

Public function Const

void

 

GetValue

(
    int VertexID,
    AsType& Data
)

Get the element at a given index

Public function Const

void

 

GetValue

(
    int VertexID,
    AttribValueType* Data
)

Accessors/QueriesGet the element at a given index

Public function

void

 

Initialize

(
    AttribValueType InitialValue
)

Initialize the attribute values to the given max triangle ID

Public function

void

 

ResizeAttribStoreIfNeeded

(
    int VertexID
)

Protected function Virtual

void

 

SetAttributeFromBary

(
    int SetAttribute,
    int AttributeA,
    int AttributeB,
    int AttributeC,
    const FVector3d& BaryCoords
)

Set the value at an Attribute to be a barycentric interpolation of three other Attributes

Protected function Virtual

void

 

SetAttributeFromLerp

(
    int SetAttribute,
    int AttributeA,
    int AttributeB,
    double Alpha
)

Set the value at an Attribute to be a linear interpolation of two other Attributes

Public function

void

 

SetNewValue

(
    int NewVertexID,
    const AttribValueType* Data
)

Public function

void

 

SetValue

(
    int VertexID,
    const AttribValueType* Data
)

Set the element at a given index

Public function

void

 

SetValue

(
    int VertexID,
    const AsType& Data
)

Set the element at a given index

Overridden from TDynamicAttributeBase

Name Description

Public function Virtual Const

bool

 

CheckValidity

(
    bool bAllowNonmanifold,
    EValidityCheckFailMode FailMode
)

Check validity of attribute

Public function Virtual

void

 

CompactInPlace

(
    const FCompactMaps& CompactMaps
)

Compact the attribute in place

Public function Virtual Const

TDynamicAttr...

 

MakeCompactCopy

(
    const FCompactMaps& CompactMaps,
    ParentType* ParentIn
)

Allocate a new compact copy of the attribute layer, optionally with a different parent.

Public function Virtual Const

TDynamicAttr...

 

MakeCopy

(
    ParentType* ParentIn
)

Allocate a new copy of the attribute layer, optionally with a different parent

Public function Virtual Const

TDynamicAttr...

 

MakeNew

(
    ParentType* ParentIn
)

Allocate a new empty instance of the same type of attribute layer

Public function Virtual

TUniquePtr< ...

 

NewBlankChange()

Public function Virtual

void

 

OnCollapseEdge

(
    const FDynamicMesh3::FEdgeCollapseI...
)

Update the overlay to reflect an edge collapse in the parent

Public function Virtual

void

 

OnFlipEdge

(
    const FDynamicMesh3::FEdgeFlipInfo ...
)

Update the overlay to reflect an edge flip in the parent

Public function Virtual

void

 

OnMergeEdges

(
    const FDynamicMesh3::FMergeEdgesInf...
)

Update the overlay to reflect an edge merge in the parent

Public function Virtual

void

 

OnNewVertex

(
    int VertexID,
    bool bInserted
)

Public function Virtual

void

 

OnPokeTriangle

(
    const FDynamicMesh3::FPokeTriangleI...
)

Update the overlay to reflect a face poke in the parent

Public function Virtual

void

 

OnSplitEdge

(
    const FDynamicMesh3::FEdgeSplitInfo...
)

Update the overlay to reflect an edge split in the parent

Public function Virtual

void

 

OnSplitVertex

(
    const FDynamicMesh3::FVertexSplitIn...,
    const TArrayView< const int >& Tri...
)

Update the overlay to reflect a vertex split in the parent

Help shape the future of Unreal Engine documentation! Tell us how we're doing so we can serve you better.
Take our survey
Dismiss