Classes | Public Member Functions | Protected Attributes
pcl::recognition::BVH< UserData > Class Template Reference

This class is an implementation of bounding volume hierarchies. Use the build method to construct the data structure. To use the class, construct an std::vector of pointers to BVH::BoundedObject objects and pass it to the build method. BVH::BoundedObject is a template class, so you can save user-defined data in it. More...

#include <bvh.h>

List of all members.

Classes

class  BoundedObject
class  Node

Public Member Functions

void build (std::vector< BoundedObject * > &objects)
 Creates the tree. No need to call clear, it's called within the method. 'objects' is a vector of pointers to bounded objects which have to have valid bounds and centroids. Use the getData method of BoundedObject to retrieve the user-defined data saved in the object. Note that vector will be sorted within the method!
 BVH ()
void clear ()
 Frees the memory allocated by this object. After that, you have to call build to use the tree again.
const std::vector
< BoundedObject * > * 
getInputObjects () const
bool intersect (const float box[6], std::list< BoundedObject * > &intersected_objects) const
 Pushes back in 'intersected_objects' the bounded objects intersected by the input 'box' and returns true. Returns false if no objects are intersected.
virtual ~BVH ()

Protected Attributes

Noderoot_
std::vector< BoundedObject * > * sorted_objects_

Detailed Description

template<class UserData>
class pcl::recognition::BVH< UserData >

This class is an implementation of bounding volume hierarchies. Use the build method to construct the data structure. To use the class, construct an std::vector of pointers to BVH::BoundedObject objects and pass it to the build method. BVH::BoundedObject is a template class, so you can save user-defined data in it.

The tree is built such that each leaf contains exactly one object.

Definition at line 66 of file bvh.h.


Constructor & Destructor Documentation

template<class UserData >
pcl::recognition::BVH< UserData >::BVH ( ) [inline]

Definition at line 219 of file bvh.h.

template<class UserData >
virtual pcl::recognition::BVH< UserData >::~BVH ( ) [inline, virtual]

Definition at line 225 of file bvh.h.


Member Function Documentation

template<class UserData >
void pcl::recognition::BVH< UserData >::build ( std::vector< BoundedObject * > &  objects) [inline]

Creates the tree. No need to call clear, it's called within the method. 'objects' is a vector of pointers to bounded objects which have to have valid bounds and centroids. Use the getData method of BoundedObject to retrieve the user-defined data saved in the object. Note that vector will be sorted within the method!

The tree is built such that each leaf contains exactly one object.

Definition at line 237 of file bvh.h.

template<class UserData >
void pcl::recognition::BVH< UserData >::clear ( ) [inline]

Frees the memory allocated by this object. After that, you have to call build to use the tree again.

Definition at line 255 of file bvh.h.

template<class UserData >
const std::vector<BoundedObject*>* pcl::recognition::BVH< UserData >::getInputObjects ( ) const [inline]

Definition at line 265 of file bvh.h.

template<class UserData >
bool pcl::recognition::BVH< UserData >::intersect ( const float  box[6],
std::list< BoundedObject * > &  intersected_objects 
) const [inline]

Pushes back in 'intersected_objects' the bounded objects intersected by the input 'box' and returns true. Returns false if no objects are intersected.

Definition at line 273 of file bvh.h.


Member Data Documentation

template<class UserData >
Node* pcl::recognition::BVH< UserData >::root_ [protected]

Definition at line 310 of file bvh.h.

template<class UserData >
std::vector<BoundedObject*>* pcl::recognition::BVH< UserData >::sorted_objects_ [protected]

Definition at line 311 of file bvh.h.


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


pcl
Author(s): Open Perception
autogenerated on Wed Aug 26 2015 15:44:33