pcl::recognition::SimpleOctree< NodeData, NodeDataCreator, Scalar >::Node Class Reference

`#include <pcl/recognition/ransac_based/simple_octree.h>`

## Public Member Functions

| Node ()
virtual | ~ Node ()
void | setCenter (const Scalar *c)
void | setBounds (const Scalar *b)
const Scalar * | getCenter () const
const Scalar * | getBounds () const
void | getBounds (Scalar b[6]) const
Node * | getChild (int id)
Node * | getChildren ()
void | setData (const NodeData &src)
NodeData & | getData ()
const NodeData & | getData () const
Node * | getParent ()
float | getRadius () const
bool | hasData ()
bool | hasChildren ()
const std::set< Node * > & | getNeighbors () const
void | deleteChildren ()
void | deleteData ()

## Protected Member Functions

void | setData (NodeData *data)
bool | createChildren ()
void | makeNeighbors (Node *node)
| Make this and 'node' neighbors by inserting each node in the others node neighbor set. More...
void | setParent (Node *parent)
void | computeRadius ()
| Computes the "radius" of the node which is half the diagonal length. More...

## Protected Attributes

NodeData * | data_
Scalar | center_ [3]
Scalar | bounds_ [6]
Node * | parent_
Node * | children_
Scalar | radius_
std::set< Node * > | full_leaf_neighbors_

## Friends

class | SimpleOctree

## Detailed Description

### template<typename NodeData, typename NodeDataCreator, typename Scalar = float>
class pcl::recognition::SimpleOctree< NodeData, NodeDataCreator, Scalar >::Node

Definition at line 60 of file simple_octree.h.

## Constructor & Destructor Documentation

## Node()

template<typename NodeData , typename NodeDataCreator , typename Scalar >

pcl::recognition::SimpleOctree< NodeData, NodeDataCreator, Scalar >::Node::Node | ( |  | ) |

inline

Definition at line 14 of file simple_octree.hpp.

References pcl::recognition::SimpleOctree< NodeData, NodeDataCreator, Scalar >::Node::deleteChildren(), and pcl::recognition::SimpleOctree< NodeData, NodeDataCreator, Scalar >::Node::deleteData().

## ~ Node()

template<typename NodeData, typename NodeDataCreator, typename Scalar = float>

virtual pcl::recognition::SimpleOctree< NodeData, NodeDataCreator, Scalar >::Node::~ Node | ( |  | ) |

## Member Function Documentation

## computeRadius()

template<typename NodeData , typename NodeDataCreator , typename Scalar >

void pcl::recognition::SimpleOctree< NodeData, NodeDataCreator, Scalar >::Node::computeRadius | ( |  | ) |

inline protected

Computes the "radius" of the node which is half the diagonal length.

Definition at line 55 of file simple_octree.hpp.

References pcl::recognition::SimpleOctree< NodeData, NodeDataCreator, Scalar >::Node::bounds_, and pcl::recognition::SimpleOctree< NodeData, NodeDataCreator, Scalar >::Node::radius_.

Referenced by pcl::recognition::SimpleOctree< NodeData, NodeDataCreator, Scalar >::Node::createChildren().

## createChildren()

template<typename NodeData , typename NodeDataCreator , typename Scalar >

bool pcl::recognition::SimpleOctree< NodeData, NodeDataCreator, Scalar >::Node::createChildren | ( |  | ) |

inline protected

Definition at line 67 of file simple_octree.hpp.

References pcl::recognition::SimpleOctree< NodeData, NodeDataCreator, Scalar >::Node::bounds_, pcl::recognition::SimpleOctree< NodeData, NodeDataCreator, Scalar >::Node::center_, pcl::recognition::SimpleOctree< NodeData, NodeDataCreator, Scalar >::Node::children_, pcl::recognition::SimpleOctree< NodeData, NodeDataCreator, Scalar >::Node::computeRadius(), pcl::recognition::SimpleOctree< NodeData, NodeDataCreator, Scalar >::Node::setBounds(), pcl::recognition::SimpleOctree< NodeData, NodeDataCreator, Scalar >::Node::setCenter(), and pcl::recognition::SimpleOctree< NodeData, NodeDataCreator, Scalar >::Node::setParent().

