Public Types | Public Member Functions
pcl::octree::OctreePointCloudVoxelCentroid< PointT, LeafContainerT, BranchContainerT > Class Template Reference

Octree pointcloud voxel centroid class More...

#include <octree_pointcloud_voxelcentroid.h>

Inheritance diagram for pcl::octree::OctreePointCloudVoxelCentroid< PointT, LeafContainerT, BranchContainerT >:
Inheritance graph
[legend]

List of all members.

Public Types

typedef OctreeT::BranchNode BranchNode
typedef boost::shared_ptr
< const
OctreePointCloudVoxelCentroid
< PointT, LeafContainerT > > 
ConstPtr
typedef OctreeT::LeafNode LeafNode
typedef OctreePointCloud
< PointT, LeafContainerT,
BranchContainerT > 
OctreeT
typedef boost::shared_ptr
< OctreePointCloudVoxelCentroid
< PointT, LeafContainerT > > 
Ptr

Public Member Functions

virtual void addPointIdx (const int pointIdx_arg)
 Add DataT object to leaf node at octree key.
bool getVoxelCentroidAtPoint (const PointT &point_arg, PointT &voxel_centroid_arg) const
 Get centroid for a single voxel addressed by a PointT point.
bool getVoxelCentroidAtPoint (const int &point_idx_arg, PointT &voxel_centroid_arg) const
 Get centroid for a single voxel addressed by a PointT point from input cloud.
size_t getVoxelCentroids (typename OctreePointCloud< PointT, LeafContainerT, BranchContainerT >::AlignedPointTVector &voxel_centroid_list_arg) const
 Get PointT vector of centroids for all occupied voxels.
void getVoxelCentroidsRecursive (const BranchNode *branch_arg, OctreeKey &key_arg, typename OctreePointCloud< PointT, LeafContainerT, BranchContainerT >::AlignedPointTVector &voxel_centroid_list_arg) const
 Recursively explore the octree and output a PointT vector of centroids for all occupied voxels.
 OctreePointCloudVoxelCentroid (const double resolution_arg)
 OctreePointCloudVoxelCentroids class constructor.
virtual ~OctreePointCloudVoxelCentroid ()
 Empty class deconstructor.

Detailed Description

template<typename PointT, typename LeafContainerT = OctreePointCloudVoxelCentroidContainer<PointT>, typename BranchContainerT = OctreeContainerEmpty>
class pcl::octree::OctreePointCloudVoxelCentroid< PointT, LeafContainerT, BranchContainerT >

Octree pointcloud voxel centroid class

Note:
This class generate an octrees from a point cloud (zero-copy). It provides a vector of centroids for all occupied voxels.
The octree pointcloud is initialized with its voxel resolution. Its bounding box is automatically adjusted or can be predefined.
typename: PointT: type of point used in pointcloud
Author:
Julius Kammerl (julius@kammerl.de)

Definition at line 146 of file octree_pointcloud_voxelcentroid.h.


Member Typedef Documentation

template<typename PointT, typename LeafContainerT = OctreePointCloudVoxelCentroidContainer<PointT>, typename BranchContainerT = OctreeContainerEmpty>
typedef OctreeT::BranchNode pcl::octree::OctreePointCloudVoxelCentroid< PointT, LeafContainerT, BranchContainerT >::BranchNode
template<typename PointT, typename LeafContainerT = OctreePointCloudVoxelCentroidContainer<PointT>, typename BranchContainerT = OctreeContainerEmpty>
typedef boost::shared_ptr<const OctreePointCloudVoxelCentroid<PointT, LeafContainerT> > pcl::octree::OctreePointCloudVoxelCentroid< PointT, LeafContainerT, BranchContainerT >::ConstPtr
template<typename PointT, typename LeafContainerT = OctreePointCloudVoxelCentroidContainer<PointT>, typename BranchContainerT = OctreeContainerEmpty>
typedef OctreeT::LeafNode pcl::octree::OctreePointCloudVoxelCentroid< PointT, LeafContainerT, BranchContainerT >::LeafNode
template<typename PointT, typename LeafContainerT = OctreePointCloudVoxelCentroidContainer<PointT>, typename BranchContainerT = OctreeContainerEmpty>
typedef OctreePointCloud<PointT, LeafContainerT, BranchContainerT> pcl::octree::OctreePointCloudVoxelCentroid< PointT, LeafContainerT, BranchContainerT >::OctreeT
template<typename PointT, typename LeafContainerT = OctreePointCloudVoxelCentroidContainer<PointT>, typename BranchContainerT = OctreeContainerEmpty>
typedef boost::shared_ptr<OctreePointCloudVoxelCentroid<PointT, LeafContainerT> > pcl::octree::OctreePointCloudVoxelCentroid< PointT, LeafContainerT, BranchContainerT >::Ptr

