Navigation
API > API/Plugins > API/Plugins/DynamicMesh
Configurable attributes with separate topology (wedges) Volume preservation Plane (Garland/Heckbert) and triangle quadrics (Lindstrom/Turk), including probabilistic versions (Trettner/Kobbelt)
| Name | TAttrBasedQuadricErrorV2 |
| Type | class |
| Header File | /Engine/Plugins/Runtime/GeometryProcessing/Source/DynamicMesh/Public/MeshSimplificationQuadrics.h |
| Include Path | #include "MeshSimplificationQuadrics.h" |
Syntax
template<typename RealType>
class TAttrBasedQuadricErrorV2 : public UE::Geometry::TQuadricError< RealType >
Inheritance Hierarchy
- TQuadricError → TAttrBasedQuadricErrorV2
Constructors
| Name | Remarks | Include Path | Unreal Specifiers |
|---|---|---|---|
TAttrBasedQuadricErrorV2
(
const TVector< RealType >& P0, |
Initialize a face quadric | MeshSimplificationQuadrics.h | |
| Empty quadric | MeshSimplificationQuadrics.h | ||
TAttrBasedQuadricErrorV2
(
const TAttrBasedQuadricErrorV2& Q0, |
This should never be called. addition of vertex quadrics is not supported because it doesn't work for attribute wedges | MeshSimplificationQuadrics.h | |
TAttrBasedQuadricErrorV2
(
const TAttrBasedQuadricErrorV2& VertexQuadric0, |
Initialize to an edge quadric given the two vertex quadrics at the end points of the edge and (up to two) face quadrics corresponding to the overlap of both | MeshSimplificationQuadrics.h |
Classes
| Name | Remarks |
|---|---|
| FScopedAttributeDataBuilder | Helper class to register attributes to the quadric on construction. |
Structs
| Name | Remarks |
|---|---|
| FAttrWedgeQuadricData | |
| FOptions |
Enums
Public
| Name | Remarks |
|---|---|
| EQuadricVariant |
Typedefs
| Name | Type | Remarks | Include Path |
|---|---|---|---|
| BaseStruct | TQuadricError< RealType > | MeshSimplificationQuadrics.h | |
| FAttrArray | TArray< TVector< RealType >, TInlineAllocator< InlineAttrElements > > | MeshSimplificationQuadrics.h |
Constants
| Name | Type | Remarks | Include Path |
|---|---|---|---|
| InlineAttrElements | uint32 | MeshSimplificationQuadrics.h |
Functions
Public
| Name | Remarks | Include Path | Unreal Specifiers |
|---|---|---|---|
void AccumulateFaceQuadric
(
const int CornerIdx, |
If this is a vertex, accumulate a face quadric on to it. | MeshSimplificationQuadrics.h | |
bool CanCollapse() |
Is this a valid edge-collapse quadric? | MeshSimplificationQuadrics.h | |
FAttrArray ComputeAttributes
(
const TVector< RealType >& P |
Scale-correct attributes. | MeshSimplificationQuadrics.h | |
| Combination of geometry and attribute quadrics | MeshSimplificationQuadrics.h | ||
RealType EvaluateGeometryOnly
(
const TVector< RealType >& P |
Geometry quadrics only | MeshSimplificationQuadrics.h | |
RealType GetArea() |
Actual area, not the scaling term | MeshSimplificationQuadrics.h | |
int GetAttributeCount() |
MeshSimplificationQuadrics.h | ||
const FIndex3i & GetWedgeAttributeIndex
(
int WedgeIndex |
MeshSimplificationQuadrics.h | ||
int GetWedgeCount
(
int AttributeIndex |
MeshSimplificationQuadrics.h | ||
bool IsWedgeActive
(
int WedgeIndex |
MeshSimplificationQuadrics.h | ||
bool OptimalPoint
(
UE::Math::TVector< RealType >& OutResult, |
The optimal point minimizing the quadric error with respect to a volume conserving constraint | MeshSimplificationQuadrics.h | |
void RemoveFaceQuadric
(
const int CornerIdx, |
If this is a vertex, remove a face quadric from it (undoing accumulate face quadric) | MeshSimplificationQuadrics.h | |
void Scale
(
RealType Wt |
MeshSimplificationQuadrics.h | ||
bool ValidateArea() |
For each attribute, checks whether the area of all wedges adds up to the total area of the quadric. | MeshSimplificationQuadrics.h |
Protected
| Name | Remarks | Include Path | Unreal Specifiers |
|---|---|---|---|
void AAddCrossProductSquaredTranspose
(
const TVector< RealType >& V |
MeshSimplificationQuadrics.h | ||
void AAddOuterProduct
(
const TVector< RealType >& V |
Set A to rank-1 matrix V \otimes V = V V^T. | MeshSimplificationQuadrics.h | |
void AScale
(
const RealType Alpha |
MeshSimplificationQuadrics.h | ||
FAttrArray ComputeScaledAttributes
(
const TVector< RealType >& P |
MeshSimplificationQuadrics.h | ||
| MeshSimplificationQuadrics.h | |||
| MeshSimplificationQuadrics.h | |||
| MeshSimplificationQuadrics.h | |||
| MeshSimplificationQuadrics.h | |||
bool MergeVertexQuadricsToEdgeQuadric
(
const TAttrBasedQuadricErrorV2& VertexQuadric0, |
MeshSimplificationQuadrics.h | ||
bool OptimalPointImpl
(
TVector< RealType >& OutResult |
MeshSimplificationQuadrics.h |
Static
| Name | Remarks | Include Path | Unreal Specifiers |
|---|---|---|---|
static TAttrBasedQuadricErrorV2 Zero() |
MeshSimplificationQuadrics.h |