Point Cloud Library (PCL) 1.12.0
|
#include <pcl/recognition/ransac_based/simple_octree.h>
Classes | |
class | Node |
Public Member Functions | |
SimpleOctree () | |
virtual | ~SimpleOctree () |
void | clear () |
void | build (const Scalar *bounds, Scalar voxel_size, NodeDataCreator *node_data_creator) |
Creates an empty octree with bounds at least as large as the ones provided as input and with leaf size equal to 'voxel_size'. | |
Node * | createLeaf (Scalar x, Scalar y, Scalar z) |
Creates the leaf containing p = (x, y, z) and returns a pointer to it, however, only if p lies within the octree bounds! A more general version which allows p to be out of bounds is not implemented yet. | |
Node * | getFullLeaf (int i, int j, int k) |
Since the leaves are aligned in a rectilinear grid, each leaf has a unique id. | |
Node * | getFullLeaf (Scalar x, Scalar y, Scalar z) |
Returns a pointer to the full leaf, i.e., one having a data pbject, containing p = (x, y, z) or NULL if no such leaf exists. | |
std::vector< Node * > & | getFullLeaves () |
const std::vector< Node * > & | getFullLeaves () const |
Node * | getRoot () |
const Scalar * | getBounds () const |
void | getBounds (Scalar b[6]) const |
Scalar | getVoxelSize () const |
Protected Member Functions | |
void | insertNeighbors (Node *node) |
Protected Attributes | |
Scalar | voxel_size_ |
Scalar | bounds_ [6] |
int | tree_levels_ |
Node * | root_ |
std::vector< Node * > | full_leaves_ |
NodeDataCreator * | node_data_creator_ |
Definition at line 58 of file simple_octree.h.
|
inline |
Definition at line 183 of file simple_octree.hpp.
|
inlinevirtual |
Definition at line 191 of file simple_octree.hpp.
|
inline |
Creates an empty octree with bounds at least as large as the ones provided as input and with leaf size equal to 'voxel_size'.
Definition at line 208 of file simple_octree.hpp.
|
inline |
Definition at line 198 of file simple_octree.hpp.
|
inline |
Creates the leaf containing p = (x, y, z) and returns a pointer to it, however, only if p lies within the octree bounds! A more general version which allows p to be out of bounds is not implemented yet.
The method returns NULL if p is not within the root bounds. If the leaf containing p already exists nothing happens and method just returns a pointer to the leaf. Note that for a new created leaf, the method also creates its data object.
Definition at line 254 of file simple_octree.hpp.
References pcl::recognition::SimpleOctree< NodeData, NodeDataCreator, Scalar >::Node::createChildren(), pcl::recognition::SimpleOctree< NodeData, NodeDataCreator, Scalar >::Node::getCenter(), pcl::recognition::SimpleOctree< NodeData, NodeDataCreator, Scalar >::Node::getChild(), pcl::recognition::SimpleOctree< NodeData, NodeDataCreator, Scalar >::Node::hasData(), and pcl::recognition::SimpleOctree< NodeData, NodeDataCreator, Scalar >::Node::setData().
|
inline |
Definition at line 188 of file simple_octree.h.
|
inline |
Definition at line 191 of file simple_octree.h.
|
inline |
Since the leaves are aligned in a rectilinear grid, each leaf has a unique id.
The method returns the full leaf, i.e., the one having a data object, with id [i, j, k] or NULL is no such leaf exists.
Definition at line 293 of file simple_octree.hpp.
|
inline |
Returns a pointer to the full leaf, i.e., one having a data pbject, containing p = (x, y, z) or NULL if no such leaf exists.
Definition at line 306 of file simple_octree.hpp.
References pcl::recognition::SimpleOctree< NodeData, NodeDataCreator, Scalar >::Node::getCenter(), pcl::recognition::SimpleOctree< NodeData, NodeDataCreator, Scalar >::Node::getChild(), pcl::recognition::SimpleOctree< NodeData, NodeDataCreator, Scalar >::Node::hasChildren(), and pcl::recognition::SimpleOctree< NodeData, NodeDataCreator, Scalar >::Node::hasData().
|
inline |
Definition at line 179 of file simple_octree.h.
|
inline |
Definition at line 182 of file simple_octree.h.
|
inline |
Definition at line 185 of file simple_octree.h.
|
inline |
Definition at line 194 of file simple_octree.h.
|
inlineprotected |
|
protected |
Definition at line 201 of file simple_octree.h.
Referenced by pcl::recognition::SimpleOctree< NodeData, NodeDataCreator, Scalar >::Node::computeRadius(), and pcl::recognition::SimpleOctree< NodeData, NodeDataCreator, Scalar >::Node::setBounds().
|
protected |
Definition at line 204 of file simple_octree.h.
|
protected |
Definition at line 205 of file simple_octree.h.
|
protected |
Definition at line 203 of file simple_octree.h.
|
protected |
Definition at line 202 of file simple_octree.h.
|
protected |
Definition at line 201 of file simple_octree.h.