octomap 1.5.0
octomap Namespace Reference

Namespace the Octomap library and visualization tools. More...

Data Structures

class  AbstractOccupancyOcTree
 Interface class for all octree types that store occupancy. More...
class  AbstractOcTree
 This abstract class is an interface to all octrees and provides a factory design pattern for readin and writing all kinds of OcTrees to files (see read()). More...
class  AbstractOcTreeNode
class  ColorOcTree
class  ColorOcTreeNode
class  CountingOcTree
 An AbstractOcTree which stores an internal counter per node / volume. More...
class  CountingOcTreeNode
 An Octree-node which stores an internal counter per node / volume. More...
struct  equal_keys
 comparator for keys More...
struct  hash_key
class  KeyRay
class  MapCollection
class  MapNode
class  OccupancyOcTreeBase
 Base implementation for Occupancy Octrees (e.g. More...
class  OcTree
 octomap main map data structure, stores 3D occupancy grid map in an OcTree. More...
class  OcTreeBase
class  OcTreeBaseImpl
 OcTree base class, to be used with with any kind of OcTreeDataNode. More...
class  OcTreeBaseSE
class  OcTreeDataNode
 Basic node in the OcTree that can hold arbitrary data of type T in value. More...
class  OcTreeKey
 OcTreeKey is a container class for internal key addressing. More...
class  OcTreeLUT
 Implements a lookup table that allows to computer keys of neighbor cells directly, see: Samet 1989, "Implementing ray tracing with octrees and neighbor finding". More...
class  OcTreeNode
 Nodes to be used in OcTree. More...
class  OcTreeNodeStamped
class  OcTreeStamped
class  Pointcloud
 A collection of 3D coordinates (point3d), which are regarded as endpoints of a 3D laser scan. More...
class  ScanEdge
 A connection between two ScanNodes. More...
class  ScanGraph
 A ScanGraph is a collection of ScanNodes, connected by ScanEdges. More...
class  ScanNode
 A 3D scan as Pointcloud, performed from a Pose6D. More...

Typedefs

typedef
std::tr1::unordered_map
< OcTreeKey, bool,
OcTreeKey::KeyHash
KeyBoolMap
 Data structrure to efficiently track changed nodes as a combination of OcTreeKeys and a bool flag (to denote newly created nodes)
typedef
std::tr1::unordered_set
< OcTreeKey,
OcTreeKey::KeyHash
KeySet
 Data structure to efficiently compute the nodes to update from a scan insertion using a hash set.
typedef std::pair< point3d,
double > 
OcTreeVolume
 A voxel defined by its center point3d and its side length.
typedef octomath::Vector3 point3d
 use our Vector3 as point3d in octomap
typedef std::vector
< octomath::Vector3
point3d_collection
typedef std::list
< octomath::Vector3
point3d_list
typedef octomath::Pose6D pose6d
 use our Pose6D as pose6d in octomap

Functions

unsigned char computeChildIdx (const OcTreeKey &key, int depth)
 generate child index (between 0 and 7) from key at given tree depth
void computeChildKey (const unsigned int &pos, const unsigned short int &center_offset_key, const OcTreeKey &parent_key, OcTreeKey &child_key)
 Computes the key of a child node while traversing the octree, given child index and current key.
OcTreeKey computeIndexKey (unsigned short int level, const OcTreeKey &key)
 Generates a unique key for all keys on a certain level of the tree.
float logodds (double probability)
 compute log-odds from probability:
std::ostream & operator<< (std::ostream &out, ColorOcTreeNode::Color const &c)
 user friendly output in format (r g b)
double probability (double logodds)
 compute probability from logodds:

Detailed Description

Namespace the Octomap library and visualization tools.

OctoMap: A probabilistic, flexible, and compact 3D mapping library for robotic systems.

Author:
K. M. Wurm, A. Hornung, University of Freiburg, Copyright (C) 2009-2011.
See also:
http://octomap.sourceforge.net/ License: New BSD License
Author:
K. M. Wurm, A. Hornung, University of Freiburg, Copyright (C) 2009-2011
See also:
http://octomap.sourceforge.net/ License: New BSD License
Author:
K. M. Wurm, A. Hornung, University of Freiburg, Copyright (C) 2009.
See also:
http://octomap.sourceforge.net/ License: New BSD License
Author:
K. M. Wurm, A. Hornung, University of Freiburg, Copyright (C) 2010.
See also:
http://octomap.sourceforge.net/ License: New BSD License
Author:
Raphael Schmitt, K. M. Wurm, A. Hornung, University of Freiburg, Copyright (C) 2010.
See also:
http://octomap.sourceforge.net/ License: New BSD License
Author:
K. M. Wurm, A. Hornung, University of Freiburg, Copyright (C) 2009-2012
See also:
http://octomap.sourceforge.net/ License: New BSD License

Typedef Documentation

typedef std::tr1::unordered_map<OcTreeKey, bool, OcTreeKey::KeyHash> octomap::KeyBoolMap

Data structrure to efficiently track changed nodes as a combination of OcTreeKeys and a bool flag (to denote newly created nodes)

typedef std::tr1::unordered_set<OcTreeKey, OcTreeKey::KeyHash> octomap::KeySet

Data structure to efficiently compute the nodes to update from a scan insertion using a hash set.

Note:
you need to use boost::unordered_set instead if your compiler does not yet support tr1!
typedef std::pair<point3d, double> octomap::OcTreeVolume

A voxel defined by its center point3d and its side length.

use our Vector3 as point3d in octomap

use our Pose6D as pose6d in octomap


Function Documentation

void octomap::computeChildKey ( const unsigned int &  pos,
const unsigned short int &  center_offset_key,
const OcTreeKey &  parent_key,
OcTreeKey &  child_key 
) [inline]

Computes the key of a child node while traversing the octree, given child index and current key.

Parameters:
[in]posindex of child node (0..7)
[in]center_offset_keyconstant offset of octree keys
[in]parent_keycurrent (parent) key
[out]child_keycomputed child key

Referenced by octomap::CountingOcTree::getCentersMinHitsRecurs(), octomap::OccupancyOcTreeBase< NODE >::getOccupiedLeafsBBXRecurs(), leaf_bbx_iterator::singleIncrement(), and iterator_base::singleIncrement().

OcTreeKey octomap::computeIndexKey ( unsigned short int  level,
const OcTreeKey &  key 
) [inline]

Generates a unique key for all keys on a certain level of the tree.

Parameters:
levelfrom the bottom (= tree_depth - depth of key)
keyinput indexing key (at lowest resolution / level)
Returns:
key corresponding to the input key at the given level

Referenced by iterator_base::getIndexKey().

std::ostream & octomap::operator<< ( std::ostream &  out,
ColorOcTreeNode::Color const &  c 
)