MeshLib C Docs
Loading...
Searching...
No Matches
MRPolylineComponents.h
Go to the documentation of this file.
1#pragma once
2
3#include <MRCMesh/MRId.h>
4#include <MRCMisc/exports.h>
5
6#include <stddef.h>
7
8#ifdef __cplusplus
9extern "C" {
10#endif
11
12typedef struct MR_Polyline2 MR_Polyline2; // Defined in `#include <MRCMesh/MRPolyline.h>`.
13typedef struct MR_Polyline3 MR_Polyline3; // Defined in `#include <MRCMesh/MRPolyline.h>`.
14typedef struct MR_PolylineTopology MR_PolylineTopology; // Defined in `#include <MRCMesh/MRPolylineTopology.h>`.
15typedef struct MR_UndirectedEdgeBitSet MR_UndirectedEdgeBitSet; // Defined in `#include <MRCMesh/MRBitSet.h>`.
16typedef struct MR_UnionFind_MR_UndirectedEdgeId MR_UnionFind_MR_UndirectedEdgeId; // Defined in `#include <MRCMesh/MRUnionFind.h>`.
17typedef struct MR_std_pair_std_vector_MR_UndirectedEdgeBitSet_int MR_std_pair_std_vector_MR_UndirectedEdgeBitSet_int; // Defined in `#include <MRCMisc/std_pair_std_vector_MR_UndirectedEdgeBitSet_int.h>`.
18typedef struct MR_std_vector_MR_UndirectedEdgeBitSet MR_std_vector_MR_UndirectedEdgeBitSet; // Defined in `#include <MRCMisc/std_vector_MR_UndirectedEdgeBitSet.h>`.
19
20
24
29
36
43
52
59
65
72
79
86
93
100
106
113
117
122
128
132
136
142
145
148
156
163
170
176
183MRC_API MR_UndirectedEdgeBitSet *MR_PolylineComponents_getLargestComponent_MR_Vector2f(const MR_Polyline2 *polyline, const float *minLength, int *numSmallerComponents);
184
191MRC_API MR_UndirectedEdgeBitSet *MR_PolylineComponents_getLargestComponent_MR_Vector3f(const MR_Polyline3 *polyline, const float *minLength, int *numSmallerComponents);
192
193#ifdef __cplusplus
194} // extern "C"
195#endif
struct MR_UndirectedEdgeBitSet MR_UndirectedEdgeBitSet
Definition MRAABBTreeBase.h:24
struct MR_Polyline3 MR_Polyline3
Definition MRAABBTreePolyline.h:21
struct MR_Polyline2 MR_Polyline2
Definition MRAABBTreePolyline.h:20
struct MR_PolylineTopology MR_PolylineTopology
Definition MREdgePoint.h:15
struct MR_std_vector_MR_UndirectedEdgeBitSet MR_std_vector_MR_UndirectedEdgeBitSet
Definition MRMeshComponents.h:35
struct MR_UnionFind_MR_UndirectedEdgeId MR_UnionFind_MR_UndirectedEdgeId
Union-find data structure for representing disjoint sets of elements with few very quick operations: ...
Definition MRMeshComponents.h:22
MRC_API int *const * MR_PolylineComponents_LargeByLengthComponentsSettings_Get_numSmallerComponents(const MR_PolylineComponents_LargeByLengthComponentsSettings *_this)
MRC_API size_t MR_PolylineComponents_getNumComponents(const MR_PolylineTopology *topology)
MRC_API float * MR_PolylineComponents_LargeByLengthComponentsSettings_GetMutable_minLength(MR_PolylineComponents_LargeByLengthComponentsSettings *_this)
MRC_API MR_PolylineComponents_LargeByLengthComponentsSettings * MR_PolylineComponents_LargeByLengthComponentsSettings_AssignFromAnother(MR_PolylineComponents_LargeByLengthComponentsSettings *_this, const MR_PolylineComponents_LargeByLengthComponentsSettings *_other)
MRC_API MR_PolylineComponents_LargeByLengthComponentsSettings * MR_PolylineComponents_LargeByLengthComponentsSettings_OffsetMutablePtr(MR_PolylineComponents_LargeByLengthComponentsSettings *ptr, ptrdiff_t i)
MRC_API void MR_PolylineComponents_LargeByLengthComponentsSettings_Set_maxLargeComponents(MR_PolylineComponents_LargeByLengthComponentsSettings *_this, int value)
MRC_API MR_PolylineComponents_LargeByLengthComponentsSettings * MR_PolylineComponents_LargeByLengthComponentsSettings_ConstructFromAnother(const MR_PolylineComponents_LargeByLengthComponentsSettings *_other)
MRC_API void MR_PolylineComponents_LargeByLengthComponentsSettings_DestroyArray(const MR_PolylineComponents_LargeByLengthComponentsSettings *_this)
Destroys a heap-allocated array of MR_PolylineComponents_LargeByLengthComponentsSettings....
MRC_API void MR_PolylineComponents_LargeByLengthComponentsSettings_Set_numSmallerComponents(MR_PolylineComponents_LargeByLengthComponentsSettings *_this, int *value)
MRC_API MR_std_vector_MR_UndirectedEdgeBitSet * MR_PolylineComponents_getAllComponents_1(const MR_PolylineTopology *topology)
MRC_API MR_PolylineComponents_LargeByLengthComponentsSettings * MR_PolylineComponents_LargeByLengthComponentsSettings_DefaultConstruct(void)
MRC_API MR_UnionFind_MR_UndirectedEdgeId * MR_PolylineComponents_getUnionFindStructure(const MR_PolylineTopology *topology)
MRC_API MR_std_pair_std_vector_MR_UndirectedEdgeBitSet_int * MR_PolylineComponents_getAllComponents_2(const MR_PolylineTopology *topology, int maxComponentCount)
MRC_API MR_UndirectedEdgeBitSet * MR_PolylineComponents_getComponent(const MR_PolylineTopology *topology, MR_UndirectedEdgeId id)
MRC_API const MR_PolylineComponents_LargeByLengthComponentsSettings * MR_PolylineComponents_LargeByLengthComponentsSettings_OffsetPtr(const MR_PolylineComponents_LargeByLengthComponentsSettings *ptr, ptrdiff_t i)
struct MR_PolylineComponents_LargeByLengthComponentsSettings MR_PolylineComponents_LargeByLengthComponentsSettings
Definition MRPolylineComponents.h:23
MRC_API void MR_PolylineComponents_LargeByLengthComponentsSettings_Set_minLength(MR_PolylineComponents_LargeByLengthComponentsSettings *_this, float value)
MRC_API MR_PolylineComponents_LargeByLengthComponentsSettings * MR_PolylineComponents_LargeByLengthComponentsSettings_ConstructFrom(int maxLargeComponents, int *numSmallerComponents, float minLength)
MRC_API void MR_PolylineComponents_LargeByLengthComponentsSettings_Destroy(const MR_PolylineComponents_LargeByLengthComponentsSettings *_this)
Destroys a heap-allocated instance of MR_PolylineComponents_LargeByLengthComponentsSettings....
MRC_API int * MR_PolylineComponents_LargeByLengthComponentsSettings_GetMutable_maxLargeComponents(MR_PolylineComponents_LargeByLengthComponentsSettings *_this)
MRC_API MR_UndirectedEdgeBitSet * MR_PolylineComponents_getLargestComponent_MR_Vector2f(const MR_Polyline2 *polyline, const float *minLength, int *numSmallerComponents)
MRC_API MR_UndirectedEdgeBitSet * MR_PolylineComponents_getLargestComponent_MR_Vector3f(const MR_Polyline3 *polyline, const float *minLength, int *numSmallerComponents)
MRC_API const float * MR_PolylineComponents_LargeByLengthComponentsSettings_Get_minLength(const MR_PolylineComponents_LargeByLengthComponentsSettings *_this)
MRC_API int ** MR_PolylineComponents_LargeByLengthComponentsSettings_GetMutable_numSmallerComponents(MR_PolylineComponents_LargeByLengthComponentsSettings *_this)
MRC_API MR_std_vector_MR_UndirectedEdgeBitSet * MR_PolylineComponents_getNLargeByLengthComponents_MR_Vector3f(const MR_Polyline3 *polyline, const MR_PolylineComponents_LargeByLengthComponentsSettings *settings)
MRC_API MR_std_vector_MR_UndirectedEdgeBitSet * MR_PolylineComponents_getNLargeByLengthComponents_MR_Vector2f(const MR_Polyline2 *polyline, const MR_PolylineComponents_LargeByLengthComponentsSettings *settings)
struct MR_std_pair_std_vector_MR_UndirectedEdgeBitSet_int MR_std_pair_std_vector_MR_UndirectedEdgeBitSet_int
Definition MRPolylineComponents.h:17
MRC_API MR_PolylineComponents_LargeByLengthComponentsSettings * MR_PolylineComponents_LargeByLengthComponentsSettings_DefaultConstructArray(size_t num_elems)
MRC_API const int * MR_PolylineComponents_LargeByLengthComponentsSettings_Get_maxLargeComponents(const MR_PolylineComponents_LargeByLengthComponentsSettings *_this)
#define MRC_API
Definition include/MRCMisc/exports.h:11
Definition MRId.h:21