MeshLib C Docs
Loading...
Searching...
No Matches
MRPolylineSubdivide.h
Go to the documentation of this file.
1#pragma once
2
3#include <MRCMisc/common.h>
4#include <MRCMisc/exports.h>
5
6#include <stdbool.h>
7#include <stddef.h>
8
9#ifdef __cplusplus
10extern "C" {
11#endif
12
13typedef struct MR_Polyline2 MR_Polyline2; // Defined in `#include <MRCMesh/MRPolyline.h>`.
14typedef struct MR_Polyline3 MR_Polyline3; // Defined in `#include <MRCMesh/MRPolyline.h>`.
15typedef struct MR_VertBitSet MR_VertBitSet; // Defined in `#include <MRCMesh/MRBitSet.h>`.
16typedef struct MR_std_function_bool_from_float MR_std_function_bool_from_float; // Defined in `#include <MRCMisc/std_function_bool_from_float.h>`.
17typedef 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>`.
18typedef struct MR_std_function_void_from_MR_VertId MR_std_function_void_from_MR_VertId; // Defined in `#include <MRCMisc/std_function_void_from_MR_VertId.h>`.
19
20
24
30
36
42
48
54
60
67
75
82
88
95
101
108
115
122
128
135
141
147
154
160
166
173
179
183
188
197MRC_API MR_PolylineSubdivideSettings *MR_PolylineSubdivideSettings_ConstructFrom(float maxEdgeLen, int maxEdgeSplits, MR_VertBitSet *region, MR_VertBitSet *newVerts, bool useCurvature, MR_PassBy onVertCreated_pass_by, MR_std_function_void_from_MR_VertId *onVertCreated, MR_PassBy onEdgeSplit_pass_by, MR_std_function_void_from_MR_EdgeId_MR_EdgeId *onEdgeSplit, MR_PassBy progressCallback_pass_by, MR_std_function_bool_from_float *progressCallback);
198
202
206
211
214
217
224
232
238
239#ifdef __cplusplus
240} // extern "C"
241#endif
struct MR_std_function_bool_from_float MR_std_function_bool_from_float
Definition MR3mf.h:10
struct MR_Polyline3 MR_Polyline3
Definition MRAABBTreePolyline.h:21
struct MR_Polyline2 MR_Polyline2
Definition MRAABBTreePolyline.h:20
struct MR_VertBitSet MR_VertBitSet
Definition MRAABBTree.h:22
struct MR_std_function_void_from_MR_EdgeId_MR_EdgeId MR_std_function_void_from_MR_EdgeId_MR_EdgeId
Definition MRFillHoleNicely.h:23
struct MR_std_function_void_from_MR_VertId MR_std_function_void_from_MR_VertId
Definition MRMeshSubdivide.h:24
MRC_API int MR_subdividePolyline_MR_Polyline3(MR_Polyline3 *polyline, const MR_PolylineSubdivideSettings *settings)
MRC_API MR_VertBitSet ** MR_PolylineSubdivideSettings_GetMutable_region(MR_PolylineSubdivideSettings *_this)
MRC_API MR_VertBitSet *const * MR_PolylineSubdivideSettings_Get_region(const MR_PolylineSubdivideSettings *_this)
MRC_API MR_PolylineSubdivideSettings * MR_PolylineSubdivideSettings_OffsetMutablePtr(MR_PolylineSubdivideSettings *ptr, ptrdiff_t i)
MRC_API MR_PolylineSubdivideSettings * MR_PolylineSubdivideSettings_AssignFromAnother(MR_PolylineSubdivideSettings *_this, MR_PassBy _other_pass_by, MR_PolylineSubdivideSettings *_other)
MRC_API bool * MR_PolylineSubdivideSettings_GetMutable_useCurvature(MR_PolylineSubdivideSettings *_this)
MRC_API void MR_PolylineSubdivideSettings_DestroyArray(const MR_PolylineSubdivideSettings *_this)
Destroys a heap-allocated array of MR_PolylineSubdivideSettings. Does nothing if the pointer is null.
MRC_API void MR_PolylineSubdivideSettings_Set_onVertCreated(MR_PolylineSubdivideSettings *_this, MR_PassBy value_pass_by, MR_std_function_void_from_MR_VertId *value)
MRC_API const int * MR_PolylineSubdivideSettings_Get_maxEdgeSplits(const MR_PolylineSubdivideSettings *_this)
MRC_API MR_VertBitSet ** MR_PolylineSubdivideSettings_GetMutable_newVerts(MR_PolylineSubdivideSettings *_this)
MRC_API void MR_PolylineSubdivideSettings_Set_newVerts(MR_PolylineSubdivideSettings *_this, MR_VertBitSet *value)
MRC_API const MR_std_function_bool_from_float * MR_PolylineSubdivideSettings_Get_progressCallback(const MR_PolylineSubdivideSettings *_this)
MRC_API MR_PolylineSubdivideSettings * MR_PolylineSubdivideSettings_ConstructFrom(float maxEdgeLen, int maxEdgeSplits, MR_VertBitSet *region, MR_VertBitSet *newVerts, bool useCurvature, MR_PassBy onVertCreated_pass_by, MR_std_function_void_from_MR_VertId *onVertCreated, MR_PassBy onEdgeSplit_pass_by, MR_std_function_void_from_MR_EdgeId_MR_EdgeId *onEdgeSplit, MR_PassBy progressCallback_pass_by, MR_std_function_bool_from_float *progressCallback)
MRC_API int * MR_PolylineSubdivideSettings_GetMutable_maxEdgeSplits(MR_PolylineSubdivideSettings *_this)
MRC_API void MR_PolylineSubdivideSettings_Set_maxEdgeLen(MR_PolylineSubdivideSettings *_this, float value)
MRC_API MR_PolylineSubdivideSettings * MR_PolylineSubdivideSettings_ConstructFromAnother(MR_PassBy _other_pass_by, MR_PolylineSubdivideSettings *_other)
MRC_API const bool * MR_PolylineSubdivideSettings_Get_useCurvature(const MR_PolylineSubdivideSettings *_this)
MRC_API void MR_PolylineSubdivideSettings_Set_progressCallback(MR_PolylineSubdivideSettings *_this, MR_PassBy value_pass_by, MR_std_function_bool_from_float *value)
MRC_API MR_std_function_bool_from_float * MR_PolylineSubdivideSettings_GetMutable_progressCallback(MR_PolylineSubdivideSettings *_this)
struct MR_PolylineSubdivideSettings MR_PolylineSubdivideSettings
Definition MRPolylineSubdivide.h:23
MRC_API void MR_PolylineSubdivideSettings_Destroy(const MR_PolylineSubdivideSettings *_this)
Destroys a heap-allocated instance of MR_PolylineSubdivideSettings. Does nothing if the pointer is nu...
MRC_API MR_std_function_void_from_MR_VertId * MR_PolylineSubdivideSettings_GetMutable_onVertCreated(MR_PolylineSubdivideSettings *_this)
MRC_API MR_std_function_void_from_MR_EdgeId_MR_EdgeId * MR_PolylineSubdivideSettings_GetMutable_onEdgeSplit(MR_PolylineSubdivideSettings *_this)
MRC_API MR_PolylineSubdivideSettings * MR_PolylineSubdivideSettings_DefaultConstructArray(size_t num_elems)
MRC_API MR_VertBitSet *const * MR_PolylineSubdivideSettings_Get_newVerts(const MR_PolylineSubdivideSettings *_this)
MRC_API void MR_PolylineSubdivideSettings_Set_useCurvature(MR_PolylineSubdivideSettings *_this, bool value)
MRC_API void MR_PolylineSubdivideSettings_Set_maxEdgeSplits(MR_PolylineSubdivideSettings *_this, int value)
MRC_API const MR_PolylineSubdivideSettings * MR_PolylineSubdivideSettings_OffsetPtr(const MR_PolylineSubdivideSettings *ptr, ptrdiff_t i)
MRC_API const float * MR_PolylineSubdivideSettings_Get_maxEdgeLen(const MR_PolylineSubdivideSettings *_this)
MRC_API void MR_PolylineSubdivideSettings_Set_onEdgeSplit(MR_PolylineSubdivideSettings *_this, MR_PassBy value_pass_by, MR_std_function_void_from_MR_EdgeId_MR_EdgeId *value)
MRC_API void MR_PolylineSubdivideSettings_Set_region(MR_PolylineSubdivideSettings *_this, MR_VertBitSet *value)
MRC_API MR_PolylineSubdivideSettings * MR_PolylineSubdivideSettings_DefaultConstruct(void)
MRC_API const MR_std_function_void_from_MR_VertId * MR_PolylineSubdivideSettings_Get_onVertCreated(const MR_PolylineSubdivideSettings *_this)
MRC_API float * MR_PolylineSubdivideSettings_GetMutable_maxEdgeLen(MR_PolylineSubdivideSettings *_this)
MRC_API int MR_subdividePolyline_MR_Polyline2(MR_Polyline2 *polyline, const MR_PolylineSubdivideSettings *settings)
MRC_API const MR_std_function_void_from_MR_EdgeId_MR_EdgeId * MR_PolylineSubdivideSettings_Get_onEdgeSplit(const MR_PolylineSubdivideSettings *_this)
MR_PassBy
Definition common.h:23
#define MRC_API
Definition exports.h:11