Referenced by pcl::recognition::SimpleOctree< RotationSpace, RotationSpaceCreator, float >::createLeaf().

## deleteChildren()

template<typename NodeData , typename NodeDataCreator , typename Scalar >

void pcl::recognition::SimpleOctree< NodeData, NodeDataCreator, Scalar >::Node::deleteChildren | ( |  | ) |

inline

Definition at line 155 of file simple_octree.hpp.

References pcl::recognition::SimpleOctree< NodeData, NodeDataCreator, Scalar >::Node::children_.

Referenced by pcl::recognition::SimpleOctree< NodeData, NodeDataCreator, Scalar >::Node::Node().

## deleteData()

template<typename NodeData , typename NodeDataCreator , typename Scalar >

void pcl::recognition::SimpleOctree< NodeData, NodeDataCreator, Scalar >::Node::deleteData | ( |  | ) |

inline

Definition at line 167 of file simple_octree.hpp.

References pcl::recognition::SimpleOctree< NodeData, NodeDataCreator, Scalar >::Node::data_.

Referenced by pcl::recognition::SimpleOctree< NodeData, NodeDataCreator, Scalar >::Node::Node().

## getBounds() [1/2]

template<typename NodeData, typename NodeDataCreator, typename Scalar = float>

const Scalar* pcl::recognition::SimpleOctree< NodeData, NodeDataCreator, Scalar >::Node::getBounds | ( |  | ) | const

inline

Definition at line 77 of file simple_octree.h.

## getBounds() [2/2]

template<typename NodeData, typename NodeDataCreator, typename Scalar = float>

void pcl::recognition::SimpleOctree< NodeData, NodeDataCreator, Scalar >::Node::getBounds | ( | Scalar | b[6] | ) | const

inline

Definition at line 80 of file simple_octree.h.

## getCenter()

template<typename NodeData, typename NodeDataCreator, typename Scalar = float>

const Scalar* pcl::recognition::SimpleOctree< NodeData, NodeDataCreator, Scalar >::Node::getCenter | ( |  | ) | const

inline

Definition at line 74 of file simple_octree.h.

Referenced by pcl::recognition::SimpleOctree< RotationSpace, RotationSpaceCreator, float >::getFullLeaf().

## getChild()

template<typename NodeData, typename NodeDataCreator, typename Scalar = float>

Node* pcl::recognition::SimpleOctree< NodeData, NodeDataCreator, Scalar >::Node::getChild | ( | int | id | ) |

inline

Definition at line 83 of file simple_octree.h.

## getChildren()

template<typename NodeData, typename NodeDataCreator, typename Scalar = float>

Node* pcl::recognition::SimpleOctree< NodeData, NodeDataCreator, Scalar >::Node::getChildren | ( |  | ) |

inline

Definition at line 86 of file simple_octree.h.

## getData() [1/2]

template<typename NodeData, typename NodeDataCreator, typename Scalar = float>

NodeData& pcl::recognition::SimpleOctree< NodeData, NodeDataCreator, Scalar >::Node::getData | ( |  | ) |

inline

Definition at line 92 of file simple_octree.h.

## getData() [2/2]

template<typename NodeData, typename NodeDataCreator, typename Scalar = float>

const NodeData& pcl::recognition::SimpleOctree< NodeData, NodeDataCreator, Scalar >::Node::getData | ( |  | ) | const

inline

Definition at line 95 of file simple_octree.h.

## getNeighbors()

template<typename NodeData, typename NodeDataCreator, typename Scalar = float>

const std::set<Node*>& pcl::recognition::SimpleOctree< NodeData, NodeDataCreator, Scalar >::Node::getNeighbors | ( |  | ) | const

