|
Point Cloud Library (PCL)
1.8.1
|
Octree iterator class More...
#include <pcl/octree/octree_iterator.h>
Inheritance diagram for pcl::octree::OctreeDepthFirstIterator< OctreeT >:Public Types | |
| typedef OctreeIteratorBase< OctreeT >::LeafNode | LeafNode |
| typedef OctreeIteratorBase< OctreeT >::BranchNode | BranchNode |
Public Types inherited from pcl::octree::OctreeIteratorBase< OctreeT > | |
| typedef OctreeT::LeafNode | LeafNode |
| typedef OctreeT::BranchNode | BranchNode |
| typedef OctreeT::LeafContainer | LeafContainer |
| typedef OctreeT::BranchContainer | BranchContainer |
Public Member Functions | |
| OctreeDepthFirstIterator (unsigned int max_depth_arg=0) | |
| Empty constructor. More... | |
| OctreeDepthFirstIterator (OctreeT *octree_arg, unsigned int max_depth_arg=0) | |
| Constructor. More... | |
| virtual | ~OctreeDepthFirstIterator () |
| Empty deconstructor. More... | |
| OctreeDepthFirstIterator & | operator= (const OctreeDepthFirstIterator &src) |
| Copy operator. More... | |
| virtual void | reset () |
| Reset the iterator to the root node of the octree. More... | |
| OctreeDepthFirstIterator & | operator++ () |
| Preincrement operator. More... | |
| OctreeDepthFirstIterator | operator++ (int) |
| postincrement operator. More... | |
| void | skipChildVoxels () |
| Skip all child voxels of current node and return to parent node. More... | |
Public Member Functions inherited from pcl::octree::OctreeIteratorBase< OctreeT > | |
| OctreeIteratorBase (unsigned int max_depth_arg=0) | |
| Empty constructor. More... | |
| OctreeIteratorBase (OctreeT *octree_arg, unsigned int max_depth_arg=0) | |
| Constructor. More... | |
| OctreeIteratorBase (const OctreeIteratorBase &src, unsigned int max_depth_arg=0) | |
| Copy constructor. More... | |
| OctreeIteratorBase & | operator= (const OctreeIteratorBase &src) |
| Copy operator. More... | |
| virtual | ~OctreeIteratorBase () |
| Empty deconstructor. More... | |
| bool | operator== (const OctreeIteratorBase &other) const |
| Equal comparison operator. More... | |
| bool | operator!= (const OctreeIteratorBase &other) const |
| Inequal comparison operator. More... | |
| void | reset () |
| Reset iterator. More... | |
| const OctreeKey & | getCurrentOctreeKey () const |
| Get octree key for the current iterator octree node. More... | |
| unsigned int | getCurrentOctreeDepth () const |
| Get the current depth level of octree. More... | |
| OctreeNode * | getCurrentOctreeNode () const |
| Get the current octree node. More... | |
| bool | isBranchNode () const |
| check if current node is a branch node More... | |
| bool | isLeafNode () const |
| check if current node is a branch node More... | |
| OctreeNode * | operator* () const |
| *operator. More... | |
| char | getNodeConfiguration () const |
| Get bit pattern of children configuration of current node. More... | |
| const LeafContainer & | getLeafContainer () const |
| Method for retrieving a single leaf container from the octree leaf node. More... | |
| LeafContainer & | getLeafContainer () |
| Method for retrieving a single leaf container from the octree leaf node. More... | |
| const BranchContainer & | getBranchContainer () const |
| Method for retrieving the container from an octree branch node. More... | |
| BranchContainer & | getBranchContainer () |
| Method for retrieving the container from an octree branch node. More... | |
| virtual unsigned long | getNodeID () const |
| get a integer identifier for current node (note: identifier depends on tree depth). More... | |
Protected Attributes | |
| std::vector< IteratorState > | stack_ |
| Stack structure. More... | |
Protected Attributes inherited from pcl::octree::OctreeIteratorBase< OctreeT > | |
| OctreeT * | octree_ |
| Reference to octree class. More... | |
| IteratorState * | current_state_ |
| Pointer to current iterator state. More... | |
| unsigned int | max_octree_depth_ |
| Maximum octree depth. More... | |
Octree iterator class
Definition at line 366 of file octree_iterator.h.
| typedef OctreeIteratorBase<OctreeT>::BranchNode pcl::octree::OctreeDepthFirstIterator< OctreeT >::BranchNode |
Definition at line 372 of file octree_iterator.h.
| typedef OctreeIteratorBase<OctreeT>::LeafNode pcl::octree::OctreeDepthFirstIterator< OctreeT >::LeafNode |
Definition at line 371 of file octree_iterator.h.
|
explicit |
Empty constructor.
| [in] | max_depth_arg | Depth limitation during traversal |
Definition at line 48 of file octree_iterator.hpp.
References pcl::octree::OctreeDepthFirstIterator< OctreeT >::reset().
|
explicit |
Constructor.
| [in] | octree_arg | Octree to be iterated. Initially the iterator is set to its root node. |
| [in] | max_depth_arg | Depth limitation during traversal |
Definition at line 57 of file octree_iterator.hpp.
References pcl::octree::OctreeDepthFirstIterator< OctreeT >::reset().
|
virtual |
Empty deconstructor.
Definition at line 66 of file octree_iterator.hpp.
| OctreeDepthFirstIterator< OctreeT > & pcl::octree::OctreeDepthFirstIterator< OctreeT >::operator++ | ( | ) |
Preincrement operator.
Definition at line 125 of file octree_iterator.hpp.
References pcl::octree::BRANCH_NODE, pcl::octree::OctreeIteratorBase< OctreeT >::current_state_, pcl::octree::IteratorState::depth_, pcl::octree::OctreeNode::getNodeType(), pcl::octree::IteratorState::key_, pcl::octree::OctreeIteratorBase< OctreeT >::max_octree_depth_, pcl::octree::IteratorState::node_, pcl::octree::OctreeIteratorBase< OctreeT >::octree_, pcl::octree::OctreeKey::popBranch(), pcl::octree::OctreeKey::pushBranch(), and pcl::octree::OctreeDepthFirstIterator< OctreeT >::stack_.
Referenced by pcl::octree::OctreeLeafNodeIterator< OctreeT >::operator++().
|
inline |
postincrement operator.
Definition at line 428 of file octree_iterator.h.
|
inline |
Copy operator.
| [in] | src | the iterator to copy into this |
Definition at line 395 of file octree_iterator.h.
References pcl::octree::OctreeIteratorBase< OctreeT >::operator=(), and pcl::octree::OctreeDepthFirstIterator< OctreeT >::stack_.
|
virtual |
Reset the iterator to the root node of the octree.
Reimplemented in pcl::octree::OctreeLeafNodeIterator< OctreeT >.
Definition at line 72 of file octree_iterator.hpp.
References pcl::octree::OctreeIteratorBase< OctreeT >::current_state_, pcl::octree::IteratorState::depth_, pcl::octree::IteratorState::key_, pcl::octree::OctreeIteratorBase< OctreeT >::max_octree_depth_, pcl::octree::IteratorState::node_, pcl::octree::OctreeIteratorBase< OctreeT >::octree_, pcl::octree::OctreeIteratorBase< OctreeT >::reset(), pcl::octree::OctreeDepthFirstIterator< OctreeT >::stack_, pcl::octree::OctreeKey::x, pcl::octree::OctreeKey::y, and pcl::octree::OctreeKey::z.
Referenced by pcl::octree::OctreeDepthFirstIterator< OctreeT >::OctreeDepthFirstIterator(), and pcl::octree::OctreeLeafNodeIterator< OctreeT >::reset().
| void pcl::octree::OctreeDepthFirstIterator< OctreeT >::skipChildVoxels | ( | ) |
Skip all child voxels of current node and return to parent node.
Definition at line 99 of file octree_iterator.hpp.
References pcl::octree::OctreeIteratorBase< OctreeT >::current_state_, and pcl::octree::OctreeDepthFirstIterator< OctreeT >::stack_.
|
protected |
Stack structure.
Definition at line 442 of file octree_iterator.h.
Referenced by pcl::octree::OctreeDepthFirstIterator< OctreeT >::operator++(), pcl::octree::OctreeDepthFirstIterator< OctreeT >::operator=(), pcl::octree::OctreeDepthFirstIterator< OctreeT >::reset(), and pcl::octree::OctreeDepthFirstIterator< OctreeT >::skipChildVoxels().