EdgeNeigborPolygonsTemplate< STORAGEINDEX, NONMANIFOLDVALUE, INVALIDVALUE > Struct Template Reference

#include <generic_components.h>

Public Types

using SmallMapSelector = ArrayMapSelector< false, DefaultCompare, BufferedBaseArraySelector< 6 > >
 
using Map = BlockArray< HybridMap< STORAGEINDEX, EdgeNeigborPolygonsTemplate, SmallMapSelector, HashMapSelector<>, 20, -1 >, 10, BLOCKARRAYFLAGS::NOINSERTERASE >
 
using EdgePolygons = EdgeNeigborPolygonsTemplate< STORAGEINDEX, NONMANIFOLDVALUE, INVALIDVALUE >
 
using NonManifoldStroage = BaseArray< BaseArray< STORAGEINDEX > >
 

Public Member Functions

 MAXON_OPERATOR_EQUALITY (EdgePolygons, _polyA, _polyB)
 
Bool IsNonManifold () const
 
void SetNonManifold (STORAGEINDEX mapEntry)
 
STORAGEINDEX GetNonManifoldIndex () const
 
void Reset ()
 
MAXON_ATTRIBUTE_FORCE_INLINE HashInt GetHashCode () const
 

Static Public Member Functions

template<typename INDEX = STORAGEINDEX, Bool USEMAP>
static Result< void > StoreSinglePolygon (const Block< const INDEX > &cPolygon, INDEX polygonIndex, const Block< const INDEX > &polygonMap, EdgePolygons::Map &map, NonManifoldStroage &nonManifold)
 
static const Block< const STORAGEINDEX > GetEdgePolygons (STORAGEINDEX pointA, STORAGEINDEX pointB, const EdgePolygons::Map &map, const NonManifoldStroage &nonManifold)
 

Public Attributes

STORAGEINDEX _polyA
 
STORAGEINDEX _polyB
 

Static Public Attributes

static constexpr STORAGEINDEX NONMANIFOLD
 

Member Typedef Documentation

◆ SmallMapSelector

◆ Map

◆ EdgePolygons

using EdgePolygons = EdgeNeigborPolygonsTemplate<STORAGEINDEX, NONMANIFOLDVALUE, INVALIDVALUE>

◆ NonManifoldStroage

using NonManifoldStroage = BaseArray<BaseArray<STORAGEINDEX> >

Member Function Documentation

◆ MAXON_OPERATOR_EQUALITY()

MAXON_OPERATOR_EQUALITY ( EdgePolygons  ,
_polyA  ,
_polyB   
)

◆ IsNonManifold()

Bool IsNonManifold ( ) const

◆ SetNonManifold()

void SetNonManifold ( STORAGEINDEX  mapEntry)

◆ GetNonManifoldIndex()

STORAGEINDEX GetNonManifoldIndex ( ) const

◆ Reset()

void Reset ( )

◆ GetHashCode()

MAXON_ATTRIBUTE_FORCE_INLINE HashInt GetHashCode ( ) const

◆ StoreSinglePolygon()

static Result<void> StoreSinglePolygon ( const Block< const INDEX > &  cPolygon,
INDEX  polygonIndex,
const Block< const INDEX > &  polygonMap,
EdgePolygons::Map map,
NonManifoldStroage nonManifold 
)
static

◆ GetEdgePolygons()

static const Block<const STORAGEINDEX> GetEdgePolygons ( STORAGEINDEX  pointA,
STORAGEINDEX  pointB,
const EdgePolygons::Map map,
const NonManifoldStroage nonManifold 
)
static

Member Data Documentation

◆ NONMANIFOLD

constexpr STORAGEINDEX NONMANIFOLD
staticconstexpr

◆ _polyA

STORAGEINDEX _polyA

◆ _polyB

STORAGEINDEX _polyB