MeshLib C Docs
Loading...
Searching...
No Matches
MRRebuildMesh.h
Go to the documentation of this file.
1#pragma once
2
3#include <MRCMesh/MREnums.h>
5#include <MRCMisc/common.h>
6#include <MRCMisc/exports.h>
7
8#include <stdbool.h>
9#include <stddef.h>
10
11#ifdef __cplusplus
12extern "C" {
13#endif
14
15typedef struct MR_MeshPart MR_MeshPart; // Defined in `#include <MRCMesh/MRMeshPart.h>`.
16typedef struct MR_UndirectedEdgeBitSet MR_UndirectedEdgeBitSet; // Defined in `#include <MRCMesh/MRBitSet.h>`.
17typedef struct MR_expected_MR_Mesh_std_string MR_expected_MR_Mesh_std_string; // Defined in `#include <MRCMisc/expected_MR_Mesh_std_string.h>`.
18typedef struct MR_std_function_bool_from_float MR_std_function_bool_from_float; // Defined in `#include <MRCMisc/std_function_bool_from_float.h>`.
19typedef struct MR_std_function_void_from_MR_SignDetectionMode MR_std_function_void_from_MR_SignDetectionMode; // Defined in `#include <MRCMisc/std_function_void_from_MR_SignDetectionMode.h>`.
20typedef struct MR_std_shared_ptr_MR_IFastWindingNumber MR_std_shared_ptr_MR_IFastWindingNumber; // Defined in `#include <MRCMisc/std_shared_ptr_MR_IFastWindingNumber.h>`.
21
22
25
35
44
54
61
67
74
79
83
88
94
99
105
110
114
119
125
130
136
144
151
159
166
172
179
186
192
199
205
210
216
223
229
236
242
247
253
260
266
273
277
282
285MRC_API MR_RebuildMeshSettings *MR_RebuildMeshSettings_ConstructFrom(bool preSubdivide, float voxelSize, MR_SignDetectionModeShort signMode, bool closeHolesInHoleWindingNumber, MR_OffsetMode offsetMode, MR_UndirectedEdgeBitSet *outSharpEdges, float windingNumberThreshold, float windingNumberBeta, MR_PassBy fwn_pass_by, MR_std_shared_ptr_MR_IFastWindingNumber *fwn, bool decimate, float tinyEdgeLength, MR_PassBy progress_pass_by, MR_std_function_bool_from_float *progress, MR_PassBy onSignDetectionModeSelected_pass_by, MR_std_function_void_from_MR_SignDetectionMode *onSignDetectionModeSelected);
286
289
292
296
299
302
307
315
316#ifdef __cplusplus
317} // extern "C"
318#endif
struct MR_std_function_bool_from_float MR_std_function_bool_from_float
Definition MR3mf.h:10
struct MR_UndirectedEdgeBitSet MR_UndirectedEdgeBitSet
Definition MRAABBTreeBase.h:29
struct MR_MeshPart MR_MeshPart
Definition MRAABBTree.h:14
struct MR_expected_MR_Mesh_std_string MR_expected_MR_Mesh_std_string
Definition MRCtm.h:18
int32_t MR_OffsetMode
Definition MREnums.h:50
MRC_API MR_RebuildMeshSettings * MR_RebuildMeshSettings_DefaultConstruct(void)
MRC_API MR_RebuildMeshSettings * MR_RebuildMeshSettings_ConstructFrom(bool preSubdivide, float voxelSize, MR_SignDetectionModeShort signMode, bool closeHolesInHoleWindingNumber, MR_OffsetMode offsetMode, MR_UndirectedEdgeBitSet *outSharpEdges, float windingNumberThreshold, float windingNumberBeta, MR_PassBy fwn_pass_by, MR_std_shared_ptr_MR_IFastWindingNumber *fwn, bool decimate, float tinyEdgeLength, MR_PassBy progress_pass_by, MR_std_function_bool_from_float *progress, MR_PassBy onSignDetectionModeSelected_pass_by, MR_std_function_void_from_MR_SignDetectionMode *onSignDetectionModeSelected)
MRC_API void MR_RebuildMeshSettings_Set_onSignDetectionModeSelected(MR_RebuildMeshSettings *_this, MR_PassBy value_pass_by, MR_std_function_void_from_MR_SignDetectionMode *value)
MRC_API const MR_SignDetectionModeShort * MR_RebuildMeshSettings_Get_signMode(const MR_RebuildMeshSettings *_this)
MRC_API void MR_RebuildMeshSettings_Set_windingNumberThreshold(MR_RebuildMeshSettings *_this, float value)
MRC_API void MR_RebuildMeshSettings_Set_offsetMode(MR_RebuildMeshSettings *_this, MR_OffsetMode value)
MRC_API MR_expected_MR_Mesh_std_string * MR_rebuildMesh(const MR_MeshPart *mp, const MR_RebuildMeshSettings *settings)
MRC_API MR_RebuildMeshSettings * MR_RebuildMeshSettings_AssignFromAnother(MR_RebuildMeshSettings *_this, MR_PassBy _other_pass_by, MR_RebuildMeshSettings *_other)
MRC_API bool * MR_RebuildMeshSettings_GetMutable_decimate(MR_RebuildMeshSettings *_this)
MRC_API const bool * MR_RebuildMeshSettings_Get_decimate(const MR_RebuildMeshSettings *_this)
MRC_API bool * MR_RebuildMeshSettings_GetMutable_closeHolesInHoleWindingNumber(MR_RebuildMeshSettings *_this)
MRC_API MR_RebuildMeshSettings * MR_RebuildMeshSettings_DefaultConstructArray(size_t num_elems)
MRC_API MR_UndirectedEdgeBitSet ** MR_RebuildMeshSettings_GetMutable_outSharpEdges(MR_RebuildMeshSettings *_this)
MRC_API void MR_RebuildMeshSettings_Set_outSharpEdges(MR_RebuildMeshSettings *_this, MR_UndirectedEdgeBitSet *value)
MRC_API void MR_RebuildMeshSettings_Set_decimate(MR_RebuildMeshSettings *_this, bool value)
MRC_API MR_SignDetectionModeShort * MR_RebuildMeshSettings_GetMutable_signMode(MR_RebuildMeshSettings *_this)
MRC_API void MR_RebuildMeshSettings_Set_windingNumberBeta(MR_RebuildMeshSettings *_this, float value)
MRC_API void MR_RebuildMeshSettings_Set_voxelSize(MR_RebuildMeshSettings *_this, float value)
MRC_API MR_std_shared_ptr_MR_IFastWindingNumber * MR_RebuildMeshSettings_GetMutable_fwn(MR_RebuildMeshSettings *_this)
MRC_API const float * MR_RebuildMeshSettings_Get_voxelSize(const MR_RebuildMeshSettings *_this)
MRC_API MR_std_function_void_from_MR_SignDetectionMode * MR_RebuildMeshSettings_GetMutable_onSignDetectionModeSelected(MR_RebuildMeshSettings *_this)
MRC_API void MR_RebuildMeshSettings_DestroyArray(const MR_RebuildMeshSettings *_this)
Destroys a heap-allocated array of MR_RebuildMeshSettings. Does nothing if the pointer is null.
MRC_API MR_OffsetMode * MR_RebuildMeshSettings_GetMutable_offsetMode(MR_RebuildMeshSettings *_this)
MRC_API bool * MR_RebuildMeshSettings_GetMutable_preSubdivide(MR_RebuildMeshSettings *_this)
MRC_API const MR_std_function_void_from_MR_SignDetectionMode * MR_RebuildMeshSettings_Get_onSignDetectionModeSelected(const MR_RebuildMeshSettings *_this)
MRC_API const MR_std_shared_ptr_MR_IFastWindingNumber * MR_RebuildMeshSettings_Get_fwn(const MR_RebuildMeshSettings *_this)
MRC_API float * MR_RebuildMeshSettings_GetMutable_windingNumberThreshold(MR_RebuildMeshSettings *_this)
MRC_API void MR_RebuildMeshSettings_Set_tinyEdgeLength(MR_RebuildMeshSettings *_this, float value)
MRC_API void MR_RebuildMeshSettings_Set_signMode(MR_RebuildMeshSettings *_this, MR_SignDetectionModeShort value)
MRC_API const bool * MR_RebuildMeshSettings_Get_closeHolesInHoleWindingNumber(const MR_RebuildMeshSettings *_this)
MRC_API float * MR_RebuildMeshSettings_GetMutable_voxelSize(MR_RebuildMeshSettings *_this)
MRC_API const bool * MR_RebuildMeshSettings_Get_preSubdivide(const MR_RebuildMeshSettings *_this)
struct MR_RebuildMeshSettings MR_RebuildMeshSettings
Generated from class MR::RebuildMeshSettings.
Definition MRRebuildMesh.h:24
MRC_API void MR_RebuildMeshSettings_Set_fwn(MR_RebuildMeshSettings *_this, MR_PassBy value_pass_by, MR_std_shared_ptr_MR_IFastWindingNumber *value)
MRC_API const float * MR_RebuildMeshSettings_Get_windingNumberBeta(const MR_RebuildMeshSettings *_this)
MRC_API MR_std_function_bool_from_float * MR_RebuildMeshSettings_GetMutable_progress(MR_RebuildMeshSettings *_this)
MRC_API const MR_std_function_bool_from_float * MR_RebuildMeshSettings_Get_progress(const MR_RebuildMeshSettings *_this)
MRC_API float * MR_RebuildMeshSettings_GetMutable_tinyEdgeLength(MR_RebuildMeshSettings *_this)
MRC_API void MR_RebuildMeshSettings_Set_closeHolesInHoleWindingNumber(MR_RebuildMeshSettings *_this, bool value)
MRC_API MR_RebuildMeshSettings * MR_RebuildMeshSettings_OffsetMutablePtr(MR_RebuildMeshSettings *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 const float * MR_RebuildMeshSettings_Get_tinyEdgeLength(const MR_RebuildMeshSettings *_this)
MRC_API MR_RebuildMeshSettings * MR_RebuildMeshSettings_ConstructFromAnother(MR_PassBy _other_pass_by, MR_RebuildMeshSettings *_other)
MRC_API const float * MR_RebuildMeshSettings_Get_windingNumberThreshold(const MR_RebuildMeshSettings *_this)
MRC_API const MR_OffsetMode * MR_RebuildMeshSettings_Get_offsetMode(const MR_RebuildMeshSettings *_this)
MRC_API void MR_RebuildMeshSettings_Destroy(const MR_RebuildMeshSettings *_this)
Destroys a heap-allocated instance of MR_RebuildMeshSettings. Does nothing if the pointer is null.
MRC_API void MR_RebuildMeshSettings_Set_preSubdivide(MR_RebuildMeshSettings *_this, bool value)
MRC_API void MR_RebuildMeshSettings_Set_progress(MR_RebuildMeshSettings *_this, MR_PassBy value_pass_by, MR_std_function_bool_from_float *value)
MRC_API float * MR_RebuildMeshSettings_GetMutable_windingNumberBeta(MR_RebuildMeshSettings *_this)
MRC_API MR_UndirectedEdgeBitSet *const * MR_RebuildMeshSettings_Get_outSharpEdges(const MR_RebuildMeshSettings *_this)
MRC_API const MR_RebuildMeshSettings * MR_RebuildMeshSettings_OffsetPtr(const MR_RebuildMeshSettings *ptr, ptrdiff_t i)
Offsets a pointer to an array element by i positions (not bytes). Use only if you're certain that the...
int32_t MR_SignDetectionModeShort
how to determine the sign of distances from a mesh, short version including auto-detection
Definition MRSignDetectionMode.h:31
MR_PassBy
Definition common.h:19
#define MRC_API
Definition exports.h:11
struct MR_std_function_void_from_MR_SignDetectionMode MR_std_function_void_from_MR_SignDetectionMode
Definition std_function_void_from_MR_SignDetectionMode.h:16
struct MR_std_shared_ptr_MR_IFastWindingNumber MR_std_shared_ptr_MR_IFastWindingNumber
Definition std_shared_ptr_MR_IFastWindingNumber.h:17