Parameters structure for mrFillHole
Structure has some options to control mrFillHole.
More...
#include <MRMeshFillHole.h>
Public Attributes | |
const MRFillHoleMetric * | metric |
MRFaceBitSet * | outNewFaces |
If not nullptr accumulate new faces. | |
MRFillHoleParamsMultipleEdgesResolveMode | multipleEdgesResolveMode |
bool | makeDegenerateBand |
int | maxPolygonSubdivisions |
bool * | stopBeforeBadTriangulation |
Parameters structure for mrFillHole
Structure has some options to control mrFillHole.
bool MRFillHoleParams::makeDegenerateBand |
If true creates degenerate faces band around hole to have sharp angle visualization
int MRFillHoleParams::maxPolygonSubdivisions |
The maximum number of polygon subdivisions on a triangle and two smaller polygons, must be 2 or larger
const MRFillHoleMetric* MRFillHoleParams::metric |
Specifies triangulation metric
default for mrFillHole: mrGetCircumscribedFillMetric
MRFillHoleParamsMultipleEdgesResolveMode MRFillHoleParams::multipleEdgesResolveMode |
If Strong makes additional efforts to avoid creating multiple edges, in some rare cases it is not possible (cases with extremely bad topology), if you faced one try to use MR::duplicateMultiHoleVertices before MR::fillHole
If Simple avoid creating edges that already exist in topology (default)
If None do not avoid multiple edges
MRFaceBitSet* MRFillHoleParams::outNewFaces |
If not nullptr accumulate new faces.
bool* MRFillHoleParams::stopBeforeBadTriangulation |
Input/output value, if it is present: returns true if triangulation was bad and do not actually fill hole, if triangulation is ok returns false; if it is not present fill hole trivially in case of bad triangulation, (or leaves bad triangulation, depending on metric)