struct MR_std_function_bool_from_float MR_std_function_bool_from_float
Definition MR3mf.h:10
struct MR_expected_MR_FaceBitSet_std_string MR_expected_MR_FaceBitSet_std_string
Definition MRContoursCut.h:20
struct MR_expected_void_std_string MR_expected_void_std_string
Definition MRCtm.h:20
struct MR_Mesh MR_Mesh
Definition MRCtm.h:13
MRC_API MR_expected_void_std_string * MR_SelfIntersections_fix(MR_Mesh *mesh, const MR_SelfIntersections_Settings *settings)
MRC_API void MR_SelfIntersections_Settings_Set_callback(MR_SelfIntersections_Settings *_this, MR_PassBy value_pass_by, MR_std_function_bool_from_float *value)
MRC_API void MR_SelfIntersections_Settings_Set_method(MR_SelfIntersections_Settings *_this, MR_SelfIntersections_Settings_Method value)
MRC_API MR_SelfIntersections_Settings * MR_SelfIntersections_Settings_AssignFromAnother(MR_SelfIntersections_Settings *_this, MR_PassBy _other_pass_by, MR_SelfIntersections_Settings *_other)
MRC_API MR_std_function_bool_from_float * MR_SelfIntersections_Settings_GetMutable_callback(MR_SelfIntersections_Settings *_this)
MRC_API void MR_SelfIntersections_Settings_Set_touchIsIntersection(MR_SelfIntersections_Settings *_this, bool value)
MRC_API int32_t * MR_SelfIntersections_Settings_GetMutable_maxExpand(MR_SelfIntersections_Settings *_this)
MRC_API const float * MR_SelfIntersections_Settings_Get_subdivideEdgeLen(const MR_SelfIntersections_Settings *_this)
MRC_API MR_SelfIntersections_Settings * MR_SelfIntersections_Settings_ConstructFromAnother(MR_PassBy _other_pass_by, MR_SelfIntersections_Settings *_other)
MRC_API void MR_SelfIntersections_Settings_DestroyArray(const MR_SelfIntersections_Settings *_this)
Destroys a heap-allocated array of MR_SelfIntersections_Settings. Does nothing if the pointer is null...
MRC_API MR_SelfIntersections_Settings * MR_SelfIntersections_Settings_DefaultConstructArray(size_t num_elems)
MRC_API MR_SelfIntersections_Settings * MR_SelfIntersections_Settings_OffsetMutablePtr(MR_SelfIntersections_Settings *ptr, ptrdiff_t i)
Offsets a pointer to an array element by i positions (not bytes). Use only if you're certain that the...
struct MR_SelfIntersections_Settings MR_SelfIntersections_Settings
Definition MRFixSelfIntersections.h:22
MRC_API float * MR_SelfIntersections_Settings_GetMutable_subdivideEdgeLen(MR_SelfIntersections_Settings *_this)
MRC_API const MR_std_function_bool_from_float * MR_SelfIntersections_Settings_Get_callback(const MR_SelfIntersections_Settings *_this)
MRC_API const MR_SelfIntersections_Settings * MR_SelfIntersections_Settings_OffsetPtr(const MR_SelfIntersections_Settings *ptr, ptrdiff_t i)
Offsets a pointer to an array element by i positions (not bytes). Use only if you're certain that the...
MRC_API MR_SelfIntersections_Settings_Method * MR_SelfIntersections_Settings_GetMutable_method(MR_SelfIntersections_Settings *_this)
MRC_API void MR_SelfIntersections_Settings_Set_maxExpand(MR_SelfIntersections_Settings *_this, int32_t value)
MRC_API void MR_SelfIntersections_Settings_Set_subdivideEdgeLen(MR_SelfIntersections_Settings *_this, float value)
MRC_API void MR_SelfIntersections_Settings_Destroy(const MR_SelfIntersections_Settings *_this)
Destroys a heap-allocated instance of MR_SelfIntersections_Settings. Does nothing if the pointer is n...
MRC_API MR_SelfIntersections_Settings * MR_SelfIntersections_Settings_ConstructFrom(bool touchIsIntersection, MR_SelfIntersections_Settings_Method method, int32_t relaxIterations, int32_t maxExpand, float subdivideEdgeLen, MR_PassBy callback_pass_by, MR_std_function_bool_from_float *callback)
MRC_API MR_expected_MR_FaceBitSet_std_string * MR_SelfIntersections_getFaces(const MR_Mesh *mesh, const bool *touchIsIntersection, MR_PassBy cb_pass_by, MR_std_function_bool_from_float *cb)
MRC_API const MR_SelfIntersections_Settings_Method * MR_SelfIntersections_Settings_Get_method(const MR_SelfIntersections_Settings *_this)
@ MR_SelfIntersections_Settings_Method_Relax
Relax mesh around self-intersections.
Definition MRFixSelfIntersections.h:29
@ MR_SelfIntersections_Settings_Method_CutAndFill
Cut and re-fill regions around self-intersections (may fall back to Relax)
Definition MRFixSelfIntersections.h:31
MRC_API const bool * MR_SelfIntersections_Settings_Get_touchIsIntersection(const MR_SelfIntersections_Settings *_this)
MRC_API int32_t * MR_SelfIntersections_Settings_GetMutable_relaxIterations(MR_SelfIntersections_Settings *_this)
MRC_API MR_SelfIntersections_Settings * MR_SelfIntersections_Settings_DefaultConstruct(void)
MRC_API void MR_SelfIntersections_Settings_Set_relaxIterations(MR_SelfIntersections_Settings *_this, int32_t value)
MRC_API bool * MR_SelfIntersections_Settings_GetMutable_touchIsIntersection(MR_SelfIntersections_Settings *_this)
MRC_API const int32_t * MR_SelfIntersections_Settings_Get_maxExpand(const MR_SelfIntersections_Settings *_this)
int32_t MR_SelfIntersections_Settings_Method
Fix method.
Definition MRFixSelfIntersections.h:25
MRC_API const int32_t * MR_SelfIntersections_Settings_Get_relaxIterations(const MR_SelfIntersections_Settings *_this)
MR_PassBy
Definition common.h:19
#define MRC_API
Definition exports.h:11