MeshLib C Docs
Loading...
Searching...
No Matches
MRSignDetectionMode.h File Reference
#include <MRCMisc/exports.h>
#include <stdint.h>

Go to the source code of this file.

Typedefs

typedef int32_t MR_SignDetectionMode
 how to determine the sign of distances from a mesh
 
typedef int32_t MR_SignDetectionModeShort
 how to determine the sign of distances from a mesh, short version including auto-detection
 

Enumerations

enum  {
  MR_SignDetectionMode_Unsigned = 0 , MR_SignDetectionMode_OpenVDB = 1 , MR_SignDetectionMode_ProjectionNormal = 2 , MR_SignDetectionMode_WindingRule = 3 ,
  MR_SignDetectionMode_HoleWindingRule = 4
}
 
enum  { MR_SignDetectionModeShort_Auto = 0 , MR_SignDetectionModeShort_HoleWindingNumber = 1 , MR_SignDetectionModeShort_ProjectionNormal = 2 }
 

Functions

MRC_API const char * MR_asString_MR_SignDetectionMode (MR_SignDetectionMode m)
 

Typedef Documentation

◆ MR_SignDetectionMode

typedef int32_t MR_SignDetectionMode

how to determine the sign of distances from a mesh

◆ MR_SignDetectionModeShort

typedef int32_t MR_SignDetectionModeShort

how to determine the sign of distances from a mesh, short version including auto-detection

Enumeration Type Documentation

◆ anonymous enum

anonymous enum
Enumerator
MR_SignDetectionMode_Unsigned 

unsigned distance, useful for bidirectional Shell offset

MR_SignDetectionMode_OpenVDB 

sign detection from OpenVDB library, which is good and fast if input geometry is closed

MR_SignDetectionMode_ProjectionNormal 

the sign is determined based on pseudonormal in closest mesh point (unsafe in case of self-intersections)

MR_SignDetectionMode_WindingRule 

ray intersection counter, significantly slower than ProjectionNormal and does not support holes in mesh; this mode is slow, and it does NOT have CUDA acceleration at this moment

MR_SignDetectionMode_HoleWindingRule 

computes robust winding number generalization with support of holes and self-intersections in mesh, it is the slowest sign detection mode, but it CAN be accelerated with CUDA if this mode activated e.g. in OffsetParameters.fwn

◆ anonymous enum

anonymous enum
Enumerator
MR_SignDetectionModeShort_Auto 

automatic selection of the fastest method among safe options for the current mesh

detects sign from the winding number generalization with support for holes and self-intersections in mesh

MR_SignDetectionModeShort_HoleWindingNumber 

detects sign from the pseudonormal in closest mesh point, which is fast but unsafe in the presence of holes and self-intersections in mesh

MR_SignDetectionModeShort_ProjectionNormal 

Function Documentation

◆ MR_asString_MR_SignDetectionMode()

MRC_API const char * MR_asString_MR_SignDetectionMode ( MR_SignDetectionMode m)

returns string representation of enum values Generated from function MR::asString.