#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. Supported MR_PassBy modes: MR_PassBy_DefaultConstruct, MR_PassBy_Copy, MR_PassBy_Move (and MR_PassBy_DefaultArgument and MR_PassBy_NoObject if supported by the callee).
| typedef struct MR_BooleanPreCutResult MR_BooleanPreCutResult |
Generated from class MR::BooleanPreCutResult. Supported MR_PassBy modes: MR_PassBy_DefaultConstruct, MR_PassBy_Copy, MR_PassBy_Move (and MR_PassBy_DefaultArgument and MR_PassBy_NoObject if supported by the callee).
| typedef struct MR_BooleanResult MR_BooleanResult |
Generated from class MR::BooleanResult. Supported MR_PassBy modes: MR_PassBy_DefaultConstruct, MR_PassBy_Copy, MR_PassBy_Move (and MR_PassBy_DefaultArgument and MR_PassBy_NoObject if supported by the callee).
| typedef struct MR_BooleanResultMapper MR_BooleanResultMapper |
| typedef struct MR_BooleanResultPoints MR_BooleanResultPoints |
vertices and points representing mesh intersection result Generated from class MR::BooleanResultPoints. Supported MR_PassBy modes: MR_PassBy_DefaultConstruct, MR_PassBy_Copy, MR_PassBy_Move (and MR_PassBy_DefaultArgument and MR_PassBy_NoObject if supported by the callee).
| 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 B space to mesh A space |
| mapper | Optional output structure to map mesh A and mesh B topology 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 method MR::BooleanParameters::operator=. Parameter _this can not be null. It is a single object. The reference to things referred to by the parameter _other (if any) might be preserved in this object. The returned pointer will never be null. It is non-owning, do NOT destroy it. When this function is called, this object will drop any object references it had previously.
| 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. The reference to the parameter rigidB2A might be preserved in the constructed object. The reference to the parameter mapper might be preserved in the constructed object. The reference to the parameter outPreCutA might be preserved in the constructed object. The reference to the parameter outPreCutB might be preserved in the constructed object. The reference to the parameter outCutEdges might be preserved in the constructed object. The reference to the parameter cb might be preserved in the constructed object. Never returns null. Returns an instance allocated on the heap! Must call MR_BooleanParameters_Destroy() to free it when you're done using it. When this function is called, this object will drop any object references it had previously.
| MRC_API MR_BooleanParameters * MR_BooleanParameters_ConstructFromAnother | ( | MR_PassBy | _other_pass_by, |
| MR_BooleanParameters * | _other ) |
Generated from constructor MR::BooleanParameters::BooleanParameters. The reference to things referred to by the parameter _other (if any) might be preserved in the constructed object. 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. The reference to the parameter ptr might be preserved in the return value.
| 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. The reference to the parameter ptr might be preserved in the return value.
| 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. The reference to the parameter value might be preserved in this object in element cb. When this function is called, this object will drop object references it had previously in cb.
| 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. When this function is called, this object will drop object references it had previously in forceCut. | 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. The reference to the parameter value might be preserved in this object in element mapper. When this function is called, this object will drop object references it had previously in mapper.
| 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. When this function is called, this object will drop object references it had previously in mergeAllNonIntersectingComponents.
| 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. The reference to the parameter value might be preserved in this object in element outCutEdges. When this function is called, this object will drop object references it had previously in outCutEdges.
| 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. The reference to the parameter value might be preserved in this object in element outPreCutA. When this function is called, this object will drop object references it had previously in outPreCutA.
| 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. The reference to the parameter value might be preserved in this object in element outPreCutB. When this function is called, this object will drop object references it had previously in outPreCutB.
| 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. The reference to the parameter value might be preserved in this object in element rigidB2A. When this function is called, this object will drop object references it had previously in rigidB2A.
| MRC_API MR_BooleanPreCutResult * MR_BooleanPreCutResult_AssignFromAnother | ( | MR_BooleanPreCutResult * | _this, |
| MR_PassBy | _other_pass_by, | ||
| MR_BooleanPreCutResult * | _other ) |
Generated from method MR::BooleanPreCutResult::operator=. Parameter _this can not be null. It is a single object. The reference to things referred to by the parameter _other (if any) might be preserved in this object. The returned pointer will never be null. It is non-owning, do NOT destroy it. When this function is called, this object will drop any object references it had previously.
| 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. The reference to the parameter mesh might be preserved in the constructed object. The reference to the parameter contours might be preserved in the constructed object. Never returns null. Returns an instance allocated on the heap! Must call MR_BooleanPreCutResult_Destroy() to free it when you're done using it. When this function is called, this object will drop any object references it had previously.
| MRC_API MR_BooleanPreCutResult * MR_BooleanPreCutResult_ConstructFromAnother | ( | MR_PassBy | _other_pass_by, |
| MR_BooleanPreCutResult * | _other ) |
Generated from constructor MR::BooleanPreCutResult::BooleanPreCutResult. The reference to things referred to by the parameter _other (if any) might be preserved in the constructed object. 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. The reference to the parameter ptr might be preserved in the return value.
| 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. The reference to the parameter ptr might be preserved in the return value.
| 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. The reference to the parameter value might be preserved in this object in element contours. When this function is called, this object will drop object references it had previously in contours.
| 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. The reference to the parameter value might be preserved in this object in element mesh. When this function is called, this object will drop object references it had previously in mesh.
| MRC_API MR_Mesh * MR_BooleanResult_arrow | ( | MR_BooleanResult * | _this | ) |
Generated from method MR::BooleanResult::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 method MR::BooleanResult::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 method MR::BooleanResult::operator=. Parameter _this can not be null. It is a single object. The reference to things referred to by the parameter _other (if any) might be preserved in this object. The returned pointer will never be null. It is non-owning, do NOT destroy it. When this function is called, this object will drop any object references it had previously.
| 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. The reference to the parameter mesh might be preserved in the constructed object. The reference to the parameter meshABadContourFaces might be preserved in the constructed object. The reference to the parameter meshBBadContourFaces might be preserved in the constructed object. Parameter errorString can not be null. If errorString_end is null, then errorString is assumed to be null-terminated. The reference to the parameter errorString might be preserved in the constructed object. Never returns null. Returns an instance allocated on the heap! Must call MR_BooleanResult_Destroy() to free it when you're done using it. When this function is called, this object will drop any object references it had previously.
| MRC_API MR_BooleanResult * MR_BooleanResult_ConstructFromAnother | ( | MR_PassBy | _other_pass_by, |
| MR_BooleanResult * | _other ) |
Generated from constructor MR::BooleanResult::BooleanResult. The reference to things referred to by the parameter _other (if any) might be preserved in the constructed object. 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 conversion operator MR::BooleanResult::operator 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. The reference to the parameter ptr might be preserved in the return value.
| 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. The reference to the parameter ptr might be preserved in the return value.
| 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. The reference to the parameter value might be preserved in this object in element errorString. When this function is called, this object will drop object references it had previously in errorString.
| 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. The reference to the parameter value might be preserved in this object in element mesh. When this function is called, this object will drop object references it had previously in mesh.
| 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. The reference to the parameter value might be preserved in this object in element meshABadContourFaces. When this function is called, this object will drop object references it had previously in meshABadContourFaces.
| 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. The reference to the parameter value might be preserved in this object in element meshBBadContourFaces. When this function is called, this object will drop object references it had previously in meshBBadContourFaces.
| MRC_API bool MR_BooleanResult_valid | ( | const MR_BooleanResult * | _this | ) |
Returns true if boolean succeed, false otherwise Generated from method MR::BooleanResult::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 method MR::BooleanResultPoints::operator=. Parameter _this can not be null. It is a single object. The reference to things referred to by the parameter _other (if any) might be preserved in this object. The returned pointer will never be null. It is non-owning, do NOT destroy it. When this function is called, this object will drop any object references it had previously.
| 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. The reference to the parameter meshAVerts might be preserved in the constructed object. The reference to the parameter meshBVerts might be preserved in the constructed object. The reference to the parameter intersectionPoints might be preserved in the constructed object. Never returns null. Returns an instance allocated on the heap! Must call MR_BooleanResultPoints_Destroy() to free it when you're done using it. When this function is called, this object will drop any object references it had previously.
| MRC_API MR_BooleanResultPoints * MR_BooleanResultPoints_ConstructFromAnother | ( | MR_PassBy | _other_pass_by, |
| MR_BooleanResultPoints * | _other ) |
Generated from constructor MR::BooleanResultPoints::BooleanResultPoints. The reference to things referred to by the parameter _other (if any) might be preserved in the constructed object. 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. The reference to the parameter ptr might be preserved in the return value.
| 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. The reference to the parameter ptr might be preserved in the return value.
| 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. The reference to the parameter value might be preserved in this object in element intersectionPoints. When this function is called, this object will drop object references it had previously in intersectionPoints.
| 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. The reference to the parameter value might be preserved in this object in element meshAVerts. When this function is called, this object will drop object references it had previously in meshAVerts.
| 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. The reference to the parameter value might be preserved in this object in element meshBVerts. When this function is called, this object will drop object references it had previously in meshBVerts.
| 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 method MR::BooleanResult::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 method MR::BooleanResult::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 B space to mesh A space Generated from function MR::getBooleanPoints. 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_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.