inline

Definition at line 110 of file simple_octree.h.

## getParent()

template<typename NodeData, typename NodeDataCreator, typename Scalar = float>

Node* pcl::recognition::SimpleOctree< NodeData, NodeDataCreator, Scalar >::Node::getParent | ( |  | ) |

inline

Definition at line 98 of file simple_octree.h.

## getRadius()

template<typename NodeData, typename NodeDataCreator, typename Scalar = float>

float pcl::recognition::SimpleOctree< NodeData, NodeDataCreator, Scalar >::Node::getRadius | ( |  | ) | const

inline

Definition at line 101 of file simple_octree.h.

## hasChildren()

template<typename NodeData, typename NodeDataCreator, typename Scalar = float>

bool pcl::recognition::SimpleOctree< NodeData, NodeDataCreator, Scalar >::Node::hasChildren | ( |  | ) |

inline

Definition at line 107 of file simple_octree.h.

## hasData()

template<typename NodeData, typename NodeDataCreator, typename Scalar = float>

bool pcl::recognition::SimpleOctree< NodeData, NodeDataCreator, Scalar >::Node::hasData | ( |  | ) |

inline

Definition at line 104 of file simple_octree.h.

Referenced by pcl::recognition::SimpleOctree< NodeData, NodeDataCreator, Scalar >::Node::makeNeighbors().

## makeNeighbors()

template<typename NodeData , typename NodeDataCreator , typename Scalar >

void pcl::recognition::SimpleOctree< NodeData, NodeDataCreator, Scalar >::Node::makeNeighbors | ( | Node * | node | ) |

inline protected

Make this and 'node' neighbors by inserting each node in the others node neighbor set.

Nothing happens of either of the nodes has no data.

Definition at line 179 of file simple_octree.hpp.

References pcl::recognition::SimpleOctree< NodeData, NodeDataCreator, Scalar >::Node::full_leaf_neighbors_, and pcl::recognition::SimpleOctree< NodeData, NodeDataCreator, Scalar >::Node::hasData().

## setBounds()

template<typename NodeData , typename NodeDataCreator , typename Scalar>

void pcl::recognition::SimpleOctree< NodeData, NodeDataCreator, Scalar >::Node::setBounds | ( | const Scalar * | b | ) |

inline

Definition at line 42 of file simple_octree.hpp.

References pcl::recognition::SimpleOctree< NodeData, NodeDataCreator, Scalar >::Node::bounds_.

Referenced by pcl::recognition::SimpleOctree< NodeData, NodeDataCreator, Scalar >::Node::createChildren().

## setCenter()

template<typename NodeData , typename NodeDataCreator , typename Scalar>

void pcl::recognition::SimpleOctree< NodeData, NodeDataCreator, Scalar >::Node::setCenter | ( | const Scalar * | c | ) |

inline

Definition at line 32 of file simple_octree.hpp.

References pcl::recognition::SimpleOctree< NodeData, NodeDataCreator, Scalar >::Node::center_.

Referenced by pcl::recognition::SimpleOctree< NodeData, NodeDataCreator, Scalar >::Node::createChildren().

## setData() [1/2]

template<typename NodeData, typename NodeDataCreator, typename Scalar = float>

void pcl::recognition::SimpleOctree< NodeData, NodeDataCreator, Scalar >::Node::setData | ( | const NodeData & | src | ) |

inline

Definition at line 89 of file simple_octree.h.

## setData() [2/2]

template<typename NodeData, typename NodeDataCreator, typename Scalar = float>

void pcl::recognition::SimpleOctree< NodeData, NodeDataCreator, Scalar >::Node::setData | ( | NodeData * | data | ) |

inline protected

Definition at line 122 of file simple_octree.h.

## setParent()

template<typename NodeData, typename NodeDataCreator, typename Scalar = float>

void pcl::recognition::SimpleOctree< NodeData, NodeDataCreator, Scalar >::Node::setParent | ( | Node * | parent | ) |

