HDK
|
#include <BV_LeafIterator.h>
Public Member Functions | |
BV_LeafIterator () | |
virtual | ~BV_LeafIterator () |
void | advance () |
Advance iterator to next leaf. More... | |
void | jump (int leafId) |
Random access: jump to given leaf id. More... | |
bool | atEnd () const |
void | rewind () |
Reset to first leaf. More... | |
int | getLeafId () const |
Get id of current leaf. More... | |
UT_Vector3 | calcBarycenter () const |
Get barycenter of current leaf. More... | |
bool | isDisabled () const |
Test if the current leaf is disabled. More... | |
void | advanceVertex () |
Get number of vertices bounding current leaf. More... | |
bool | atEndVertex () const |
void | rewindVertex () |
UT_Vector4 | getVertex () const |
Get given bounding vertex of current leaf. More... | |
virtual fpreal | getVertexRadius () const |
void | setSkipDupVerts (bool flag) |
bool | getSkipDupVerts () const |
Protected Member Functions | |
virtual void | advanceSubclass ()=0 |
virtual void | jumpSubclass (int leafId)=0 |
virtual bool | atEndSubclass () const =0 |
virtual void | rewindSubclass ()=0 |
virtual int | getLeafIdSubclass () const =0 |
virtual UT_Vector3 | calcBarycenterSubclass () const =0 |
virtual bool | isDisabledSubclass () const |
virtual void | advanceVertexSubclass ()=0 |
virtual bool | atEndVertexSubclass () const =0 |
virtual void | rewindVertexSubclass ()=0 |
virtual UT_Vector4 | getVertexSubclass () const =0 |
virtual void | setSkipDupVertsSubclass (bool flag)=0 |
Iterator for leaves to be enclosed by bounding volume. Iterator retrieves info about each leaf:
Optionally, the iterator may be able to skip duplicate vertices - i.e., if leaves in the set share vertices.
Definition at line 25 of file BV_LeafIterator.h.
BV_LeafIterator::BV_LeafIterator | ( | ) |
|
virtual |
|
inline |
Advance iterator to next leaf.
Definition at line 32 of file BV_LeafIterator.h.
|
protectedpure virtual |
Implemented in GU_BVLeafIterator, and SIM_BVLeafIterator.
|
inline |
Get number of vertices bounding current leaf.
Definition at line 60 of file BV_LeafIterator.h.
|
protectedpure virtual |
Implemented in GU_BVLeafIterator, and SIM_BVLeafIterator.
|
inline |
Test to see if we've passed the last leaf. Note: returns false on the last leaf, and true if we've advanced past the last leaf.
Definition at line 40 of file BV_LeafIterator.h.
|
protectedpure virtual |
Implemented in GU_BVLeafIterator, and SIM_BVLeafIterator.
|
inline |
Definition at line 62 of file BV_LeafIterator.h.
|
protectedpure virtual |
Implemented in GU_BVLeafIterator, and SIM_BVLeafIterator.
|
inline |
Get barycenter of current leaf.
Definition at line 50 of file BV_LeafIterator.h.
|
protectedpure virtual |
Implemented in GU_BVLeafIterator, and SIM_BVLeafIterator.
|
inline |
Get id of current leaf.
Definition at line 47 of file BV_LeafIterator.h.
|
protectedpure virtual |
Implemented in GU_BVLeafIterator, and SIM_BVLeafIterator.
|
inline |
Definition at line 79 of file BV_LeafIterator.h.
|
inline |
Get given bounding vertex of current leaf.
Definition at line 67 of file BV_LeafIterator.h.
|
inlinevirtual |
Gets radius to expand each vertex for calculation of the bounding volume.
Definition at line 71 of file BV_LeafIterator.h.
|
protectedpure virtual |
Implemented in GU_BVLeafIterator, and SIM_BVLeafIterator.
|
inline |
Test if the current leaf is disabled.
Definition at line 53 of file BV_LeafIterator.h.
|
protectedvirtual |
Random access: jump to given leaf id.
Definition at line 35 of file BV_LeafIterator.h.
Implemented in GU_BVLeafIterator, and SIM_BVLeafIterator.
|
inline |
Reset to first leaf.
Definition at line 43 of file BV_LeafIterator.h.
|
protectedpure virtual |
Implemented in GU_BVLeafIterator, and SIM_BVLeafIterator.
|
inline |
Definition at line 64 of file BV_LeafIterator.h.
|
protectedpure virtual |
Implemented in GU_BVLeafIterator, and SIM_BVLeafIterator.
|
inline |
Flag: hint to skip duplicate points when iterating over vertices of leaves. TODO: this is obsolete and possibly broken; it's also dangerous when combined with a non-zero vertex radius. Remove it.
Definition at line 77 of file BV_LeafIterator.h.
|
protectedpure virtual |
Implemented in GU_BVLeafIterator, and SIM_BVLeafIterator.