Rasterfarm-SDK
Loading...
Searching...
No Matches
Tree::CubeTree::Branch Class Reference

#include <cubetree.h>

Inheritance diagram for Tree::CubeTree::Branch:
Tree::CubeTree::Node

Public Member Functions

 Branch ()
 
 Branch (const Primitive3D::AABoundingBox &box, const Vertex3f &center)
 
 Branch (Branch *pParent, Octant octant)
 
 Branch (const Branch &other)=delete
 
virtual ~Branch ()
 
Octant getOctant (const Vertex3f &vertex) const
 
Octant findOctant (Node *pNode) const
 
virtual Leafinsert (const Vertex3f &vertex)
 
virtual Leaffind (const Vertex3f &vertex, float precision=0.0f)
 
virtual Vector3fArray getVertices () const
 
virtual HeapArray< Handle > getIndices () const
 
virtual HeapArray< Leaf * > getLeaves ()
 
virtual Primitive3D::AABoundingBox getAABoundingBox ()
 
virtual Leafnearest (const Vertex3f &vertex)
 
void erase (Octant octant)
 
void update (Octant octant)
 
- Public Member Functions inherited from Tree::CubeTree::Node
 Node (Branch *pParent=nullptr)
 
const BranchgetParent () const
 
virtual ~Node ()
 

Public Attributes

Vertex3f center
 
NodepOctant [8]
 

Constructor & Destructor Documentation

◆ Branch() [1/4]

Tree::CubeTree::Branch::Branch ( )

◆ Branch() [2/4]

Tree::CubeTree::Branch::Branch ( const Primitive3D::AABoundingBox & box,
const Vertex3f & center )

◆ Branch() [3/4]

Tree::CubeTree::Branch::Branch ( Branch * pParent,
Octant octant )

◆ Branch() [4/4]

Tree::CubeTree::Branch::Branch ( const Branch & other)
delete

Copying of Nodes is not supported.

◆ ~Branch()

virtual Tree::CubeTree::Branch::~Branch ( )
virtual

Member Function Documentation

◆ erase()

void Tree::CubeTree::Branch::erase ( Octant octant)

◆ find()

virtual Leaf * Tree::CubeTree::Branch::find ( const Vertex3f & vertex,
float precision = 0.0f )
virtual

Implements Tree::CubeTree::Node.

◆ findOctant()

Octant Tree::CubeTree::Branch::findOctant ( Node * pNode) const
Returns
The octant this node is currently at, or INVALID_HANDLE if not found.

◆ getAABoundingBox()

virtual Primitive3D::AABoundingBox Tree::CubeTree::Branch::getAABoundingBox ( )
virtual

Implements Tree::CubeTree::Node.

◆ getIndices()

virtual HeapArray< Handle > Tree::CubeTree::Branch::getIndices ( ) const
virtual

Implements Tree::CubeTree::Node.

◆ getLeaves()

virtual HeapArray< Leaf * > Tree::CubeTree::Branch::getLeaves ( )
virtual

Implements Tree::CubeTree::Node.

◆ getOctant()

Octant Tree::CubeTree::Branch::getOctant ( const Vertex3f & vertex) const
Returns
The octant this vertex resides in.

◆ getVertices()

virtual Vector3fArray Tree::CubeTree::Branch::getVertices ( ) const
virtual

Implements Tree::CubeTree::Node.

◆ insert()

virtual Leaf * Tree::CubeTree::Branch::insert ( const Vertex3f & vertex)
virtual

Implements Tree::CubeTree::Node.

◆ nearest()

virtual Leaf * Tree::CubeTree::Branch::nearest ( const Vertex3f & vertex)
virtual

Implements Tree::CubeTree::Node.

◆ update()

void Tree::CubeTree::Branch::update ( Octant octant)

Member Data Documentation

◆ center

Vertex3f Tree::CubeTree::Branch::center

◆ pOctant

Node* Tree::CubeTree::Branch::pOctant[8]

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