1 #ifndef SNCH_OBJECT_DATA_H
2 #define SNCH_OBJECT_DATA_H
8 #include <osg/Geometry>
10 using namespace vrecko;
12 namespace APSpacePartitioning {
15 #define SNCH_FACE_DEGENERATED 0x00000001
22 #define SNCH_EDGE_CONCAVE_BREAK 0x00000001
27 #define FACESNCH_NO_GROUP 0xFFFFFFFF
43 std::vector<unsigned long>
faces;
65 unsigned long fIndex[3];
66 unsigned long edgeFlags[3];
103 bool calculateGeometryProperties(
void);
107 bool generateVertexNeighbourhood(
void);
112 bool createEdgeGroups(
void);
115 bool createFaceGroups(
void);
121 bool computeSNCH(
void *pSTNode);
123 void calcSubtreeTriangleRepresentant(
void *pNode, osg::Vec3 *axis,
unsigned long *triangle,
float *bestValue = NULL);
136 DebugStats() : totalNodes(0), twoTotal(0), twoNeighbours(0) {};
144 void writeDebugStatistics();
146 void wdsInfoRec(
void *pSTNode,
int level,
DebugStats *ds);
149 virtual bool constructCacheDataName(
char *pOutDataName,
int* version);
150 virtual bool loadDataFromPersistentCache_Init();
153 virtual bool coreHierarchyCreation(
void);