#include "MRMeshFwd.h"
#include "MRId.h"
Go to the source code of this file.
◆ MRFillCombineMetric
typedef double(* MRFillCombineMetric) (double, double) |
is called to combine metrics from different candidates, if it is not set it just summarizes input
◆ MRFillEdgeMetric
is called for each edge, if it is set
◆ MRFillHoleMetric
typedef struct MRFillHoleMetric MRFillHoleMetric |
◆ mrCalcCombinedFillMetric()
Computes combined metric after filling a hole.
◆ mrFillHoleMetricFree()
◆ mrFillHoleMetricNew()
◆ mrGetCircumscribedMetric()
This metric minimizes the sum of circumcircle radii for all triangles in the triangulation. It is rather fast to calculate, and it results in typically good triangulations.
◆ mrGetComplexFillMetric()
This metric minimizes the sum of triangleMetric for all triangles in the triangulation plus the sum edgeMetric for all edges inside and on the boundary of the triangulation.
Where
triangleMetric is proportional to weighted triangle area and triangle aspect ratio
edgeMetric grows with angle between triangles as ( ( 1 - cos( x ) ) / ( 1 + cos( x ) ) ) ^ 4.
◆ mrGetMinAreaMetric()
This metric is for triangulation construction with minimal summed area of triangles. Warning: this metric can produce degenerated triangles
◆ mrGetPlaneFillMetric()
Same as mrGetCircumscribedFillMetric, but with extra penalty for the triangles having normals looking in the opposite side of plane containing left of (e).
◆ mrGetPlaneNormalizedFillMetric()
Similar to mrGetPlaneFillMetric with extra penalty for the triangles having normals looking in the opposite side of plane containing left of (e), but the metric minimizes the sum of circumcircle radius times aspect ratio for all triangles in the triangulation.
◆ mrGetUniversalMetric()
This metric minimizes the maximal dihedral angle between the faces in the triangulation and on its boundary, and it avoids creating too degenerate triangles; for planar holes it is the same as getCircumscribedMetric
◆ MRFillTriangleMetric
is called for each triangle, if it is set