MeshLib C Docs
Loading...
Searching...
No Matches
MRRegionBoundary.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/exports.h>
6
7#include <stdbool.h>
8
9#ifdef __cplusplus
10extern "C" {
11#endif
12
13typedef struct MR_EdgeBitSet MR_EdgeBitSet; // Defined in `#include <MRCMesh/MRBitSet.h>`.
14typedef struct MR_FaceBitSet MR_FaceBitSet; // Defined in `#include <MRCMesh/MRBitSet.h>`.
15typedef struct MR_Mesh MR_Mesh; // Defined in `#include <MRCMesh/MRMesh.h>`.
16typedef struct MR_MeshTopology MR_MeshTopology; // Defined in `#include <MRCMesh/MRMeshTopology.h>`.
17typedef struct MR_UndirectedEdgeBitSet MR_UndirectedEdgeBitSet; // Defined in `#include <MRCMesh/MRBitSet.h>`.
18typedef struct MR_VertBitSet MR_VertBitSet; // Defined in `#include <MRCMesh/MRBitSet.h>`.
19typedef struct MR_std_vector_MR_EdgeId MR_std_vector_MR_EdgeId; // Defined in `#include <MRCMisc/std_vector_MR_EdgeId.h>`.
20typedef struct MR_std_vector_std_vector_MR_EdgeId MR_std_vector_std_vector_MR_EdgeId; // Defined in `#include <MRCMisc/std_vector_std_vector_MR_EdgeId.h>`.
21
22
30
36
44
50
60
70
78
86
93MRC_API MR_EdgeBitSet *MR_findAllLeftBdEdges(const MR_MeshTopology *topology, const MR_FaceBitSet *region, const bool *innerMeshEdgesOnly);
94
103MRC_API MR_std_vector_std_vector_MR_EdgeId *MR_delRegionKeepBd(MR_Mesh *mesh, const MR_FaceBitSet *region, const bool *keepLoneHoles);
104
112
119
126
133
141
148
154MRC_API MR_VertBitSet *MR_getBoundaryVerts(const MR_MeshTopology *topology, const MR_FaceBitSet *region);
155
163
170
176MRC_API MR_FaceBitSet *MR_getInnerFaces(const MR_MeshTopology *topology, const MR_VertBitSet *verts);
177
183MRC_API MR_EdgeBitSet *MR_getRegionEdges(const MR_MeshTopology *topology, const MR_FaceBitSet *faces);
184
191
198
205
212
219
226
233
241
248
249#ifdef __cplusplus
250} // extern "C"
251#endif
struct MR_std_vector_std_vector_MR_EdgeId MR_std_vector_std_vector_MR_EdgeId
Definition MR2DContoursTriangulation.h:18
struct MR_MeshTopology MR_MeshTopology
Definition MR2DContoursTriangulation.h:15
struct MR_UndirectedEdgeBitSet MR_UndirectedEdgeBitSet
Definition MRAABBTreeBase.h:28
struct MR_VertBitSet MR_VertBitSet
Definition MRAABBTree.h:22
struct MR_FaceBitSet MR_FaceBitSet
Definition MRAABBTree.h:17
struct MR_EdgeBitSet MR_EdgeBitSet
Definition MRBitSet.h:84
struct MR_std_vector_MR_EdgeId MR_std_vector_MR_EdgeId
Definition MRContoursStitch.h:11
struct MR_Mesh MR_Mesh
Definition MRCtm.h:16
bool MR_Turn
what way a path can follow in case of several alternatives
Definition MREnums.h:123
MRC_API MR_VertBitSet * MR_getBoundaryVerts(const MR_MeshTopology *topology, const MR_FaceBitSet *region)
MRC_API MR_std_vector_MR_EdgeId * MR_trackRightBoundaryLoop_MR_EdgeId(const MR_MeshTopology *topology, MR_EdgeId e0, const MR_FaceBitSet *region)
MRC_API MR_FaceBitSet * MR_getInnerFaces(const MR_MeshTopology *topology, const MR_VertBitSet *verts)
MRC_API MR_UndirectedEdgeBitSet * MR_findRegionBoundaryUndirectedEdgesInsideMesh(const MR_MeshTopology *topology, const MR_FaceBitSet *region)
MRC_API MR_EdgeBitSet * MR_findAllLeftBdEdges(const MR_MeshTopology *topology, const MR_FaceBitSet *region, const bool *innerMeshEdgesOnly)
MRC_API const MR_VertBitSet * MR_getIncidentVerts_3_const_MR_FaceBitSet_ptr(const MR_MeshTopology *topology, const MR_FaceBitSet *faces, MR_VertBitSet *store)
MRC_API MR_UndirectedEdgeBitSet * MR_getInnerEdges_MR_VertBitSet(const MR_MeshTopology *topology, const MR_VertBitSet *verts)
MRC_API MR_std_vector_std_vector_MR_EdgeId * MR_delRegionKeepBd(MR_Mesh *mesh, const MR_FaceBitSet *region, const bool *keepLoneHoles)
MRC_API MR_std_vector_std_vector_MR_EdgeId * MR_findLeftBoundaryInsideMesh(const MR_MeshTopology *topology, const MR_FaceBitSet *region)
MRC_API MR_EdgeBitSet * MR_getRegionEdges(const MR_MeshTopology *topology, const MR_FaceBitSet *faces)
MRC_API MR_FaceBitSet * MR_findRegionOuterFaces(const MR_MeshTopology *topology, const MR_FaceBitSet *region)
MRC_API MR_std_vector_std_vector_MR_EdgeId * MR_extractAllLoops(const MR_MeshTopology *topology, MR_EdgeBitSet *edges, MR_Turn turn)
MRC_API MR_UndirectedEdgeBitSet * MR_getInnerEdges_MR_FaceBitSet(const MR_MeshTopology *topology, const MR_FaceBitSet *region)
MRC_API MR_std_vector_MR_EdgeId * MR_trackRightBoundaryLoop_MR_FaceBitSet(const MR_MeshTopology *topology, const MR_FaceBitSet *region, MR_EdgeId e0)
MRC_API MR_VertBitSet * MR_getInnerVerts_MR_UndirectedEdgeBitSet(const MR_MeshTopology *topology, const MR_UndirectedEdgeBitSet *edges)
MRC_API MR_FaceBitSet * MR_getNeighborFaces(const MR_MeshTopology *topology, const MR_UndirectedEdgeBitSet *edges)
MRC_API MR_EdgeId MR_extractPath(const MR_MeshTopology *topology, MR_EdgeId e0, MR_EdgeBitSet *edges, MR_std_vector_MR_EdgeId *outPath, MR_Turn turn)
MRC_API MR_FaceBitSet * MR_getIncidentFaces_MR_UndirectedEdgeBitSet(const MR_MeshTopology *topology, const MR_UndirectedEdgeBitSet *edges)
MRC_API MR_VertBitSet * MR_getInnerVerts_const_MR_FaceBitSet_ptr(const MR_MeshTopology *topology, const MR_FaceBitSet *region)
MRC_API MR_std_vector_MR_EdgeId * MR_trackLeftBoundaryLoop_MR_EdgeId(const MR_MeshTopology *topology, MR_EdgeId e0, const MR_FaceBitSet *region)
MRC_API const MR_VertBitSet * MR_getIncidentVerts_3_const_MR_UndirectedEdgeBitSet_ptr(const MR_MeshTopology *topology, const MR_UndirectedEdgeBitSet *edges, MR_VertBitSet *store)
MRC_API MR_VertBitSet * MR_getIncidentVerts_2_MR_UndirectedEdgeBitSet(const MR_MeshTopology *topology, const MR_UndirectedEdgeBitSet *edges)
MRC_API MR_VertBitSet * MR_getIncidentVerts_2_MR_FaceBitSet(const MR_MeshTopology *topology, const MR_FaceBitSet *faces)
MRC_API MR_std_vector_std_vector_MR_EdgeId * MR_findLeftBoundary(const MR_MeshTopology *topology, const MR_FaceBitSet *region)
MRC_API MR_std_vector_std_vector_MR_EdgeId * MR_findRightBoundary(const MR_MeshTopology *topology, const MR_FaceBitSet *region)
MRC_API MR_VertBitSet * MR_getRegionBoundaryVerts(const MR_MeshTopology *topology, const MR_FaceBitSet *region)
MRC_API MR_UndirectedEdgeBitSet * MR_getIncidentEdges_MR_FaceBitSet(const MR_MeshTopology *topology, const MR_FaceBitSet *faces)
MRC_API MR_std_vector_MR_EdgeId * MR_trackLeftBoundaryLoop_MR_FaceBitSet(const MR_MeshTopology *topology, const MR_FaceBitSet *region, MR_EdgeId e0)
MRC_API MR_UndirectedEdgeBitSet * MR_getIncidentEdges_MR_UndirectedEdgeBitSet(const MR_MeshTopology *topology, const MR_UndirectedEdgeBitSet *edges)
MRC_API MR_FaceBitSet * MR_getIncidentFaces_MR_VertBitSet(const MR_MeshTopology *topology, const MR_VertBitSet *verts)
Definition MRId.h:153