inline protected

Definition at line 133 of file simple_octree.h.

Referenced by pcl::recognition::SimpleOctree< NodeData, NodeDataCreator, Scalar >::Node::createChildren().

## Friends And Related Function Documentation

## SimpleOctree

template<typename NodeData, typename NodeDataCreator, typename Scalar = float>

friend class SimpleOctree

friend

Definition at line 118 of file simple_octree.h.

## Member Data Documentation

## bounds_

template<typename NodeData, typename NodeDataCreator, typename Scalar = float>

Scalar pcl::recognition::SimpleOctree< NodeData, NodeDataCreator, Scalar >::Node::bounds_[6]

protected

Definition at line 141 of file simple_octree.h.

Referenced by pcl::recognition::SimpleOctree< NodeData, NodeDataCreator, Scalar >::Node::computeRadius(), pcl::recognition::SimpleOctree< NodeData, NodeDataCreator, Scalar >::Node::createChildren(), and pcl::recognition::SimpleOctree< NodeData, NodeDataCreator, Scalar >::Node::setBounds().

## center_

template<typename NodeData, typename NodeDataCreator, typename Scalar = float>

Scalar pcl::recognition::SimpleOctree< NodeData, NodeDataCreator, Scalar >::Node::center_[3]

protected

Definition at line 141 of file simple_octree.h.

Referenced by pcl::recognition::SimpleOctree< NodeData, NodeDataCreator, Scalar >::Node::createChildren(), and pcl::recognition::SimpleOctree< NodeData, NodeDataCreator, Scalar >::Node::setCenter().

## children_

template<typename NodeData, typename NodeDataCreator, typename Scalar = float>

Node * pcl::recognition::SimpleOctree< NodeData, NodeDataCreator, Scalar >::Node::children_

protected

Definition at line 142 of file simple_octree.h.

Referenced by pcl::recognition::SimpleOctree< NodeData, NodeDataCreator, Scalar >::Node::createChildren(), and pcl::recognition::SimpleOctree< NodeData, NodeDataCreator, Scalar >::Node::deleteChildren().

## data_

template<typename NodeData, typename NodeDataCreator, typename Scalar = float>

NodeData* pcl::recognition::SimpleOctree< NodeData, NodeDataCreator, Scalar >::Node::data_

protected

Definition at line 140 of file simple_octree.h.

Referenced by pcl::recognition::SimpleOctree< NodeData, NodeDataCreator, Scalar >::Node::deleteData().

## full_leaf_neighbors_

template<typename NodeData, typename NodeDataCreator, typename Scalar = float>

std::set<Node*> pcl::recognition::SimpleOctree< NodeData, NodeDataCreator, Scalar >::Node::full_leaf_neighbors_

protected

Definition at line 144 of file simple_octree.h.

Referenced by pcl::recognition::SimpleOctree< NodeData, NodeDataCreator, Scalar >::Node::makeNeighbors().

## parent_

template<typename NodeData, typename NodeDataCreator, typename Scalar = float>

Node* pcl::recognition::SimpleOctree< NodeData, NodeDataCreator, Scalar >::Node::parent_

protected

Definition at line 142 of file simple_octree.h.

## radius_

template<typename NodeData, typename NodeDataCreator, typename Scalar = float>

Scalar pcl::recognition::SimpleOctree< NodeData, NodeDataCreator, Scalar >::Node::radius_

protected

Definition at line 143 of file simple_octree.h.

Referenced by pcl::recognition::SimpleOctree< NodeData, NodeDataCreator, Scalar >::Node::computeRadius().

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

- /build/pcl-qv3n_B/pcl-1.8.1+dfsg1/recognition/include/pcl/recognition/ransac_based/simple_octree.h
- /build/pcl-qv3n_B/pcl-1.8.1+dfsg1/recognition/include/pcl/recognition/impl/ransac_based/simple_octree.hpp