MeshLib C Docs
Loading...
Searching...
No Matches
MRMeshBuilderTypes.h
Go to the documentation of this file.
1#pragma once
2
3#include <MRCMesh/MRId.h>
4#include <MRCMisc/exports.h>
6
7#include <stdbool.h>
8#include <stddef.h>
9
10#ifdef __cplusplus
11extern "C" {
12#endif
13
14typedef struct MR_FaceBitSet MR_FaceBitSet; // Defined in `#include <MRCMesh/MRBitSet.h>`.
15
16
21
25
26// each face is surrounded by a closed contour of vertices [fistVertex, lastVertex)
30
35
39
44
49
53
58
62
67
70
73
78
82
85
88
94
99
105
110
116
122
127
133
139
144
150
156
161
167
171
176
179MRC_API MR_MeshBuilder_BuildSettings *MR_MeshBuilder_BuildSettings_ConstructFrom(MR_FaceBitSet *region, int shiftFaceId, bool allowNonManifoldEdge, int *skippedFaceCount);
180
183
186
191
194
197
203
208
212
217
222
226
231
235
240
244
247
250
255
258
261
267
268#ifdef __cplusplus
269} // extern "C"
270#endif
struct MR_FaceBitSet MR_FaceBitSet
Definition MRAABBTree.h:17
MRC_API MR_MeshBuilder_VertSpan * MR_MeshBuilder_VertSpan_DefaultConstruct(void)
MRC_API void MR_MeshBuilder_Triangle_Destroy(const MR_MeshBuilder_Triangle *_this)
Destroys a heap-allocated instance of MR_MeshBuilder_Triangle. Does nothing if the pointer is null.
MRC_API MR_FaceId * MR_MeshBuilder_Triangle_GetMutable_f(MR_MeshBuilder_Triangle *_this)
MRC_API void MR_MeshBuilder_Triangle_Set_v(MR_MeshBuilder_Triangle *_this, MR_std_array_MR_VertId_3 value)
MRC_API const int * MR_MeshBuilder_BuildSettings_Get_shiftFaceId(const MR_MeshBuilder_BuildSettings *_this)
MRC_API const bool * MR_MeshBuilder_BuildSettings_Get_allowNonManifoldEdge(const MR_MeshBuilder_BuildSettings *_this)
MRC_API void MR_MeshBuilder_BuildSettings_Set_allowNonManifoldEdge(MR_MeshBuilder_BuildSettings *_this, bool value)
MRC_API const MR_std_array_MR_VertId_3 * MR_MeshBuilder_Triangle_Get_v(const MR_MeshBuilder_Triangle *_this)
MRC_API MR_MeshBuilder_Triangle * MR_MeshBuilder_Triangle_OffsetMutablePtr(MR_MeshBuilder_Triangle *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 MR_MeshBuilder_BuildSettings * MR_MeshBuilder_BuildSettings_ConstructFromAnother(const MR_MeshBuilder_BuildSettings *_other)
MRC_API MR_MeshBuilder_BuildSettings * MR_MeshBuilder_BuildSettings_AssignFromAnother(MR_MeshBuilder_BuildSettings *_this, const MR_MeshBuilder_BuildSettings *_other)
MRC_API void MR_MeshBuilder_VertSpan_Destroy(const MR_MeshBuilder_VertSpan *_this)
Destroys a heap-allocated instance of MR_MeshBuilder_VertSpan. Does nothing if the pointer is null.
MRC_API MR_FaceBitSet ** MR_MeshBuilder_BuildSettings_GetMutable_region(MR_MeshBuilder_BuildSettings *_this)
MRC_API void MR_MeshBuilder_BuildSettings_DestroyArray(const MR_MeshBuilder_BuildSettings *_this)
Destroys a heap-allocated array of MR_MeshBuilder_BuildSettings. Does nothing if the pointer is null.
MRC_API const int * MR_MeshBuilder_VertSpan_Get_lastVertex(const MR_MeshBuilder_VertSpan *_this)
MRC_API MR_MeshBuilder_Triangle * MR_MeshBuilder_Triangle_AssignFromAnother(MR_MeshBuilder_Triangle *_this, const MR_MeshBuilder_Triangle *_other)
MRC_API const MR_FaceId * MR_MeshBuilder_Triangle_Get_f(const MR_MeshBuilder_Triangle *_this)
MRC_API void MR_MeshBuilder_BuildSettings_Destroy(const MR_MeshBuilder_BuildSettings *_this)
Destroys a heap-allocated instance of MR_MeshBuilder_BuildSettings. Does nothing if the pointer is nu...
struct MR_MeshBuilder_Triangle MR_MeshBuilder_Triangle
Definition MRMeshBuilderTypes.h:20
MRC_API int * MR_MeshBuilder_VertSpan_GetMutable_lastVertex(MR_MeshBuilder_VertSpan *_this)
MRC_API MR_MeshBuilder_VertSpan * MR_MeshBuilder_VertSpan_ConstructFromAnother(const MR_MeshBuilder_VertSpan *_other)
MRC_API MR_MeshBuilder_Triangle * MR_MeshBuilder_Triangle_DefaultConstruct(void)
MRC_API MR_MeshBuilder_VertSpan * MR_MeshBuilder_VertSpan_OffsetMutablePtr(MR_MeshBuilder_VertSpan *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 void MR_MeshBuilder_BuildSettings_Set_region(MR_MeshBuilder_BuildSettings *_this, MR_FaceBitSet *value)
MRC_API MR_std_array_MR_VertId_3 * MR_MeshBuilder_Triangle_GetMutable_v(MR_MeshBuilder_Triangle *_this)
MRC_API MR_MeshBuilder_BuildSettings * MR_MeshBuilder_BuildSettings_OffsetMutablePtr(MR_MeshBuilder_BuildSettings *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 MR_MeshBuilder_Triangle * MR_MeshBuilder_Triangle_Construct(MR_VertId a, MR_VertId b, MR_VertId c, MR_FaceId f)
MRC_API MR_MeshBuilder_VertSpan * MR_MeshBuilder_VertSpan_AssignFromAnother(MR_MeshBuilder_VertSpan *_this, const MR_MeshBuilder_VertSpan *_other)
MRC_API void MR_MeshBuilder_BuildSettings_Set_skippedFaceCount(MR_MeshBuilder_BuildSettings *_this, int *value)
MRC_API MR_FaceBitSet *const * MR_MeshBuilder_BuildSettings_Get_region(const MR_MeshBuilder_BuildSettings *_this)
MRC_API bool * MR_MeshBuilder_BuildSettings_GetMutable_allowNonManifoldEdge(MR_MeshBuilder_BuildSettings *_this)
MRC_API void MR_MeshBuilder_VertSpan_Set_lastVertex(MR_MeshBuilder_VertSpan *_this, int value)
MRC_API int ** MR_MeshBuilder_BuildSettings_GetMutable_skippedFaceCount(MR_MeshBuilder_BuildSettings *_this)
MRC_API void MR_MeshBuilder_VertSpan_Set_firstVertex(MR_MeshBuilder_VertSpan *_this, int value)
MRC_API MR_MeshBuilder_Triangle * MR_MeshBuilder_Triangle_ConstructFromAnother(const MR_MeshBuilder_Triangle *_other)
MRC_API bool MR_equal_MR_MeshBuilder_Triangle(const MR_MeshBuilder_Triangle *_this, const MR_MeshBuilder_Triangle *other)
MRC_API MR_MeshBuilder_BuildSettings * MR_MeshBuilder_BuildSettings_DefaultConstruct(void)
MRC_API MR_MeshBuilder_VertSpan * MR_MeshBuilder_VertSpan_DefaultConstructArray(size_t num_elems)
MRC_API MR_MeshBuilder_BuildSettings * MR_MeshBuilder_BuildSettings_DefaultConstructArray(size_t num_elems)
MRC_API int *const * MR_MeshBuilder_BuildSettings_Get_skippedFaceCount(const MR_MeshBuilder_BuildSettings *_this)
struct MR_MeshBuilder_VertSpan MR_MeshBuilder_VertSpan
Definition MRMeshBuilderTypes.h:29
MRC_API const MR_MeshBuilder_BuildSettings * MR_MeshBuilder_BuildSettings_OffsetPtr(const MR_MeshBuilder_BuildSettings *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 int * MR_MeshBuilder_VertSpan_Get_firstVertex(const MR_MeshBuilder_VertSpan *_this)
MRC_API void MR_MeshBuilder_BuildSettings_Set_shiftFaceId(MR_MeshBuilder_BuildSettings *_this, int value)
MRC_API int * MR_MeshBuilder_VertSpan_GetMutable_firstVertex(MR_MeshBuilder_VertSpan *_this)
MRC_API MR_MeshBuilder_VertSpan * MR_MeshBuilder_VertSpan_ConstructFrom(int firstVertex, int lastVertex)
MRC_API void MR_MeshBuilder_VertSpan_DestroyArray(const MR_MeshBuilder_VertSpan *_this)
Destroys a heap-allocated array of MR_MeshBuilder_VertSpan. Does nothing if the pointer is null.
MRC_API void MR_MeshBuilder_Triangle_DestroyArray(const MR_MeshBuilder_Triangle *_this)
Destroys a heap-allocated array of MR_MeshBuilder_Triangle. Does nothing if the pointer is null.
MRC_API MR_MeshBuilder_BuildSettings * MR_MeshBuilder_BuildSettings_ConstructFrom(MR_FaceBitSet *region, int shiftFaceId, bool allowNonManifoldEdge, int *skippedFaceCount)
MRC_API void MR_MeshBuilder_Triangle_Set_f(MR_MeshBuilder_Triangle *_this, MR_FaceId value)
MRC_API MR_MeshBuilder_Triangle * MR_MeshBuilder_Triangle_DefaultConstructArray(size_t num_elems)
MRC_API const MR_MeshBuilder_VertSpan * MR_MeshBuilder_VertSpan_OffsetPtr(const MR_MeshBuilder_VertSpan *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 int * MR_MeshBuilder_BuildSettings_GetMutable_shiftFaceId(MR_MeshBuilder_BuildSettings *_this)
MRC_API const MR_MeshBuilder_Triangle * MR_MeshBuilder_Triangle_OffsetPtr(const MR_MeshBuilder_Triangle *ptr, ptrdiff_t i)
Offsets a pointer to an array element by i positions (not bytes). Use only if you're certain that the...
struct MR_MeshBuilder_BuildSettings MR_MeshBuilder_BuildSettings
Definition MRMesh.h:25
#define MRC_API
Definition exports.h:11
Definition MRId.h:45
Definition MRId.h:55
A fixed-size array of MR::VertId of size 3.
Definition std_array_MR_VertId_3.h:12