Loading [MathJax]/extensions/tex2jax.js
MeshLib C++ Docs
All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Friends Macros Modules Pages Concepts
MRMeshC/MRFixSelfIntersections.h
Go to the documentation of this file.
1#pragma once
2#include "MRMeshFwd.h"
3
5
14
32
35
37MRMESHC_API MRFaceBitSet* mrFixSelfIntersectionsGetFaces( const MRMesh* mesh, bool touchIsIntersection, MRProgressCallback cb, MRString** errorString );
38
41
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:
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
MRMESHC_API MRFaceBitSet * mrFixSelfIntersectionsGetFaces(const MRMesh *mesh, bool touchIsIntersection, MRProgressCallback cb, MRString **errorString)
Find all self-intersections faces component-wise.
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:55
#define MR_EXTERN_C_END
Definition MRMeshC/MRMeshFwd.h:27
struct MRMesh MRMesh
Definition MRMeshC/MRMeshFwd.h:47
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:21
int maxExpand
Maximum expand count (edge steps from self-intersecting faces), should be > 0.
Definition MRMeshC/MRFixSelfIntersections.h:25
float subdivideEdgeLen
Definition MRMeshC/MRFixSelfIntersections.h:28
int relaxIterations
Maximum relax iterations.
Definition MRMeshC/MRFixSelfIntersections.h:23
bool touchIsIntersection
If true then count touching faces as self-intersections.
Definition MRMeshC/MRFixSelfIntersections.h:19
MRProgressCallback cb
Callback function.
Definition MRMeshC/MRFixSelfIntersections.h:30