#include <MRCMesh/MRBooleanOperation.h>#include <MRCMisc/common.h>#include <MRCMisc/exports.h>#include <stdbool.h>#include <stddef.h>Go to the source code of this file.
| typedef struct MR_AffineXf3f MR_AffineXf3f | 
| typedef struct MR_BooleanParameters MR_BooleanParameters | 
Generated from class MR::BooleanParameters. 
| typedef struct MR_BooleanPreCutResult MR_BooleanPreCutResult | 
Generated from class MR::BooleanPreCutResult. 
| typedef struct MR_BooleanResult MR_BooleanResult | 
Generated from class MR::BooleanResult. 
| typedef struct MR_BooleanResultMapper MR_BooleanResultMapper | 
| typedef struct MR_BooleanResultPoints MR_BooleanResultPoints | 
vertices and points representing mesh intersection result Generated from class MR::BooleanResultPoints. 
| typedef struct MR_CoordinateConverters MR_CoordinateConverters | 
| typedef struct MR_expected_MR_BooleanResultPoints_std_string MR_expected_MR_BooleanResultPoints_std_string | 
| typedef struct MR_expected_MR_Mesh_std_string MR_expected_MR_Mesh_std_string | 
| typedef struct MR_FaceBitSet MR_FaceBitSet | 
| typedef struct MR_std_function_bool_from_float MR_std_function_bool_from_float | 
| typedef struct MR_std_string MR_std_string | 
| typedef struct MR_std_vector_MR_OneMeshContour MR_std_vector_MR_OneMeshContour | 
| typedef struct MR_std_vector_MR_Vector3f MR_std_vector_MR_Vector3f | 
| typedef struct MR_VertBitSet MR_VertBitSet | 
| MRC_API MR_BooleanResult * MR_boolean_4_const_MR_Mesh_ref | ( | const MR_Mesh * | meshA, | 
| const MR_Mesh * | meshB, | ||
| MR_BooleanOperation | operation, | ||
| const MR_BooleanParameters * | params ) | 
Generated from function MR::boolean. Parameter meshA can not be null. It is a single object. Parameter meshB can not be null. It is a single object. Parameter params is a single object. Parameter params has a default argument: {}, pass a null pointer to use it. Never returns null. Returns an instance allocated on the heap! Must call MR_BooleanResult_Destroy() to free it when you're done using it. 
| MRC_API MR_BooleanResult * MR_boolean_4_MR_Mesh_rvalue_ref | ( | MR_Mesh * | meshA, | 
| MR_Mesh * | meshB, | ||
| MR_BooleanOperation | operation, | ||
| const MR_BooleanParameters * | params ) | 
Generated from function MR::boolean. Parameter meshA can not be null. It is a single object. In C++ this parameter takes an rvalue reference: it might invalidate the passed object, but if your pointer is owning, you must still destroy it manually later. Parameter meshB can not be null. It is a single object. In C++ this parameter takes an rvalue reference: it might invalidate the passed object, but if your pointer is owning, you must still destroy it manually later. Parameter params is a single object. Parameter params has a default argument: {}, pass a null pointer to use it. Never returns null. Returns an instance allocated on the heap! Must call MR_BooleanResult_Destroy() to free it when you're done using it. 
| MRC_API MR_BooleanResult * MR_boolean_6_const_MR_Mesh_ref | ( | const MR_Mesh * | meshA, | 
| const MR_Mesh * | meshB, | ||
| MR_BooleanOperation | operation, | ||
| const MR_AffineXf3f * | rigidB2A, | ||
| MR_BooleanResultMapper * | mapper, | ||
| MR_PassBy | cb_pass_by, | ||
| MR_std_function_bool_from_float * | cb ) | 
Performs CSG operation on two meshes.
Makes new mesh - result of boolean operation on mesh A and mesh B 
| meshA | Input mesh A | 
| meshB | Input mesh B | 
| operation | CSG operation to perform | 
| rigidB2A | Transform from mesh Bspace to meshAspace | 
| mapper | Optional output structure to map mesh Aand meshBtopology to result mesh topology | 
MR::boolean. Parameter meshA can not be null. It is a single object. Parameter meshB can not be null. It is a single object. Parameter mapper defaults to a null pointer in C++. Parameter cb has a default argument: {}, pass MR_PassBy_DefaultArgument and a null pointer to use it. Never returns null. Returns an instance allocated on the heap! Must call MR_BooleanResult_Destroy() to free it when you're done using it. | MRC_API MR_BooleanResult * MR_boolean_6_MR_Mesh_rvalue_ref | ( | MR_Mesh * | meshA, | 
| MR_Mesh * | meshB, | ||
| MR_BooleanOperation | operation, | ||
| const MR_AffineXf3f * | rigidB2A, | ||
| MR_BooleanResultMapper * | mapper, | ||
| MR_PassBy | cb_pass_by, | ||
| MR_std_function_bool_from_float * | cb ) | 
Generated from function MR::boolean. Parameter meshA can not be null. It is a single object. In C++ this parameter takes an rvalue reference: it might invalidate the passed object, but if your pointer is owning, you must still destroy it manually later. Parameter meshB can not be null. It is a single object. In C++ this parameter takes an rvalue reference: it might invalidate the passed object, but if your pointer is owning, you must still destroy it manually later. Parameter mapper defaults to a null pointer in C++. Parameter cb has a default argument: {}, pass MR_PassBy_DefaultArgument and a null pointer to use it. Never returns null. Returns an instance allocated on the heap! Must call MR_BooleanResult_Destroy() to free it when you're done using it. 
| MRC_API MR_BooleanParameters * MR_BooleanParameters_AssignFromAnother | ( | MR_BooleanParameters * | _this, | 
| MR_PassBy | _other_pass_by, | ||
| MR_BooleanParameters * | _other ) | 
Generated from a method of class MR::BooleanParameters named operator=. Parameter _this can not be null. It is a single object. The returned pointer will never be null. It is non-owning, do NOT destroy it. 
| MRC_API MR_BooleanParameters * MR_BooleanParameters_ConstructFrom | ( | const MR_AffineXf3f * | rigidB2A, | 
| MR_BooleanResultMapper * | mapper, | ||
| MR_BooleanPreCutResult * | outPreCutA, | ||
| MR_BooleanPreCutResult * | outPreCutB, | ||
| MR_std_vector_std_vector_MR_EdgeId * | outCutEdges, | ||
| bool | mergeAllNonIntersectingComponents, | ||
| bool | forceCut, | ||
| MR_PassBy | cb_pass_by, | ||
| MR_std_function_bool_from_float * | cb ) | 
Constructs MR::BooleanParameters elementwise. Never returns null. Returns an instance allocated on the heap! Must call MR_BooleanParameters_Destroy() to free it when you're done using it. 
| MRC_API MR_BooleanParameters * MR_BooleanParameters_ConstructFromAnother | ( | MR_PassBy | _other_pass_by, | 
| MR_BooleanParameters * | _other ) | 
Generated from a constructor of class MR::BooleanParameters. Never returns null. Returns an instance allocated on the heap! Must call MR_BooleanParameters_Destroy() to free it when you're done using it. 
| MRC_API MR_BooleanParameters * MR_BooleanParameters_DefaultConstruct | ( | void | ) | 
Constructs an empty (default-constructed) instance. Never returns null. Returns an instance allocated on the heap! Must call MR_BooleanParameters_Destroy() to free it when you're done using it. 
| MRC_API MR_BooleanParameters * MR_BooleanParameters_DefaultConstructArray | ( | size_t | num_elems | ) | 
Constructs an array of empty (default-constructed) instances, of the specified size. Will never return null. The array must be destroyed using MR_BooleanParameters_DestroyArray(). Use MR_BooleanParameters_OffsetMutablePtr() and MR_BooleanParameters_OffsetPtr() to access the array elements. 
| MRC_API void MR_BooleanParameters_Destroy | ( | const MR_BooleanParameters * | _this | ) | 
Destroys a heap-allocated instance of MR_BooleanParameters. Does nothing if the pointer is null. 
| MRC_API void MR_BooleanParameters_DestroyArray | ( | const MR_BooleanParameters * | _this | ) | 
Destroys a heap-allocated array of MR_BooleanParameters. Does nothing if the pointer is null. 
| MRC_API const MR_std_function_bool_from_float * MR_BooleanParameters_Get_cb | ( | const MR_BooleanParameters * | _this | ) | 
Returns a pointer to a member variable of class MR::BooleanParameters named cb. Parameter _this can not be null. It is a single object. The returned pointer will never be null. It is non-owning, do NOT destroy it. 
| MRC_API const bool * MR_BooleanParameters_Get_forceCut | ( | const MR_BooleanParameters * | _this | ) | 
If this option is enabled boolean will try to cut meshes even if there are self-intersections in intersecting area it might work in some cases, but in general it might prevent fast error report and lead to other errors along the way
MR::BooleanParameters named forceCut. Parameter _this can not be null. It is a single object. The returned pointer will never be null. It is non-owning, do NOT destroy it. | MRC_API MR_BooleanResultMapper *const * MR_BooleanParameters_Get_mapper | ( | const MR_BooleanParameters * | _this | ) | 
Optional output structure to map mesh A and mesh B topology to result mesh topology Returns a pointer to a member variable of class MR::BooleanParameters named mapper. Parameter _this can not be null. It is a single object. The returned pointer will never be null. It is non-owning, do NOT destroy it. 
| MRC_API const bool * MR_BooleanParameters_Get_mergeAllNonIntersectingComponents | ( | const MR_BooleanParameters * | _this | ) | 
By default produce valid operation on disconnected components if set merge all non-intersecting components Returns a pointer to a member variable of class MR::BooleanParameters named mergeAllNonIntersectingComponents. Parameter _this can not be null. It is a single object. The returned pointer will never be null. It is non-owning, do NOT destroy it. 
| MRC_API MR_std_vector_std_vector_MR_EdgeId *const * MR_BooleanParameters_Get_outCutEdges | ( | const MR_BooleanParameters * | _this | ) | 
Optional output cut edges of booleaned meshes Returns a pointer to a member variable of class MR::BooleanParameters named outCutEdges. Parameter _this can not be null. It is a single object. The returned pointer will never be null. It is non-owning, do NOT destroy it. 
| MRC_API MR_BooleanPreCutResult *const * MR_BooleanParameters_Get_outPreCutA | ( | const MR_BooleanParameters * | _this | ) | 
Optional precut output of meshA, if present - does not perform boolean and just return them Returns a pointer to a member variable of class MR::BooleanParameters named outPreCutA. Parameter _this can not be null. It is a single object. The returned pointer will never be null. It is non-owning, do NOT destroy it. 
| MRC_API MR_BooleanPreCutResult *const * MR_BooleanParameters_Get_outPreCutB | ( | const MR_BooleanParameters * | _this | ) | 
Optional precut output of meshB, if present - does not perform boolean and just return them Returns a pointer to a member variable of class MR::BooleanParameters named outPreCutB. Parameter _this can not be null. It is a single object. The returned pointer will never be null. It is non-owning, do NOT destroy it. 
| MRC_API const MR_AffineXf3f *const * MR_BooleanParameters_Get_rigidB2A | ( | const MR_BooleanParameters * | _this | ) | 
Transform from mesh B space to mesh A space Returns a pointer to a member variable of class MR::BooleanParameters named rigidB2A. Parameter _this can not be null. It is a single object. The returned pointer will never be null. It is non-owning, do NOT destroy it. 
| MRC_API MR_std_function_bool_from_float * MR_BooleanParameters_GetMutable_cb | ( | MR_BooleanParameters * | _this | ) | 
Returns a mutable pointer to a member variable of class MR::BooleanParameters named cb. Parameter _this can not be null. It is a single object. The returned pointer will never be null. It is non-owning, do NOT destroy it. 
| MRC_API bool * MR_BooleanParameters_GetMutable_forceCut | ( | MR_BooleanParameters * | _this | ) | 
If this option is enabled boolean will try to cut meshes even if there are self-intersections in intersecting area it might work in some cases, but in general it might prevent fast error report and lead to other errors along the way
MR::BooleanParameters named forceCut. Parameter _this can not be null. It is a single object. The returned pointer will never be null. It is non-owning, do NOT destroy it. | MRC_API MR_BooleanResultMapper ** MR_BooleanParameters_GetMutable_mapper | ( | MR_BooleanParameters * | _this | ) | 
Optional output structure to map mesh A and mesh B topology to result mesh topology Returns a mutable pointer to a member variable of class MR::BooleanParameters named mapper. Parameter _this can not be null. It is a single object. The returned pointer will never be null. It is non-owning, do NOT destroy it. 
| MRC_API bool * MR_BooleanParameters_GetMutable_mergeAllNonIntersectingComponents | ( | MR_BooleanParameters * | _this | ) | 
By default produce valid operation on disconnected components if set merge all non-intersecting components Returns a mutable pointer to a member variable of class MR::BooleanParameters named mergeAllNonIntersectingComponents. Parameter _this can not be null. It is a single object. The returned pointer will never be null. It is non-owning, do NOT destroy it. 
| MRC_API MR_std_vector_std_vector_MR_EdgeId ** MR_BooleanParameters_GetMutable_outCutEdges | ( | MR_BooleanParameters * | _this | ) | 
Optional output cut edges of booleaned meshes Returns a mutable pointer to a member variable of class MR::BooleanParameters named outCutEdges. Parameter _this can not be null. It is a single object. The returned pointer will never be null. It is non-owning, do NOT destroy it. 
| MRC_API MR_BooleanPreCutResult ** MR_BooleanParameters_GetMutable_outPreCutA | ( | MR_BooleanParameters * | _this | ) | 
Optional precut output of meshA, if present - does not perform boolean and just return them Returns a mutable pointer to a member variable of class MR::BooleanParameters named outPreCutA. Parameter _this can not be null. It is a single object. The returned pointer will never be null. It is non-owning, do NOT destroy it. 
| MRC_API MR_BooleanPreCutResult ** MR_BooleanParameters_GetMutable_outPreCutB | ( | MR_BooleanParameters * | _this | ) | 
Optional precut output of meshB, if present - does not perform boolean and just return them Returns a mutable pointer to a member variable of class MR::BooleanParameters named outPreCutB. Parameter _this can not be null. It is a single object. The returned pointer will never be null. It is non-owning, do NOT destroy it. 
| MRC_API const MR_AffineXf3f ** MR_BooleanParameters_GetMutable_rigidB2A | ( | MR_BooleanParameters * | _this | ) | 
Transform from mesh B space to mesh A space Returns a mutable pointer to a member variable of class MR::BooleanParameters named rigidB2A. Parameter _this can not be null. It is a single object. The returned pointer will never be null. It is non-owning, do NOT destroy it. 
| MRC_API MR_BooleanParameters * MR_BooleanParameters_OffsetMutablePtr | ( | MR_BooleanParameters * | ptr, | 
| ptrdiff_t | i ) | 
Offsets a pointer to an array element by i positions (not bytes). Use only if you're certain that the pointer points to an array element. 
| MRC_API const MR_BooleanParameters * MR_BooleanParameters_OffsetPtr | ( | const MR_BooleanParameters * | ptr, | 
| ptrdiff_t | i ) | 
Offsets a pointer to an array element by i positions (not bytes). Use only if you're certain that the pointer points to an array element. 
| MRC_API void MR_BooleanParameters_Set_cb | ( | MR_BooleanParameters * | _this, | 
| MR_PassBy | value_pass_by, | ||
| MR_std_function_bool_from_float * | value ) | 
Modifies a member variable of class MR::BooleanParameters named cb. Parameter _this can not be null. It is a single object. 
| MRC_API void MR_BooleanParameters_Set_forceCut | ( | MR_BooleanParameters * | _this, | 
| bool | value ) | 
If this option is enabled boolean will try to cut meshes even if there are self-intersections in intersecting area it might work in some cases, but in general it might prevent fast error report and lead to other errors along the way
MR::BooleanParameters named forceCut. Parameter _this can not be null. It is a single object. | MRC_API void MR_BooleanParameters_Set_mapper | ( | MR_BooleanParameters * | _this, | 
| MR_BooleanResultMapper * | value ) | 
Optional output structure to map mesh A and mesh B topology to result mesh topology Modifies a member variable of class MR::BooleanParameters named mapper. Parameter _this can not be null. It is a single object. 
| MRC_API void MR_BooleanParameters_Set_mergeAllNonIntersectingComponents | ( | MR_BooleanParameters * | _this, | 
| bool | value ) | 
By default produce valid operation on disconnected components if set merge all non-intersecting components Modifies a member variable of class MR::BooleanParameters named mergeAllNonIntersectingComponents. Parameter _this can not be null. It is a single object. 
| MRC_API void MR_BooleanParameters_Set_outCutEdges | ( | MR_BooleanParameters * | _this, | 
| MR_std_vector_std_vector_MR_EdgeId * | value ) | 
Optional output cut edges of booleaned meshes Modifies a member variable of class MR::BooleanParameters named outCutEdges. Parameter _this can not be null. It is a single object. 
| MRC_API void MR_BooleanParameters_Set_outPreCutA | ( | MR_BooleanParameters * | _this, | 
| MR_BooleanPreCutResult * | value ) | 
Optional precut output of meshA, if present - does not perform boolean and just return them Modifies a member variable of class MR::BooleanParameters named outPreCutA. Parameter _this can not be null. It is a single object. 
| MRC_API void MR_BooleanParameters_Set_outPreCutB | ( | MR_BooleanParameters * | _this, | 
| MR_BooleanPreCutResult * | value ) | 
Optional precut output of meshB, if present - does not perform boolean and just return them Modifies a member variable of class MR::BooleanParameters named outPreCutB. Parameter _this can not be null. It is a single object. 
| MRC_API void MR_BooleanParameters_Set_rigidB2A | ( | MR_BooleanParameters * | _this, | 
| const MR_AffineXf3f * | value ) | 
Transform from mesh B space to mesh A space Modifies a member variable of class MR::BooleanParameters named rigidB2A. Parameter _this can not be null. It is a single object. 
| MRC_API MR_BooleanPreCutResult * MR_BooleanPreCutResult_AssignFromAnother | ( | MR_BooleanPreCutResult * | _this, | 
| MR_PassBy | _other_pass_by, | ||
| MR_BooleanPreCutResult * | _other ) | 
Generated from a method of class MR::BooleanPreCutResult named operator=. Parameter _this can not be null. It is a single object. The returned pointer will never be null. It is non-owning, do NOT destroy it. 
| MRC_API MR_BooleanPreCutResult * MR_BooleanPreCutResult_ConstructFrom | ( | MR_PassBy | mesh_pass_by, | 
| MR_Mesh * | mesh, | ||
| MR_PassBy | contours_pass_by, | ||
| MR_std_vector_MR_OneMeshContour * | contours ) | 
Constructs MR::BooleanPreCutResult elementwise. Never returns null. Returns an instance allocated on the heap! Must call MR_BooleanPreCutResult_Destroy() to free it when you're done using it. 
| MRC_API MR_BooleanPreCutResult * MR_BooleanPreCutResult_ConstructFromAnother | ( | MR_PassBy | _other_pass_by, | 
| MR_BooleanPreCutResult * | _other ) | 
Generated from a constructor of class MR::BooleanPreCutResult. Never returns null. Returns an instance allocated on the heap! Must call MR_BooleanPreCutResult_Destroy() to free it when you're done using it. 
| MRC_API MR_BooleanPreCutResult * MR_BooleanPreCutResult_DefaultConstruct | ( | void | ) | 
Constructs an empty (default-constructed) instance. Never returns null. Returns an instance allocated on the heap! Must call MR_BooleanPreCutResult_Destroy() to free it when you're done using it. 
| MRC_API MR_BooleanPreCutResult * MR_BooleanPreCutResult_DefaultConstructArray | ( | size_t | num_elems | ) | 
Constructs an array of empty (default-constructed) instances, of the specified size. Will never return null. The array must be destroyed using MR_BooleanPreCutResult_DestroyArray(). Use MR_BooleanPreCutResult_OffsetMutablePtr() and MR_BooleanPreCutResult_OffsetPtr() to access the array elements. 
| MRC_API void MR_BooleanPreCutResult_Destroy | ( | const MR_BooleanPreCutResult * | _this | ) | 
Destroys a heap-allocated instance of MR_BooleanPreCutResult. Does nothing if the pointer is null. 
| MRC_API void MR_BooleanPreCutResult_DestroyArray | ( | const MR_BooleanPreCutResult * | _this | ) | 
Destroys a heap-allocated array of MR_BooleanPreCutResult. Does nothing if the pointer is null. 
| MRC_API const MR_std_vector_MR_OneMeshContour * MR_BooleanPreCutResult_Get_contours | ( | const MR_BooleanPreCutResult * | _this | ) | 
Returns a pointer to a member variable of class MR::BooleanPreCutResult named contours. Parameter _this can not be null. It is a single object. The returned pointer will never be null. It is non-owning, do NOT destroy it. 
| MRC_API const MR_Mesh * MR_BooleanPreCutResult_Get_mesh | ( | const MR_BooleanPreCutResult * | _this | ) | 
Returns a pointer to a member variable of class MR::BooleanPreCutResult named mesh. Parameter _this can not be null. It is a single object. The returned pointer will never be null. It is non-owning, do NOT destroy it. 
| MRC_API MR_std_vector_MR_OneMeshContour * MR_BooleanPreCutResult_GetMutable_contours | ( | MR_BooleanPreCutResult * | _this | ) | 
Returns a mutable pointer to a member variable of class MR::BooleanPreCutResult named contours. Parameter _this can not be null. It is a single object. The returned pointer will never be null. It is non-owning, do NOT destroy it. 
| MRC_API MR_Mesh * MR_BooleanPreCutResult_GetMutable_mesh | ( | MR_BooleanPreCutResult * | _this | ) | 
Returns a mutable pointer to a member variable of class MR::BooleanPreCutResult named mesh. Parameter _this can not be null. It is a single object. The returned pointer will never be null. It is non-owning, do NOT destroy it. 
| MRC_API MR_BooleanPreCutResult * MR_BooleanPreCutResult_OffsetMutablePtr | ( | MR_BooleanPreCutResult * | ptr, | 
| ptrdiff_t | i ) | 
Offsets a pointer to an array element by i positions (not bytes). Use only if you're certain that the pointer points to an array element. 
| MRC_API const MR_BooleanPreCutResult * MR_BooleanPreCutResult_OffsetPtr | ( | const MR_BooleanPreCutResult * | ptr, | 
| ptrdiff_t | i ) | 
Offsets a pointer to an array element by i positions (not bytes). Use only if you're certain that the pointer points to an array element. 
| MRC_API void MR_BooleanPreCutResult_Set_contours | ( | MR_BooleanPreCutResult * | _this, | 
| MR_PassBy | value_pass_by, | ||
| MR_std_vector_MR_OneMeshContour * | value ) | 
Modifies a member variable of class MR::BooleanPreCutResult named contours. Parameter _this can not be null. It is a single object. 
| MRC_API void MR_BooleanPreCutResult_Set_mesh | ( | MR_BooleanPreCutResult * | _this, | 
| MR_PassBy | value_pass_by, | ||
| MR_Mesh * | value ) | 
Modifies a member variable of class MR::BooleanPreCutResult named mesh. Parameter _this can not be null. It is a single object. 
| MRC_API MR_Mesh * MR_BooleanResult_arrow | ( | MR_BooleanResult * | _this | ) | 
Generated from a method of class MR::BooleanResult named operator->. Parameter _this can not be null. It is a single object. 
| MRC_API const MR_Mesh * MR_BooleanResult_arrow_const | ( | const MR_BooleanResult * | _this | ) | 
Generated from a method of class MR::BooleanResult named operator->. Parameter _this can not be null. It is a single object. 
| MRC_API MR_BooleanResult * MR_BooleanResult_AssignFromAnother | ( | MR_BooleanResult * | _this, | 
| MR_PassBy | _other_pass_by, | ||
| MR_BooleanResult * | _other ) | 
Generated from a method of class MR::BooleanResult named operator=. Parameter _this can not be null. It is a single object. The returned pointer will never be null. It is non-owning, do NOT destroy it. 
| MRC_API MR_BooleanResult * MR_BooleanResult_ConstructFrom | ( | MR_PassBy | mesh_pass_by, | 
| MR_Mesh * | mesh, | ||
| MR_PassBy | meshABadContourFaces_pass_by, | ||
| MR_FaceBitSet * | meshABadContourFaces, | ||
| MR_PassBy | meshBBadContourFaces_pass_by, | ||
| MR_FaceBitSet * | meshBBadContourFaces, | ||
| const char * | errorString, | ||
| const char * | errorString_end ) | 
Constructs MR::BooleanResult elementwise. Parameter errorString can not be null. If errorString_end is null, then errorString is assumed to be null-terminated. Never returns null. Returns an instance allocated on the heap! Must call MR_BooleanResult_Destroy() to free it when you're done using it. 
| MRC_API MR_BooleanResult * MR_BooleanResult_ConstructFromAnother | ( | MR_PassBy | _other_pass_by, | 
| MR_BooleanResult * | _other ) | 
Generated from a constructor of class MR::BooleanResult. Never returns null. Returns an instance allocated on the heap! Must call MR_BooleanResult_Destroy() to free it when you're done using it. 
| MRC_API bool MR_BooleanResult_ConvertTo_bool | ( | const MR_BooleanResult * | _this | ) | 
Generated from a conversion operator of class MR::BooleanResult to type bool. Parameter _this can not be null. It is a single object. 
| MRC_API MR_BooleanResult * MR_BooleanResult_DefaultConstruct | ( | void | ) | 
Constructs an empty (default-constructed) instance. Never returns null. Returns an instance allocated on the heap! Must call MR_BooleanResult_Destroy() to free it when you're done using it. 
| MRC_API MR_BooleanResult * MR_BooleanResult_DefaultConstructArray | ( | size_t | num_elems | ) | 
Constructs an array of empty (default-constructed) instances, of the specified size. Will never return null. The array must be destroyed using MR_BooleanResult_DestroyArray(). Use MR_BooleanResult_OffsetMutablePtr() and MR_BooleanResult_OffsetPtr() to access the array elements. 
| MRC_API void MR_BooleanResult_Destroy | ( | const MR_BooleanResult * | _this | ) | 
Destroys a heap-allocated instance of MR_BooleanResult. Does nothing if the pointer is null. 
| MRC_API void MR_BooleanResult_DestroyArray | ( | const MR_BooleanResult * | _this | ) | 
Destroys a heap-allocated array of MR_BooleanResult. Does nothing if the pointer is null. 
| MRC_API const MR_std_string * MR_BooleanResult_Get_errorString | ( | const MR_BooleanResult * | _this | ) | 
Holds error message, empty if boolean succeed Returns a pointer to a member variable of class MR::BooleanResult named errorString. Parameter _this can not be null. It is a single object. The returned pointer will never be null. It is non-owning, do NOT destroy it. 
| MRC_API const MR_Mesh * MR_BooleanResult_Get_mesh | ( | const MR_BooleanResult * | _this | ) | 
Result mesh of boolean operation, if error occurred it would be empty Returns a pointer to a member variable of class MR::BooleanResult named mesh. Parameter _this can not be null. It is a single object. The returned pointer will never be null. It is non-owning, do NOT destroy it. 
| MRC_API const MR_FaceBitSet * MR_BooleanResult_Get_meshABadContourFaces | ( | const MR_BooleanResult * | _this | ) | 
If input contours have intersections, this face bit set presents faces of mesh A on which contours intersect Returns a pointer to a member variable of class MR::BooleanResult named meshABadContourFaces. Parameter _this can not be null. It is a single object. The returned pointer will never be null. It is non-owning, do NOT destroy it. 
| MRC_API const MR_FaceBitSet * MR_BooleanResult_Get_meshBBadContourFaces | ( | const MR_BooleanResult * | _this | ) | 
If input contours have intersections, this face bit set presents faces of mesh B on which contours intersect Returns a pointer to a member variable of class MR::BooleanResult named meshBBadContourFaces. Parameter _this can not be null. It is a single object. The returned pointer will never be null. It is non-owning, do NOT destroy it. 
| MRC_API MR_std_string * MR_BooleanResult_GetMutable_errorString | ( | MR_BooleanResult * | _this | ) | 
Holds error message, empty if boolean succeed Returns a mutable pointer to a member variable of class MR::BooleanResult named errorString. Parameter _this can not be null. It is a single object. The returned pointer will never be null. It is non-owning, do NOT destroy it. 
| MRC_API MR_Mesh * MR_BooleanResult_GetMutable_mesh | ( | MR_BooleanResult * | _this | ) | 
Result mesh of boolean operation, if error occurred it would be empty Returns a mutable pointer to a member variable of class MR::BooleanResult named mesh. Parameter _this can not be null. It is a single object. The returned pointer will never be null. It is non-owning, do NOT destroy it. 
| MRC_API MR_FaceBitSet * MR_BooleanResult_GetMutable_meshABadContourFaces | ( | MR_BooleanResult * | _this | ) | 
If input contours have intersections, this face bit set presents faces of mesh A on which contours intersect Returns a mutable pointer to a member variable of class MR::BooleanResult named meshABadContourFaces. Parameter _this can not be null. It is a single object. The returned pointer will never be null. It is non-owning, do NOT destroy it. 
| MRC_API MR_FaceBitSet * MR_BooleanResult_GetMutable_meshBBadContourFaces | ( | MR_BooleanResult * | _this | ) | 
If input contours have intersections, this face bit set presents faces of mesh B on which contours intersect Returns a mutable pointer to a member variable of class MR::BooleanResult named meshBBadContourFaces. Parameter _this can not be null. It is a single object. The returned pointer will never be null. It is non-owning, do NOT destroy it. 
| MRC_API MR_BooleanResult * MR_BooleanResult_OffsetMutablePtr | ( | MR_BooleanResult * | ptr, | 
| ptrdiff_t | i ) | 
Offsets a pointer to an array element by i positions (not bytes). Use only if you're certain that the pointer points to an array element. 
| MRC_API const MR_BooleanResult * MR_BooleanResult_OffsetPtr | ( | const MR_BooleanResult * | ptr, | 
| ptrdiff_t | i ) | 
Offsets a pointer to an array element by i positions (not bytes). Use only if you're certain that the pointer points to an array element. 
| MRC_API void MR_BooleanResult_Set_errorString | ( | MR_BooleanResult * | _this, | 
| const char * | value, | ||
| const char * | value_end ) | 
Holds error message, empty if boolean succeed Modifies a member variable of class MR::BooleanResult named errorString. Parameter _this can not be null. It is a single object. Parameter value can not be null. If value_end is null, then value is assumed to be null-terminated. 
| MRC_API void MR_BooleanResult_Set_mesh | ( | MR_BooleanResult * | _this, | 
| MR_PassBy | value_pass_by, | ||
| MR_Mesh * | value ) | 
Result mesh of boolean operation, if error occurred it would be empty Modifies a member variable of class MR::BooleanResult named mesh. Parameter _this can not be null. It is a single object. 
| MRC_API void MR_BooleanResult_Set_meshABadContourFaces | ( | MR_BooleanResult * | _this, | 
| MR_PassBy | value_pass_by, | ||
| MR_FaceBitSet * | value ) | 
If input contours have intersections, this face bit set presents faces of mesh A on which contours intersect Modifies a member variable of class MR::BooleanResult named meshABadContourFaces. Parameter _this can not be null. It is a single object. 
| MRC_API void MR_BooleanResult_Set_meshBBadContourFaces | ( | MR_BooleanResult * | _this, | 
| MR_PassBy | value_pass_by, | ||
| MR_FaceBitSet * | value ) | 
If input contours have intersections, this face bit set presents faces of mesh B on which contours intersect Modifies a member variable of class MR::BooleanResult named meshBBadContourFaces. Parameter _this can not be null. It is a single object. 
| MRC_API bool MR_BooleanResult_valid | ( | const MR_BooleanResult * | _this | ) | 
Returns true if boolean succeed, false otherwise Generated from a method of class MR::BooleanResult named valid. Parameter _this can not be null. It is a single object. 
| MRC_API MR_BooleanResultPoints * MR_BooleanResultPoints_AssignFromAnother | ( | MR_BooleanResultPoints * | _this, | 
| MR_PassBy | _other_pass_by, | ||
| MR_BooleanResultPoints * | _other ) | 
Generated from a method of class MR::BooleanResultPoints named operator=. Parameter _this can not be null. It is a single object. The returned pointer will never be null. It is non-owning, do NOT destroy it. 
| MRC_API MR_BooleanResultPoints * MR_BooleanResultPoints_ConstructFrom | ( | MR_PassBy | meshAVerts_pass_by, | 
| MR_VertBitSet * | meshAVerts, | ||
| MR_PassBy | meshBVerts_pass_by, | ||
| MR_VertBitSet * | meshBVerts, | ||
| MR_PassBy | intersectionPoints_pass_by, | ||
| MR_std_vector_MR_Vector3f * | intersectionPoints ) | 
Constructs MR::BooleanResultPoints elementwise. Never returns null. Returns an instance allocated on the heap! Must call MR_BooleanResultPoints_Destroy() to free it when you're done using it. 
| MRC_API MR_BooleanResultPoints * MR_BooleanResultPoints_ConstructFromAnother | ( | MR_PassBy | _other_pass_by, | 
| MR_BooleanResultPoints * | _other ) | 
Generated from a constructor of class MR::BooleanResultPoints. Never returns null. Returns an instance allocated on the heap! Must call MR_BooleanResultPoints_Destroy() to free it when you're done using it. 
| MRC_API MR_BooleanResultPoints * MR_BooleanResultPoints_DefaultConstruct | ( | void | ) | 
Constructs an empty (default-constructed) instance. Never returns null. Returns an instance allocated on the heap! Must call MR_BooleanResultPoints_Destroy() to free it when you're done using it. 
| MRC_API MR_BooleanResultPoints * MR_BooleanResultPoints_DefaultConstructArray | ( | size_t | num_elems | ) | 
Constructs an array of empty (default-constructed) instances, of the specified size. Will never return null. The array must be destroyed using MR_BooleanResultPoints_DestroyArray(). Use MR_BooleanResultPoints_OffsetMutablePtr() and MR_BooleanResultPoints_OffsetPtr() to access the array elements. 
| MRC_API void MR_BooleanResultPoints_Destroy | ( | const MR_BooleanResultPoints * | _this | ) | 
Destroys a heap-allocated instance of MR_BooleanResultPoints. Does nothing if the pointer is null. 
| MRC_API void MR_BooleanResultPoints_DestroyArray | ( | const MR_BooleanResultPoints * | _this | ) | 
Destroys a heap-allocated array of MR_BooleanResultPoints. Does nothing if the pointer is null. 
| MRC_API const MR_std_vector_MR_Vector3f * MR_BooleanResultPoints_Get_intersectionPoints | ( | const MR_BooleanResultPoints * | _this | ) | 
Returns a pointer to a member variable of class MR::BooleanResultPoints named intersectionPoints. Parameter _this can not be null. It is a single object. The returned pointer will never be null. It is non-owning, do NOT destroy it. 
| MRC_API const MR_VertBitSet * MR_BooleanResultPoints_Get_meshAVerts | ( | const MR_BooleanResultPoints * | _this | ) | 
Returns a pointer to a member variable of class MR::BooleanResultPoints named meshAVerts. Parameter _this can not be null. It is a single object. The returned pointer will never be null. It is non-owning, do NOT destroy it. 
| MRC_API const MR_VertBitSet * MR_BooleanResultPoints_Get_meshBVerts | ( | const MR_BooleanResultPoints * | _this | ) | 
Returns a pointer to a member variable of class MR::BooleanResultPoints named meshBVerts. Parameter _this can not be null. It is a single object. The returned pointer will never be null. It is non-owning, do NOT destroy it. 
| MRC_API MR_std_vector_MR_Vector3f * MR_BooleanResultPoints_GetMutable_intersectionPoints | ( | MR_BooleanResultPoints * | _this | ) | 
Returns a mutable pointer to a member variable of class MR::BooleanResultPoints named intersectionPoints. Parameter _this can not be null. It is a single object. The returned pointer will never be null. It is non-owning, do NOT destroy it. 
| MRC_API MR_VertBitSet * MR_BooleanResultPoints_GetMutable_meshAVerts | ( | MR_BooleanResultPoints * | _this | ) | 
Returns a mutable pointer to a member variable of class MR::BooleanResultPoints named meshAVerts. Parameter _this can not be null. It is a single object. The returned pointer will never be null. It is non-owning, do NOT destroy it. 
| MRC_API MR_VertBitSet * MR_BooleanResultPoints_GetMutable_meshBVerts | ( | MR_BooleanResultPoints * | _this | ) | 
Returns a mutable pointer to a member variable of class MR::BooleanResultPoints named meshBVerts. Parameter _this can not be null. It is a single object. The returned pointer will never be null. It is non-owning, do NOT destroy it. 
| MRC_API MR_BooleanResultPoints * MR_BooleanResultPoints_OffsetMutablePtr | ( | MR_BooleanResultPoints * | ptr, | 
| ptrdiff_t | i ) | 
Offsets a pointer to an array element by i positions (not bytes). Use only if you're certain that the pointer points to an array element. 
| MRC_API const MR_BooleanResultPoints * MR_BooleanResultPoints_OffsetPtr | ( | const MR_BooleanResultPoints * | ptr, | 
| ptrdiff_t | i ) | 
Offsets a pointer to an array element by i positions (not bytes). Use only if you're certain that the pointer points to an array element. 
| MRC_API void MR_BooleanResultPoints_Set_intersectionPoints | ( | MR_BooleanResultPoints * | _this, | 
| MR_PassBy | value_pass_by, | ||
| MR_std_vector_MR_Vector3f * | value ) | 
Modifies a member variable of class MR::BooleanResultPoints named intersectionPoints. Parameter _this can not be null. It is a single object. 
| MRC_API void MR_BooleanResultPoints_Set_meshAVerts | ( | MR_BooleanResultPoints * | _this, | 
| MR_PassBy | value_pass_by, | ||
| MR_VertBitSet * | value ) | 
Modifies a member variable of class MR::BooleanResultPoints named meshAVerts. Parameter _this can not be null. It is a single object. 
| MRC_API void MR_BooleanResultPoints_Set_meshBVerts | ( | MR_BooleanResultPoints * | _this, | 
| MR_PassBy | value_pass_by, | ||
| MR_VertBitSet * | value ) | 
Modifies a member variable of class MR::BooleanResultPoints named meshBVerts. Parameter _this can not be null. It is a single object. 
| MRC_API void MR_convertIntFloatAllVerts | ( | MR_Mesh * | mesh, | 
| const MR_CoordinateConverters * | conv ) | 
converts all vertices of the mesh first in integer-coordinates, and then back in float-coordinates; this is necessary to avoid small self-intersections near newly introduced vertices on cut-contours; this actually sligntly moves only small perentage of vertices near x=0 or y=0 or z=0 planes, where float-precision is higher than int-precision; newly introduced vertices on cut-contours are also converted, but we expected that they remain unchanged due to idempotent property of the conversion Generated from function MR::convertIntFloatAllVerts. Parameter mesh can not be null. It is a single object. Parameter conv can not be null. It is a single object. 
| MRC_API const MR_Mesh * MR_deref_const_MR_BooleanResult_ref | ( | const MR_BooleanResult * | _this | ) | 
Generated from a method of class MR::BooleanResult named operator*. Parameter _this can not be null. It is a single object. The returned pointer will never be null. It is non-owning, do NOT destroy it. 
| MRC_API MR_Mesh * MR_deref_MR_BooleanResult_ref | ( | MR_BooleanResult * | _this | ) | 
Generated from a method of class MR::BooleanResult named operator*. Parameter _this can not be null. It is a single object. The returned pointer will never be null. It is non-owning, do NOT destroy it. 
| MRC_API MR_std_vector_std_vector_MR_Vector3f * MR_findIntersectionContours | ( | const MR_Mesh * | meshA, | 
| const MR_Mesh * | meshB, | ||
| const MR_AffineXf3f * | rigidB2A ) | 
returns intersection contours of given meshes Generated from function MR::findIntersectionContours. Parameter meshA can not be null. It is a single object. Parameter meshB can not be null. It is a single object. Parameter rigidB2A defaults to a null pointer in C++. Never returns null. Returns an instance allocated on the heap! Must call MR_std_vector_std_vector_MR_Vector3f_Destroy() to free it when you're done using it. 
| MRC_API MR_expected_MR_BooleanResultPoints_std_string * MR_getBooleanPoints | ( | const MR_Mesh * | meshA, | 
| const MR_Mesh * | meshB, | ||
| MR_BooleanOperation | operation, | ||
| const MR_AffineXf3f * | rigidB2A ) | 
Returns the points of mesh boolean's result mesh.
Returns vertices and intersection points of mesh that is result of boolean operation of mesh A and mesh B. Can be used as fast alternative for cases where the mesh topology can be ignored (bounding box, convex hull, etc.) 
| meshA | Input mesh A | 
| meshB | Input mesh B | 
| operation | Boolean operation to perform | 
| rigidB2A | Transform from mesh Bspace to meshAspace Generated from functionMR::getBooleanPoints. ParametermeshAcan not be null. It is a single object. ParametermeshBcan not be null. It is a single object. ParameterrigidB2Adefaults to a null pointer in C++. Never returns null. Returns an instance allocated on the heap! Must callMR_expected_MR_BooleanResultPoints_std_string_Destroy()to free it when you're done using it. | 
| MRC_API MR_expected_MR_Mesh_std_string * MR_selfBoolean | ( | const MR_Mesh * | mesh | ) | 
performs boolean operation on mesh with itself, cutting simple intersections contours and flipping their connectivity this function is experimental and likely to change signature and/or behavior in future Generated from function MR::selfBoolean. Parameter mesh can not be null. It is a single object. Never returns null. Returns an instance allocated on the heap! Must call MR_expected_MR_Mesh_std_string_Destroy() to free it when you're done using it.