MeshLib C Docs
Loading...
Searching...
No Matches
MREnums.h
Go to the documentation of this file.
1#pragma once
2
3#include <MRCMisc/exports.h>
4
5#include <stdbool.h>
6#include <stdint.h>
7
8#ifdef __cplusplus
9extern "C" {
10#endif
11
12
14typedef int32_t MR_VertexMass;
15enum // MR_VertexMass
16{
21};
22
24typedef int32_t MR_EdgeWeights;
25enum // MR_EdgeWeights
26{
31};
32
34typedef bool MR_Processing;
35enum // MR_Processing
36{
39};
40
42typedef int32_t MR_OrientNormals;
43enum // MR_OrientNormals
44{
48};
49
50typedef int32_t MR_OffsetMode;
51enum // MR_OffsetMode
52{
59};
60
63typedef int32_t MR_ColoringType;
64enum // MR_ColoringType
65{
76};
77
78typedef char MR_UseAABBTree;
79enum // MR_UseAABBTree
80{
81 // AABB-tree of the mesh will not be used, even if it is available
83 // AABB-tree of the mesh will be used even if it has to be constructed
85 // AABB-tree of the mesh will be used if it was previously constructed and available, and will not be used otherwise
87};
88
91enum // MR_GeodesicPathApprox
92{
99};
100
104
105#ifdef __cplusplus
106} // extern "C"
107#endif
int32_t MR_OrientNormals
the method how to choose between two opposite normal orientations
Definition MREnums.h:42
@ MR_UseAABBTree_No
Definition MREnums.h:82
@ MR_UseAABBTree_YesIfAlreadyConstructed
Definition MREnums.h:86
@ MR_UseAABBTree_Yes
Definition MREnums.h:84
int32_t MR_ColoringType
Definition MREnums.h:63
@ MR_Processing_Continue
Definition MREnums.h:37
@ MR_Processing_Stop
Definition MREnums.h:38
@ MR_EdgeWeights_Unit
all edges have same weight=1
Definition MREnums.h:28
@ MR_EdgeWeights_Cotan
edge weight depends on local geometry and uses cotangent values
Definition MREnums.h:30
char MR_UseAABBTree
Definition MREnums.h:78
@ MR_ColoringType_SolidColor
Use one color for whole object.
Definition MREnums.h:67
@ MR_ColoringType_PrimitivesColorMap
Use different color (taken from faces colormap) for each face (primitive for object mesh)
Definition MREnums.h:69
@ MR_ColoringType_VertsColorMap
Definition MREnums.h:75
@ MR_ColoringType_FacesColorMap
Use different color (taken from faces colormap) for each line (primitive for object lines)
Definition MREnums.h:71
@ MR_ColoringType_LinesColorMap
Use different color (taken from verts colormap) for each vertex.
Definition MREnums.h:73
@ MR_VertexMass_Unit
all vertices have same mass=1
Definition MREnums.h:18
@ MR_VertexMass_NeiArea
vertex mass depends on local geometry and proportional to the area of first-ring triangles
Definition MREnums.h:20
@ MR_GeodesicPathApprox_DijkstraBiDir
compute edge-only path by building it from start and end simultaneously
Definition MREnums.h:94
@ MR_GeodesicPathApprox_DijkstraAStar
compute edge-only path using A*-search algorithm
Definition MREnums.h:96
@ MR_GeodesicPathApprox_FastMarching
use Fast Marching algorithm
Definition MREnums.h:98
int32_t MR_VertexMass
determines the weight or mass of each vertex in applications like Laplacian
Definition MREnums.h:14
int32_t MR_OffsetMode
Definition MREnums.h:50
MRC_API const char * MR_asString_MR_ColoringType(MR_ColoringType ct)
int32_t MR_EdgeWeights
determines the weight of each edge in applications like Laplacian
Definition MREnums.h:24
@ MR_OffsetMode_Standard
create mesh using standard marching cubes with additional sharpening implemented in MeshLib
Definition MREnums.h:56
@ MR_OffsetMode_Smooth
create mesh using dual marching cubes from OpenVDB library
Definition MREnums.h:54
@ MR_OffsetMode_Sharpening
Definition MREnums.h:58
bool MR_Processing
typically returned from callbacks to control the behavior of main algorithm
Definition MREnums.h:34
char MR_GeodesicPathApprox
the algorithm to compute approximately geodesic path
Definition MREnums.h:90
@ MR_OrientNormals_AwayFromOrigin
Definition MREnums.h:46
@ MR_OrientNormals_TowardOrigin
Definition MREnums.h:45
@ MR_OrientNormals_Smart
Definition MREnums.h:47
#define MRC_API
Definition exports.h:11