HDK
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Friends Macros Groups Pages
BV_CHDataManager Class Reference

#include <BV_OBBTree.h>

Public Member Functions

 BV_CHDataManager (const TPointArray &points_in)
 Constructs the manager, welds input points. More...
 
const BV_CHEdgeInfofindEdge (int curr_v1_idx, int curr_v2_idx) const
 Find an edge between two vertices. More...
 
const BV_CHEdgeInfoedgeTraversalBegin ()
 Traverse edges. More...
 
const BV_CHEdgeInfoedgeTraversalNext ()
 
void edgeSanityCheck ()
 Checks for valid edge counts. Debug. More...
 
void setAboutToReset ()
 
void reset ()
 Resets the manager for the next iteration. More...
 
void weldPoints (const TPointArray &points_in, TPointArray &merged_pts_out)
 
TPointArraygetPoints ()
 
bool getDoRestart () const
 
void onTriangleDeleted (BV_CHTriangle *triangle_in)
 Called every time a triangle is created. More...
 
void onTriangleCreated (BV_CHTriangle *triangle_in)
 Called every time a triangle is deleted or is marked as deleted. More...
 
fpreal jigglePointTetra (BV_CHTriangle *coplanar_triangle, int iPointIndex)
 Jiggles a point to lie more than FLT_EPSILON away from the triangle. More...
 

Detailed Description

Definition at line 88 of file BV_OBBTree.h.

Constructor & Destructor Documentation

BV_CHDataManager::BV_CHDataManager ( const TPointArray points_in)

Constructs the manager, welds input points.

Member Function Documentation

void BV_CHDataManager::edgeSanityCheck ( )

Checks for valid edge counts. Debug.

const BV_CHEdgeInfo* BV_CHDataManager::edgeTraversalBegin ( )

Traverse edges.

const BV_CHEdgeInfo* BV_CHDataManager::edgeTraversalNext ( )
const BV_CHEdgeInfo* BV_CHDataManager::findEdge ( int  curr_v1_idx,
int  curr_v2_idx 
) const

Find an edge between two vertices.

bool BV_CHDataManager::getDoRestart ( ) const
inline

Definition at line 118 of file BV_OBBTree.h.

TPointArray& BV_CHDataManager::getPoints ( )
inline

Definition at line 116 of file BV_OBBTree.h.

fpreal BV_CHDataManager::jigglePointTetra ( BV_CHTriangle coplanar_triangle,
int  iPointIndex 
)

Jiggles a point to lie more than FLT_EPSILON away from the triangle.

void BV_CHDataManager::onTriangleCreated ( BV_CHTriangle triangle_in)

Called every time a triangle is deleted or is marked as deleted.

void BV_CHDataManager::onTriangleDeleted ( BV_CHTriangle triangle_in)

Called every time a triangle is created.

void BV_CHDataManager::reset ( )

Resets the manager for the next iteration.

void BV_CHDataManager::setAboutToReset ( )

Sets a flag telling the manager we will do a reset next, so that no triangle-edge management code is called to save time.

void BV_CHDataManager::weldPoints ( const TPointArray points_in,
TPointArray merged_pts_out 
)

Welds points from the points_in array and puts the new set of points into the merged_pts_out array. Currently welds within FLT_EPSILON.


The documentation for this class was generated from the following file: