Navigation
API > API/Plugins > API/Plugins/DynamicMesh > API/Plugins/DynamicMesh/FMeshWeights
Description
Compute cotan-weighted blend for a vertex one-ring, with some weight analysis/clamping to avoid vertices getting "stuck" in explicit integration/iterations. If failure is detected, Uniform centroid is returned, which does cause some tangential flow. Equivalent to CotanCentroidSafe() if the weights are used to blend vertex positions, but can be used to weight other properties.
| Name | CotanWeightsBlendSafe |
| Type | function |
| Header File | /Engine/Plugins/Runtime/GeometryProcessing/Source/DynamicMesh/Public/MeshWeights.h |
| Include Path | #include "MeshWeights.h" |
| Source | /Engine/Plugins/Runtime/GeometryProcessing/Source/DynamicMesh/Private/MeshWeights.cpp |
static void CotanWeightsBlendSafe
(
const FDynamicMesh3 & Mesh,
int32 VertexIndex,
TFunctionRef < void> BlendingFunc,
double DegenerateTol,
bool * bFailedToUniform
)
Parameters
| Name | Remarks |
|---|---|
| BlendingFunc | BlendingFunc(NbrVertexID, Weight) will be called for every one-ring neighbour vertex |
| DegenerateTol | if any weights are larger than this value, return uniform weights instead. Should be > 1. |
| bFailedToUniform | will be set to true if non-null and result was clamped |