MeshLib C Docs
Loading...
Searching...
No Matches
MRMeshExtrude.h
Go to the documentation of this file.
1#pragma once
2
3#include <MRCMisc/exports.h>
4
5#include <stddef.h>
6
7#ifdef __cplusplus
8extern "C" {
9#endif
10
11typedef struct MR_FaceBitSet MR_FaceBitSet; // Defined in `#include <MRCMesh/MRBitSet.h>`.
12typedef struct MR_Mesh MR_Mesh; // Defined in `#include <MRCMesh/MRMesh.h>`.
13typedef struct MR_UndirectedEdgeBitSet MR_UndirectedEdgeBitSet; // Defined in `#include <MRCMesh/MRBitSet.h>`.
14typedef struct MR_phmap_flat_hash_map_MR_VertId_MR_VertId MR_phmap_flat_hash_map_MR_VertId_MR_VertId; // Defined in `#include <MRCMisc/phmap_flat_hash_map_MR_VertId_MR_VertId.h>`.
15
16
17// holds together settings for makeDegenerateBandAroundRegion
20
21// (optional) output newly generated faces
26
27// (optional) output newly generated faces
31
32// (optional) output newly generated faces
37
38// (optional) output edges orthogonal to the boundary
43
44// (optional) output edges orthogonal to the boundary
48
49// (optional) output edges orthogonal to the boundary
54
55// (optional) return legth of the longest edges from the boundary of the region
60
61// (optional) return legth of the longest edges from the boundary of the region
65
66// (optional) return legth of the longest edges from the boundary of the region
71
72// (optional) map of new vertices to old ones
77
78// (optional) map of new vertices to old ones
82
83// (optional) map of new vertices to old ones
88
92
97
101
104
107
112
115
118
124
139
140#ifdef __cplusplus
141} // extern "C"
142#endif
struct MR_FaceBitSet MR_FaceBitSet
Definition MRAABBTreeBase.h:25
struct MR_UndirectedEdgeBitSet MR_UndirectedEdgeBitSet
Definition MRAABBTreeBase.h:29
struct MR_phmap_flat_hash_map_MR_VertId_MR_VertId MR_phmap_flat_hash_map_MR_VertId_MR_VertId
Definition MRBitSet.h:53
struct MR_Mesh MR_Mesh
Definition MRCtm.h:13
MRC_API MR_phmap_flat_hash_map_MR_VertId_MR_VertId ** MR_MakeDegenerateBandAroundRegionParams_GetMutable_new2OldMap(MR_MakeDegenerateBandAroundRegionParams *_this)
MRC_API MR_UndirectedEdgeBitSet ** MR_MakeDegenerateBandAroundRegionParams_GetMutable_outExtrudedEdges(MR_MakeDegenerateBandAroundRegionParams *_this)
MRC_API float ** MR_MakeDegenerateBandAroundRegionParams_GetMutable_maxEdgeLength(MR_MakeDegenerateBandAroundRegionParams *_this)
MRC_API MR_MakeDegenerateBandAroundRegionParams * MR_MakeDegenerateBandAroundRegionParams_DefaultConstructArray(size_t num_elems)
MRC_API void MR_makeDegenerateBandAroundRegion(MR_Mesh *mesh, const MR_FaceBitSet *region, const MR_MakeDegenerateBandAroundRegionParams *params)
Create a band of degenerate faces along the border of the specified region and the rest of the mesh.
MRC_API MR_MakeDegenerateBandAroundRegionParams * MR_MakeDegenerateBandAroundRegionParams_ConstructFrom(MR_FaceBitSet *outNewFaces, MR_UndirectedEdgeBitSet *outExtrudedEdges, float *maxEdgeLength, MR_phmap_flat_hash_map_MR_VertId_MR_VertId *new2OldMap)
MRC_API void MR_MakeDegenerateBandAroundRegionParams_Set_new2OldMap(MR_MakeDegenerateBandAroundRegionParams *_this, MR_phmap_flat_hash_map_MR_VertId_MR_VertId *value)
MRC_API MR_MakeDegenerateBandAroundRegionParams * MR_MakeDegenerateBandAroundRegionParams_OffsetMutablePtr(MR_MakeDegenerateBandAroundRegionParams *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_phmap_flat_hash_map_MR_VertId_MR_VertId *const * MR_MakeDegenerateBandAroundRegionParams_Get_new2OldMap(const MR_MakeDegenerateBandAroundRegionParams *_this)
MRC_API void MR_MakeDegenerateBandAroundRegionParams_Set_outNewFaces(MR_MakeDegenerateBandAroundRegionParams *_this, MR_FaceBitSet *value)
MRC_API MR_UndirectedEdgeBitSet *const * MR_MakeDegenerateBandAroundRegionParams_Get_outExtrudedEdges(const MR_MakeDegenerateBandAroundRegionParams *_this)
MRC_API void MR_MakeDegenerateBandAroundRegionParams_DestroyArray(const MR_MakeDegenerateBandAroundRegionParams *_this)
Destroys a heap-allocated array of MR_MakeDegenerateBandAroundRegionParams. Does nothing if the point...
MRC_API float *const * MR_MakeDegenerateBandAroundRegionParams_Get_maxEdgeLength(const MR_MakeDegenerateBandAroundRegionParams *_this)
MRC_API MR_MakeDegenerateBandAroundRegionParams * MR_MakeDegenerateBandAroundRegionParams_ConstructFromAnother(const MR_MakeDegenerateBandAroundRegionParams *_other)
MRC_API MR_FaceBitSet ** MR_MakeDegenerateBandAroundRegionParams_GetMutable_outNewFaces(MR_MakeDegenerateBandAroundRegionParams *_this)
MRC_API void MR_MakeDegenerateBandAroundRegionParams_Set_maxEdgeLength(MR_MakeDegenerateBandAroundRegionParams *_this, float *value)
struct MR_MakeDegenerateBandAroundRegionParams MR_MakeDegenerateBandAroundRegionParams
Generated from class MR::MakeDegenerateBandAroundRegionParams.
Definition MRMeshExtrude.h:19
MRC_API const MR_MakeDegenerateBandAroundRegionParams * MR_MakeDegenerateBandAroundRegionParams_OffsetPtr(const MR_MakeDegenerateBandAroundRegionParams *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_MakeDegenerateBandAroundRegionParams * MR_MakeDegenerateBandAroundRegionParams_AssignFromAnother(MR_MakeDegenerateBandAroundRegionParams *_this, const MR_MakeDegenerateBandAroundRegionParams *_other)
MRC_API MR_FaceBitSet *const * MR_MakeDegenerateBandAroundRegionParams_Get_outNewFaces(const MR_MakeDegenerateBandAroundRegionParams *_this)
MRC_API MR_MakeDegenerateBandAroundRegionParams * MR_MakeDegenerateBandAroundRegionParams_DefaultConstruct(void)
MRC_API void MR_MakeDegenerateBandAroundRegionParams_Set_outExtrudedEdges(MR_MakeDegenerateBandAroundRegionParams *_this, MR_UndirectedEdgeBitSet *value)
MRC_API void MR_MakeDegenerateBandAroundRegionParams_Destroy(const MR_MakeDegenerateBandAroundRegionParams *_this)
Destroys a heap-allocated instance of MR_MakeDegenerateBandAroundRegionParams. Does nothing if the po...
#define MRC_API
Definition exports.h:11