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
7#ifdef __cplusplus
8extern "C" {
9#endif
10
11
12typedef char MR_FilterType;
13enum // MR_FilterType
14{
17};
18
19typedef char MR_WrapType;
20enum // MR_WrapType
21{
25};
26
28typedef char MR_Reorder;
29enum // MR_Reorder
30{
37};
38
47
56
64
66typedef bool MR_Processing;
67enum // MR_Processing
68{
71};
72
80
90
106
107typedef char MR_UseAABBTree;
108enum // MR_UseAABBTree
109{
110 // AABB-tree of the mesh will not be used, even if it is available
112 // AABB-tree of the mesh will be used even if it has to be constructed
114 // AABB-tree of the mesh will be used if it was previously constructed and available, and will not be used otherwise
116};
117
120enum // MR_GeodesicPathApprox
121{
128};
129
131typedef bool MR_Turn;
132enum // MR_Turn
133{
136};
137
141
142#ifdef __cplusplus
143} // extern "C"
144#endif
char MR_WrapType
Definition MREnums.h:19
@ MR_Reorder_None
the order is not changed
Definition MREnums.h:32
@ MR_Reorder_AABBTree
Definition MREnums.h:36
@ MR_Reorder_Lexicographically
the order is determined so to put close in space points in close indices (optimal for compression)
Definition MREnums.h:34
@ MR_GeodesicPathApprox_DijkstraBiDir
compute edge-only path by building it from start and end simultaneously
Definition MREnums.h:123
@ MR_GeodesicPathApprox_DijkstraAStar
compute edge-only path using A*-search algorithm
Definition MREnums.h:125
@ MR_GeodesicPathApprox_FastMarching
use Fast Marching algorithm
Definition MREnums.h:127
@ MR_Turn_Rightmost
Definition MREnums.h:135
@ MR_Turn_Leftmost
Definition MREnums.h:134
@ MR_WrapType_Clamp
Definition MREnums.h:24
@ MR_WrapType_Repeat
Definition MREnums.h:22
@ MR_WrapType_Mirror
Definition MREnums.h:23
@ MR_Processing_Continue
Definition MREnums.h:69
@ MR_Processing_Stop
Definition MREnums.h:70
char MR_Reorder
determines how points to be ordered
Definition MREnums.h:28
MR_OrientNormals
the method how to choose between two opposite normal orientations
Definition MREnums.h:75
@ MR_OrientNormals_AwayFromOrigin
Definition MREnums.h:77
@ MR_OrientNormals_TowardOrigin
Definition MREnums.h:76
@ MR_OrientNormals_Smart
Definition MREnums.h:78
@ MR_FilterType_Discrete
Definition MREnums.h:16
@ MR_FilterType_Linear
Definition MREnums.h:15
MR_ColoringType
Definition MREnums.h:94
@ MR_ColoringType_SolidColor
Use one color for whole object.
Definition MREnums.h:96
@ MR_ColoringType_PrimitivesColorMap
Use different color (taken from faces colormap) for each face (primitive for object mesh)
Definition MREnums.h:98
@ MR_ColoringType_VertsColorMap
Definition MREnums.h:104
@ MR_ColoringType_FacesColorMap
Use different color (taken from faces colormap) for each line (primitive for object lines)
Definition MREnums.h:100
@ MR_ColoringType_LinesColorMap
Use different color (taken from verts colormap) for each vertex.
Definition MREnums.h:102
@ MR_UseAABBTree_No
Definition MREnums.h:111
@ MR_UseAABBTree_YesIfAlreadyConstructed
Definition MREnums.h:115
@ MR_UseAABBTree_Yes
Definition MREnums.h:113
MR_EdgeWeights
determines the weight of each edge in applications like Laplacian
Definition MREnums.h:50
@ MR_EdgeWeights_Unit
all edges have same weight=1
Definition MREnums.h:52
@ MR_EdgeWeights_Cotan
edge weight depends on local geometry and uses cotangent values
Definition MREnums.h:54
char MR_UseAABBTree
Definition MREnums.h:107
bool MR_Turn
what way a path can follow in case of several alternatives
Definition MREnums.h:131
MR_RememberShape
Definition MREnums.h:58
@ MR_RememberShape_No
Definition MREnums.h:62
@ MR_RememberShape_Yes
true Laplacian mode when initial mesh shape is remembered and copied in apply
Definition MREnums.h:60
MRC_API const char * MR_asString_MR_ColoringType(MR_ColoringType ct)
char MR_FilterType
Definition MREnums.h:12
bool MR_Processing
typically returned from callbacks to control the behavior of main algorithm
Definition MREnums.h:66
MR_OffsetMode
Definition MREnums.h:82
@ MR_OffsetMode_Standard
create mesh using standard marching cubes with additional sharpening implemented in MeshLib
Definition MREnums.h:86
@ MR_OffsetMode_Smooth
create mesh using dual marching cubes from OpenVDB library
Definition MREnums.h:84
@ MR_OffsetMode_Sharpening
Definition MREnums.h:88
MR_VertexMass
determines the weight or mass of each vertex in applications like Laplacian
Definition MREnums.h:41
@ MR_VertexMass_Unit
all vertices have same mass=1
Definition MREnums.h:43
@ MR_VertexMass_NeiArea
vertex mass depends on local geometry and proportional to the area of first-ring triangles
Definition MREnums.h:45
char MR_GeodesicPathApprox
the algorithm to compute approximately geodesic path
Definition MREnums.h:119
#define MRC_API
Definition include/MRCMisc/exports.h:11