MeshLib C Docs
Loading...
Searching...
No Matches
MRFillHoleNicely.h
Go to the documentation of this file.
1#pragma once
2
3#include <MRCMesh/MREnums.h>
4#include <MRCMesh/MRId.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_FaceBitSet MR_FaceBitSet; // Defined in `#include <MRCMesh/MRBitSet.h>`.
16typedef struct MR_FaceColors MR_FaceColors; // Defined in `#include <MRCMesh/MRVector.h>`.
17typedef struct MR_FillHoleParams MR_FillHoleParams; // Defined in `#include <MRCMesh/MRMeshFillHole.h>`.
18typedef struct MR_Mesh MR_Mesh; // Defined in `#include <MRCMesh/MRMesh.h>`.
19typedef struct MR_UndirectedEdgeBitSet MR_UndirectedEdgeBitSet; // Defined in `#include <MRCMesh/MRBitSet.h>`.
20typedef struct MR_VertColors MR_VertColors; // Defined in `#include <MRCMesh/MRVector.h>`.
21typedef struct MR_VertCoords2 MR_VertCoords2; // Defined in `#include <MRCMesh/MRVector.h>`.
22typedef struct MR_std_function_bool_from_MR_EdgeId MR_std_function_bool_from_MR_EdgeId; // Defined in `#include <MRCMisc/std_function_bool_from_MR_EdgeId.h>`.
23typedef struct MR_std_function_void_from_MR_EdgeId_MR_EdgeId MR_std_function_void_from_MR_EdgeId_MR_EdgeId; // Defined in `#include <MRCMisc/std_function_void_from_MR_EdgeId_MR_EdgeId.h>`.
24
25
28
34
39
45
51
56
62
68
73
79
85
90
96
102
107
113
119
124
130
136
141
147
153
158
164
170
175
181
187
192
198
204
209
215
221
226
232
238
243
249
255
260
266
272
277
283
287
292
295MRC_API MR_FillHoleNicelySettings *MR_FillHoleNicelySettings_ConstructFrom(MR_PassBy triangulateParams_pass_by, MR_FillHoleParams *triangulateParams, bool triangulateOnly, MR_UndirectedEdgeBitSet *notFlippable, float maxEdgeLen, int maxEdgeSplits, float maxAngleChangeAfterFlip, bool smoothCurvature, bool naturalSmooth, MR_PassBy beforeEdgeSplit_pass_by, MR_std_function_bool_from_MR_EdgeId *beforeEdgeSplit, MR_PassBy onEdgeSplit_pass_by, MR_std_function_void_from_MR_EdgeId_MR_EdgeId *onEdgeSplit, MR_EdgeWeights edgeWeights, MR_VertexMass vmass, MR_VertCoords2 *uvCoords, MR_VertColors *colorMap, MR_FaceColors *faceColors);
296
299
302
306
309
312
317
327
328#ifdef __cplusplus
329} // extern "C"
330#endif
struct MR_FaceBitSet MR_FaceBitSet
Definition MRAABBTreeBase.h:24
struct MR_UndirectedEdgeBitSet MR_UndirectedEdgeBitSet
Definition MRAABBTreeBase.h:28
struct MR_FaceColors MR_FaceColors
Definition MRChangeColoringActions.h:13
struct MR_VertCoords2 MR_VertCoords2
Definition MRChangeMeshAction.h:18
struct MR_Mesh MR_Mesh
Definition MRCtm.h:12
struct MR_VertColors MR_VertColors
Definition MRE57.h:16
MR_EdgeWeights
determines the weight of each edge in applications like Laplacian
Definition MREnums.h:23
MR_VertexMass
determines the weight or mass of each vertex in applications like Laplacian
Definition MREnums.h:14
MRC_API MR_FaceColors *const * MR_FillHoleNicelySettings_Get_faceColors(const MR_FillHoleNicelySettings *_this)
MRC_API MR_VertexMass * MR_FillHoleNicelySettings_GetMutable_vmass(MR_FillHoleNicelySettings *_this)
MRC_API void MR_FillHoleNicelySettings_Set_vmass(MR_FillHoleNicelySettings *_this, MR_VertexMass value)
MRC_API MR_VertCoords2 ** MR_FillHoleNicelySettings_GetMutable_uvCoords(MR_FillHoleNicelySettings *_this)
MRC_API void MR_FillHoleNicelySettings_Set_edgeWeights(MR_FillHoleNicelySettings *_this, MR_EdgeWeights value)
MRC_API const float * MR_FillHoleNicelySettings_Get_maxAngleChangeAfterFlip(const MR_FillHoleNicelySettings *_this)
MRC_API const int * MR_FillHoleNicelySettings_Get_maxEdgeSplits(const MR_FillHoleNicelySettings *_this)
MRC_API MR_EdgeWeights * MR_FillHoleNicelySettings_GetMutable_edgeWeights(MR_FillHoleNicelySettings *_this)
MRC_API MR_FillHoleNicelySettings * MR_FillHoleNicelySettings_ConstructFromAnother(MR_PassBy _other_pass_by, MR_FillHoleNicelySettings *_other)
MRC_API const bool * MR_FillHoleNicelySettings_Get_smoothCurvature(const MR_FillHoleNicelySettings *_this)
MRC_API const bool * MR_FillHoleNicelySettings_Get_triangulateOnly(const MR_FillHoleNicelySettings *_this)
MRC_API MR_FillHoleNicelySettings * MR_FillHoleNicelySettings_AssignFromAnother(MR_FillHoleNicelySettings *_this, MR_PassBy _other_pass_by, MR_FillHoleNicelySettings *_other)
struct MR_std_function_bool_from_MR_EdgeId MR_std_function_bool_from_MR_EdgeId
Definition MRFillHoleNicely.h:22
MRC_API void MR_FillHoleNicelySettings_Set_onEdgeSplit(MR_FillHoleNicelySettings *_this, MR_PassBy value_pass_by, MR_std_function_void_from_MR_EdgeId_MR_EdgeId *value)
struct MR_FillHoleNicelySettings MR_FillHoleNicelySettings
Generated from class MR::FillHoleNicelySettings.
Definition MRFillHoleNicely.h:27
MRC_API void MR_FillHoleNicelySettings_Destroy(const MR_FillHoleNicelySettings *_this)
Destroys a heap-allocated instance of MR_FillHoleNicelySettings. Does nothing if the pointer is null.
MRC_API const MR_FillHoleParams * MR_FillHoleNicelySettings_Get_triangulateParams(const MR_FillHoleNicelySettings *_this)
MRC_API void MR_FillHoleNicelySettings_Set_triangulateOnly(MR_FillHoleNicelySettings *_this, bool value)
MRC_API void MR_FillHoleNicelySettings_Set_maxEdgeLen(MR_FillHoleNicelySettings *_this, float value)
MRC_API int * MR_FillHoleNicelySettings_GetMutable_maxEdgeSplits(MR_FillHoleNicelySettings *_this)
MRC_API MR_UndirectedEdgeBitSet *const * MR_FillHoleNicelySettings_Get_notFlippable(const MR_FillHoleNicelySettings *_this)
MRC_API MR_FaceColors ** MR_FillHoleNicelySettings_GetMutable_faceColors(MR_FillHoleNicelySettings *_this)
MRC_API float * MR_FillHoleNicelySettings_GetMutable_maxEdgeLen(MR_FillHoleNicelySettings *_this)
MRC_API bool * MR_FillHoleNicelySettings_GetMutable_naturalSmooth(MR_FillHoleNicelySettings *_this)
MRC_API const float * MR_FillHoleNicelySettings_Get_maxEdgeLen(const MR_FillHoleNicelySettings *_this)
MRC_API MR_std_function_void_from_MR_EdgeId_MR_EdgeId * MR_FillHoleNicelySettings_GetMutable_onEdgeSplit(MR_FillHoleNicelySettings *_this)
MRC_API const MR_std_function_bool_from_MR_EdgeId * MR_FillHoleNicelySettings_Get_beforeEdgeSplit(const MR_FillHoleNicelySettings *_this)
MRC_API void MR_FillHoleNicelySettings_Set_colorMap(MR_FillHoleNicelySettings *_this, MR_VertColors *value)
MRC_API void MR_FillHoleNicelySettings_Set_maxEdgeSplits(MR_FillHoleNicelySettings *_this, int value)
MRC_API void MR_FillHoleNicelySettings_DestroyArray(const MR_FillHoleNicelySettings *_this)
Destroys a heap-allocated array of MR_FillHoleNicelySettings. Does nothing if the pointer is null.
MRC_API bool * MR_FillHoleNicelySettings_GetMutable_smoothCurvature(MR_FillHoleNicelySettings *_this)
MRC_API MR_FillHoleNicelySettings * MR_FillHoleNicelySettings_OffsetMutablePtr(MR_FillHoleNicelySettings *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 MR_std_function_void_from_MR_EdgeId_MR_EdgeId * MR_FillHoleNicelySettings_Get_onEdgeSplit(const MR_FillHoleNicelySettings *_this)
struct MR_FillHoleParams MR_FillHoleParams
Definition MRFillHoleNicely.h:17
MRC_API MR_FaceBitSet * MR_fillHoleNicely(MR_Mesh *mesh, MR_EdgeId holeEdge, const MR_FillHoleNicelySettings *settings)
MRC_API MR_FillHoleNicelySettings * MR_FillHoleNicelySettings_DefaultConstructArray(size_t num_elems)
MRC_API void MR_FillHoleNicelySettings_Set_uvCoords(MR_FillHoleNicelySettings *_this, MR_VertCoords2 *value)
MRC_API MR_FillHoleNicelySettings * MR_FillHoleNicelySettings_ConstructFrom(MR_PassBy triangulateParams_pass_by, MR_FillHoleParams *triangulateParams, bool triangulateOnly, MR_UndirectedEdgeBitSet *notFlippable, float maxEdgeLen, int maxEdgeSplits, float maxAngleChangeAfterFlip, bool smoothCurvature, bool naturalSmooth, MR_PassBy beforeEdgeSplit_pass_by, MR_std_function_bool_from_MR_EdgeId *beforeEdgeSplit, MR_PassBy onEdgeSplit_pass_by, MR_std_function_void_from_MR_EdgeId_MR_EdgeId *onEdgeSplit, MR_EdgeWeights edgeWeights, MR_VertexMass vmass, MR_VertCoords2 *uvCoords, MR_VertColors *colorMap, MR_FaceColors *faceColors)
MRC_API const bool * MR_FillHoleNicelySettings_Get_naturalSmooth(const MR_FillHoleNicelySettings *_this)
MRC_API void MR_FillHoleNicelySettings_Set_faceColors(MR_FillHoleNicelySettings *_this, MR_FaceColors *value)
MRC_API const MR_EdgeWeights * MR_FillHoleNicelySettings_Get_edgeWeights(const MR_FillHoleNicelySettings *_this)
MRC_API void MR_FillHoleNicelySettings_Set_triangulateParams(MR_FillHoleNicelySettings *_this, MR_PassBy value_pass_by, MR_FillHoleParams *value)
MRC_API const MR_VertexMass * MR_FillHoleNicelySettings_Get_vmass(const MR_FillHoleNicelySettings *_this)
MRC_API void MR_FillHoleNicelySettings_Set_maxAngleChangeAfterFlip(MR_FillHoleNicelySettings *_this, float value)
MRC_API void MR_FillHoleNicelySettings_Set_beforeEdgeSplit(MR_FillHoleNicelySettings *_this, MR_PassBy value_pass_by, MR_std_function_bool_from_MR_EdgeId *value)
MRC_API MR_std_function_bool_from_MR_EdgeId * MR_FillHoleNicelySettings_GetMutable_beforeEdgeSplit(MR_FillHoleNicelySettings *_this)
MRC_API MR_VertColors ** MR_FillHoleNicelySettings_GetMutable_colorMap(MR_FillHoleNicelySettings *_this)
MRC_API bool * MR_FillHoleNicelySettings_GetMutable_triangulateOnly(MR_FillHoleNicelySettings *_this)
struct MR_std_function_void_from_MR_EdgeId_MR_EdgeId MR_std_function_void_from_MR_EdgeId_MR_EdgeId
Definition MRFillHoleNicely.h:23
MRC_API MR_UndirectedEdgeBitSet ** MR_FillHoleNicelySettings_GetMutable_notFlippable(MR_FillHoleNicelySettings *_this)
MRC_API MR_VertCoords2 *const * MR_FillHoleNicelySettings_Get_uvCoords(const MR_FillHoleNicelySettings *_this)
MRC_API MR_VertColors *const * MR_FillHoleNicelySettings_Get_colorMap(const MR_FillHoleNicelySettings *_this)
MRC_API void MR_FillHoleNicelySettings_Set_smoothCurvature(MR_FillHoleNicelySettings *_this, bool value)
MRC_API MR_FillHoleParams * MR_FillHoleNicelySettings_GetMutable_triangulateParams(MR_FillHoleNicelySettings *_this)
MRC_API void MR_FillHoleNicelySettings_Set_naturalSmooth(MR_FillHoleNicelySettings *_this, bool value)
MRC_API MR_FillHoleNicelySettings * MR_FillHoleNicelySettings_DefaultConstruct(void)
MRC_API float * MR_FillHoleNicelySettings_GetMutable_maxAngleChangeAfterFlip(MR_FillHoleNicelySettings *_this)
MRC_API void MR_FillHoleNicelySettings_Set_notFlippable(MR_FillHoleNicelySettings *_this, MR_UndirectedEdgeBitSet *value)
MRC_API const MR_FillHoleNicelySettings * MR_FillHoleNicelySettings_OffsetPtr(const MR_FillHoleNicelySettings *ptr, ptrdiff_t i)
Offsets a pointer to an array element by i positions (not bytes). Use only if you're certain that the...
MR_PassBy
Definition common.h:19
#define MRC_API
Definition exports.h:11
Definition MRId.h:151