MRMESHC_API MRFixSelfIntersectionsSettings mrFixSelfIntersectionsSettingsNew(void)
creates a default instance
MRMESHC_API void mrFixSelfIntersectionsFix(MRMesh *mesh, const MRFixSelfIntersectionsSettings *settings, MRString **errorString)
Finds and fixes self-intersections per component:
MRMESHC_API MRFaceBitSet * mrFixSelfIntersectionsGetFaces(const MRMesh *mesh, MRProgressCallback cb, MRString **errorString)
Find all self-intersections faces component-wise.
MRFixSelfIntersectionsMethod
Fix method.
Definition MRMeshC/MRFixSelfIntersections.h:8
@ MRFixSelfIntersectionsMethodRelax
Relax mesh around self-intersections.
Definition MRMeshC/MRFixSelfIntersections.h:10
@ MRFixSelfIntersectionsMethodCutAndFill
Cut and re-fill regions around self-intersections (may fall back to Relax)
Definition MRMeshC/MRFixSelfIntersections.h:12
struct MRFixSelfIntersectionsSettings MRFixSelfIntersectionsSettings
Setting set for mesh self-intersections fix.
#define MR_EXTERN_C_BEGIN
Definition MRMeshC/MRMeshFwd.h:26
bool(* MRProgressCallback)(float)
Definition MRMeshC/MRMeshFwd.h:47
#define MR_EXTERN_C_END
Definition MRMeshC/MRMeshFwd.h:27
struct MRMesh MRMesh
Definition MRMeshC/MRMeshFwd.h:43
struct MRFaceBitSet MRFaceBitSet
Definition MRMeshC/MRMeshFwd.h:37
typedefMR_EXTERN_C_BEGIN struct MRString MRString
Definition MRMeshC/MRMeshFwd.h:32
#define MRMESHC_API
Definition MRMeshC/MRMeshFwd.h:19
Setting set for mesh self-intersections fix.
Definition MRMeshC/MRFixSelfIntersections.h:17
MRFixSelfIntersectionsMethod method
Fix method.
Definition MRMeshC/MRFixSelfIntersections.h:19
int maxExpand
Maximum expand count (edge steps from self-intersecting faces), should be > 0.
Definition MRMeshC/MRFixSelfIntersections.h:23
float subdivideEdgeLen
Definition MRMeshC/MRFixSelfIntersections.h:26
int relaxIterations
Maximum relax iterations.
Definition MRMeshC/MRFixSelfIntersections.h:21
MRProgressCallback cb
Callback function.
Definition MRMeshC/MRFixSelfIntersections.h:28