MeshLib
 
Loading...
Searching...
No Matches
MRMeshC/MRMeshBoolean.h
Go to the documentation of this file.
1#pragma once
2
3#include "MRMeshFwd.h"
4#include "MRAffineXf.h"
6
8
10typedef struct MRBooleanParameters
11{
16 // TODO: outPreCutA
17 // TODO: outPreCutB
18 // TODO: outCutEdges
25
28
30typedef struct MRBooleanResult
31{
34 // TODO: meshABadContourFaces
35 // TODO: meshBBadContourFaces
39
44MRMESHC_API MRBooleanResult mrBoolean( const MRMesh* meshA, const MRMesh* meshB, MRBooleanOperation operation, const MRBooleanParameters* params );
45
MRBooleanOperation
Available CSG operations.
Definition MRMeshC/MRBooleanOperation.h:10
MRMESHC_API MRBooleanParameters mrBooleanParametersNew(void)
initializes a default instance
struct MRBooleanResult MRBooleanResult
This structure store result mesh of mrBoolean or some error info.
MRMESHC_API MRBooleanResult mrBoolean(const MRMesh *meshA, const MRMesh *meshB, MRBooleanOperation operation, const MRBooleanParameters *params)
MR_EXTERN_C_BEGIN struct MRBooleanParameters MRBooleanParameters
optional parameters for mrBoolean
#define MR_EXTERN_C_BEGIN
Definition MRMeshC/MRMeshFwd.h:26
bool(* MRProgressCallback)(float)
Definition MRMeshC/MRMeshFwd.h:47
#define MR_EXTERN_C_END
Definition MRMeshC/MRMeshFwd.h:27
struct MRMesh MRMesh
Definition MRMeshC/MRMeshFwd.h:43
typedefMR_EXTERN_C_BEGIN struct MRString MRString
Definition MRMeshC/MRMeshFwd.h:32
#define MRMESHC_API
Definition MRMeshC/MRMeshFwd.h:19
affine transformation: y = A*x + b, where A in VxV, and b in V
Definition MRMeshC/MRAffineXf.h:10
optional parameters for mrBoolean
Definition MRMeshC/MRMeshBoolean.h:11
MRBooleanResultMapper * mapper
Optional output structure to map mesh A and mesh B topology to result mesh topology.
Definition MRMeshC/MRMeshBoolean.h:15
MRProgressCallback cb
Progress callback.
Definition MRMeshC/MRMeshBoolean.h:23
bool mergeAllNonIntersectingComponents
Definition MRMeshC/MRMeshBoolean.h:21
const MRAffineXf3f * rigidB2A
Transform from mesh B space to mesh A space.
Definition MRMeshC/MRMeshBoolean.h:13
Structure to map old mesh BitSets to new.
This structure store result mesh of mrBoolean or some error info.
Definition MRMeshC/MRMeshBoolean.h:31
MRString * errorString
Holds error message, empty if boolean succeed.
Definition MRMeshC/MRMeshBoolean.h:37
MRMesh * mesh
Result mesh of boolean operation, if error occurred it would be empty.
Definition MRMeshC/MRMeshBoolean.h:33