Constructor & Destructor Documentation

template<typename PointT, typename LeafContainerT = OctreePointCloudVoxelCentroidContainer<PointT>, typename BranchContainerT = OctreeContainerEmpty>
pcl::octree::OctreePointCloudVoxelCentroid< PointT, LeafContainerT, BranchContainerT >::OctreePointCloudVoxelCentroid ( const double  resolution_arg) [inline]

OctreePointCloudVoxelCentroids class constructor.

Parameters:
[in]resolution_argoctree resolution at lowest octree level

Definition at line 159 of file octree_pointcloud_voxelcentroid.h.

template<typename PointT, typename LeafContainerT = OctreePointCloudVoxelCentroidContainer<PointT>, typename BranchContainerT = OctreeContainerEmpty>
virtual pcl::octree::OctreePointCloudVoxelCentroid< PointT, LeafContainerT, BranchContainerT >::~OctreePointCloudVoxelCentroid ( ) [inline, virtual]

Empty class deconstructor.

Definition at line 166 of file octree_pointcloud_voxelcentroid.h.


Member Function Documentation

template<typename PointT, typename LeafContainerT = OctreePointCloudVoxelCentroidContainer<PointT>, typename BranchContainerT = OctreeContainerEmpty>
virtual void pcl::octree::OctreePointCloudVoxelCentroid< PointT, LeafContainerT, BranchContainerT >::addPointIdx ( const int  pointIdx_arg) [inline, virtual]

Add DataT object to leaf node at octree key.

Parameters:
[in]key_argoctree key addressing a leaf node.
[in]data_argDataT object to be added.

Reimplemented from pcl::octree::OctreePointCloud< PointT, LeafContainerT, BranchContainerT >.

Definition at line 175 of file octree_pointcloud_voxelcentroid.h.

template<typename PointT, typename LeafContainerT , typename BranchContainerT >
bool pcl::octree::OctreePointCloudVoxelCentroid< PointT, LeafContainerT, BranchContainerT >::getVoxelCentroidAtPoint ( const PointT point_arg,
PointT voxel_centroid_arg 
) const

Get centroid for a single voxel addressed by a PointT point.

Parameters:
[in]point_argpoint addressing a voxel in octree
[out]voxel_centroid_argcentroid is written to this PointT reference
Returns:
"true" if voxel is found; "false" otherwise

Definition at line 47 of file octree_pointcloud_voxelcentroid.hpp.

template<typename PointT, typename LeafContainerT = OctreePointCloudVoxelCentroidContainer<PointT>, typename BranchContainerT = OctreeContainerEmpty>
bool pcl::octree::OctreePointCloudVoxelCentroid< PointT, LeafContainerT, BranchContainerT >::getVoxelCentroidAtPoint ( const int &  point_idx_arg,
PointT voxel_centroid_arg 
) const [inline]

Get centroid for a single voxel addressed by a PointT point from input cloud.

Parameters:
[in]point_idx_argpoint index from input cloud addressing a voxel in octree
[out]voxel_centroid_argcentroid is written to this PointT reference
Returns:
"true" if voxel is found; "false" otherwise

Definition at line 209 of file octree_pointcloud_voxelcentroid.h.

template<typename PointT, typename LeafContainerT, typename BranchContainerT>
size_t pcl::octree::OctreePointCloudVoxelCentroid< PointT, LeafContainerT, BranchContainerT >::getVoxelCentroids ( typename OctreePointCloud< PointT, LeafContainerT, BranchContainerT >::AlignedPointTVector voxel_centroid_list_arg) const

Get PointT vector of centroids for all occupied voxels.

Parameters:
[out]voxel_centroid_list_argresults are written to this vector of PointT elements
Returns:
number of occupied voxels

Definition at line 69 of file octree_pointcloud_voxelcentroid.hpp.

template<typename PointT, typename LeafContainerT, typename BranchContainerT>
void pcl::octree::OctreePointCloudVoxelCentroid< PointT, LeafContainerT, BranchContainerT >::getVoxelCentroidsRecursive ( const BranchNode branch_arg,
OctreeKey key_arg,
typename OctreePointCloud< PointT, LeafContainerT, BranchContainerT >::AlignedPointTVector voxel_centroid_list_arg 
) const

Recursively explore the octree and output a PointT vector of centroids for all occupied voxels.

Parameters:
[in]branch_arg,:current branch node
[in]key_arg,:current key
[out]voxel_centroid_list_argresults are written to this vector of PointT elements

Definition at line 86 of file octree_pointcloud_voxelcentroid.hpp.


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


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