RobWorkProject  23.9.11-
Public Types | Public Member Functions | List of all members
BVTree< DERIVED > Class Template Referenceabstract

this implementation defines a BVTree structure that use an indexed based storage representation. The implementation does not include functionality for building a BVTree. It is a data structure for accessing nodes in a bounding volume tree. More...

#include <BVTree.hpp>

Public Types

typedef Traits< DERIVED >::BVType BVType
 
typedef Traits< DERIVED >::PRIMType PRIMType
 
typedef BVType::value_type value_type
 
typedef Traits< DERIVED >::NodeIterator NodeIterator
 
typedef Traits< DERIVED >::Node Node
 

Public Member Functions

 BVTree (PrimArrayAccessor< PRIMType > *primAccessor)
 Constructor. The BVTree takes ownership of the primAccessor . More...
 
virtual ~BVTree ()
 Destructor.
 
virtual NodeIterator getRootIterator () const =0
 
virtual int getMaxTrisPerLeaf () const =0
 
virtual NodeIterator createLeft (NodeIterator parent)=0
 
virtual NodeIterator createRight (NodeIterator parent)=0
 
virtual NodeIterator createRoot ()=0
 
virtual void setBV (const BVType &bv, NodeIterator node)=0
 
virtual void setNrOfPrims (int size, NodeIterator node)=0
 
virtual void setPrimIdx (int primIdx, NodeIterator node)=0
 
virtual void optimize ()=0
 
int getPrimitive (const NodeIterator &leafnode, PRIMType &dst, size_t triNr) const
 get triangle nr triNr that the BVNode leafnode is bounding. The result is set in triangle tridst and the index of the triangle is returned More...
 
size_t getNrPrimitives (const NodeIterator &leafnode) const
 

Detailed Description

template<class DERIVED>
class rw::proximity::BVTree< DERIVED >

this implementation defines a BVTree structure that use an indexed based storage representation. The implementation does not include functionality for building a BVTree. It is a data structure for accessing nodes in a bounding volume tree.

Constructor & Destructor Documentation

◆ BVTree()

BVTree ( PrimArrayAccessor< PRIMType > *  primAccessor)
inline

Constructor. The BVTree takes ownership of the primAccessor .

Parameters
primAccessor

Member Function Documentation

◆ getPrimitive()

int getPrimitive ( const NodeIterator &  leafnode,
PRIMType &  dst,
size_t  triNr 
) const
inline

get triangle nr triNr that the BVNode leafnode is bounding. The result is set in triangle tridst and the index of the triangle is returned

Parameters
leafnode[int] the leaf containing triangles
triNr[in] the triangle nr
dstdocumentation missing !
Returns
global index of triangle

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