Public Types | Public Member Functions

pcl::ConcaveHull< PointInT > Class Template Reference
[Module surface]

ConcaveHull (alpha shapes) using libqhull library. More...

#include <pcl/surface/concave_hull.h>

Inheritance diagram for pcl::ConcaveHull< PointInT >:
Inheritance graph
[legend]
Collaboration diagram for pcl::ConcaveHull< PointInT >:
Collaboration graph
[legend]

List of all members.

Public Types

typedef pcl::PointCloud< PointInT > PointCloud
typedef PointCloud::Ptr PointCloudPtr
typedef PointCloud::ConstPtr PointCloudConstPtr
typedef PointIndices::Ptr PointIndicesPtr
typedef PointIndices::ConstPtr PointIndicesConstPtr

Public Member Functions

 ConcaveHull ()
 Empty constructor.
void reconstruct (PointCloud &points, std::vector< pcl::Vertices > &polygons)
 Compute a concave hull for all points given.
void reconstruct (PointCloud &output)
 Compute a concave hull for all points given.
void setAlpha (double alpha)
 Set the alpha value, which limits the size of the resultant hull segments (the smaller the more detailed the hull).
double getAlpha ()
 Returns the alpha parameter, see setAlpha().
void setVoronoiCenters (PointCloudPtr voronoi_centers)
 If set, the voronoi cells center will be saved in _voronoi_centers_.
void setKeepInformation (bool value)
 If keep_information_is set to true the convex hull points keep other information like rgb, normals, ...
virtual void setInputCloud (const PointCloudConstPtr &cloud)
 Provide a pointer to the input dataset.
PointCloudConstPtr const getInputCloud ()
 Get a pointer to the input point cloud dataset.
void setIndices (const IndicesPtr &indices)
 Provide a pointer to the vector of indices that represents the input data.
void setIndices (const PointIndicesConstPtr &indices)
 Provide a pointer to the vector of indices that represents the input data.
void setIndices (size_t row_start, size_t col_start, size_t nb_rows, size_t nb_cols)
 Set the indices for the points laying within an interest region of the point cloud.
IndicesPtr const getIndices ()
 Get a pointer to the vector of indices used.
const PointInT & operator[] (size_t pos)
 Override PointCloud operator[] to shorten code.

Detailed Description

template<typename PointInT>
class pcl::ConcaveHull< PointInT >

ConcaveHull (alpha shapes) using libqhull library.

Author:
Aitor Aldoma

Definition at line 54 of file concave_hull.h.


Member Typedef Documentation

template<typename PointInT >
typedef pcl::PointCloud<PointInT> pcl::ConcaveHull< PointInT >::PointCloud

Reimplemented from pcl::PCLBase< PointInT >.

Definition at line 62 of file concave_hull.h.

template<typename PointInT >
typedef PointCloud::ConstPtr pcl::ConcaveHull< PointInT >::PointCloudConstPtr

Reimplemented from pcl::PCLBase< PointInT >.

Definition at line 64 of file concave_hull.h.

template<typename PointInT >
typedef PointCloud::Ptr pcl::ConcaveHull< PointInT >::PointCloudPtr

Reimplemented from pcl::PCLBase< PointInT >.

Definition at line 63 of file concave_hull.h.

typedef PointIndices::ConstPtr pcl::PCLBase< PointInT >::PointIndicesConstPtr [inherited]

Definition at line 79 of file pcl_base.h.

typedef PointIndices::Ptr pcl::PCLBase< PointInT >::PointIndicesPtr [inherited]

Definition at line 78 of file pcl_base.h.


Constructor & Destructor Documentation

template<typename PointInT >
pcl::ConcaveHull< PointInT >::ConcaveHull (  )  [inline]

Empty constructor.

Definition at line 67 of file concave_hull.h.


Member Function Documentation

template<typename PointInT >
double pcl::ConcaveHull< PointInT >::getAlpha (  )  [inline]

Returns the alpha parameter, see setAlpha().

Definition at line 101 of file concave_hull.h.

IndicesPtr const pcl::PCLBase< PointInT >::getIndices (  )  [inline, inherited]

Get a pointer to the vector of indices used.

Definition at line 171 of file pcl_base.h.

PointCloudConstPtr const pcl::PCLBase< PointInT >::getInputCloud (  )  [inline, inherited]

Get a pointer to the input point cloud dataset.

Definition at line 99 of file pcl_base.h.

const PointInT & pcl::PCLBase< PointInT >::operator[] ( size_t  pos  )  [inline, inherited]

Override PointCloud operator[] to shorten code.

Note:
this method can be called instead of (*input_)[(*indices_)[pos]] or input_->points[(*indices_)[pos]]
Parameters:
pos position in indices_ vector

Definition at line 178 of file pcl_base.h.

template<typename PointInT >
void pcl::ConcaveHull< PointInT >::reconstruct ( PointCloud points,
std::vector< pcl::Vertices > &  polygons 
)

Compute a concave hull for all points given.

Parameters:
points the resultant points lying on the concave hull
polygons the resultant concave hull polygons, as a set of vertices. The Vertices structure contains an array of point indices.

Definition at line 109 of file concave_hull.hpp.

template<typename PointInT >
void pcl::ConcaveHull< PointInT >::reconstruct ( PointCloud output  ) 

Compute a concave hull for all points given.

Software License Agreement (BSD License).

Parameters:
output the resultant concave hull vertices

Copyright (c) 2010, Willow Garage, Inc. All rights reserved.

Redistribution and use in source and binary forms, with or without modification, are permitted provided that the following conditions are met:

* Redistributions of source code must retain the above copyright notice, this list of conditions and the following disclaimer. * Redistributions in binary form must reproduce the above copyright notice, this list of conditions and the following disclaimer in the documentation and/or other materials provided with the distribution. * Neither the name of Willow Garage, Inc. nor the names of its contributors may be used to endorse or promote products derived from this software without specific prior written permission.

THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.

Id:
concave_hull.hpp 3031 2011-11-01 04:25:15Z rusu

Definition at line 80 of file concave_hull.hpp.

template<typename PointInT >
void pcl::ConcaveHull< PointInT >::setAlpha ( double  alpha  )  [inline]

Set the alpha value, which limits the size of the resultant hull segments (the smaller the more detailed the hull).

Parameters:
alpha positive, non-zero value, defining the maximum length from a vertex to the facet center (center of the voronoi cell).

Definition at line 94 of file concave_hull.h.

void pcl::PCLBase< PointInT >::setIndices ( const IndicesPtr indices  )  [inline, inherited]

Provide a pointer to the vector of indices that represents the input data.

Parameters:
indices a pointer to the vector of indices that represents the input data.

Definition at line 105 of file pcl_base.h.

void pcl::PCLBase< PointInT >::setIndices ( const PointIndicesConstPtr indices  )  [inline, inherited]

Provide a pointer to the vector of indices that represents the input data.

Parameters:
indices a pointer to the vector of indices that represents the input data.

Definition at line 116 of file pcl_base.h.

void pcl::PCLBase< PointInT >::setIndices ( size_t  row_start,
size_t  col_start,
size_t  nb_rows,
size_t  nb_cols 
) [inline, inherited]

Set the indices for the points laying within an interest region of the point cloud.

Note:
you shouldn't call this method on unorganized point clouds!
Parameters:
row_start the offset on rows
col_start the offset on columns
nb_rows the number of rows to be considered row_start included
nb_cols the number of columns to be considered col_start included

Definition at line 132 of file pcl_base.h.

virtual void pcl::PCLBase< PointInT >::setInputCloud ( const PointCloudConstPtr cloud  )  [inline, virtual, inherited]

Provide a pointer to the input dataset.

Parameters:
cloud the const boost shared pointer to a PointCloud message

Definition at line 95 of file pcl_base.h.

template<typename PointInT >
void pcl::ConcaveHull< PointInT >::setKeepInformation ( bool  value  )  [inline]

If keep_information_is set to true the convex hull points keep other information like rgb, normals, ...

Parameters:
value where to keep the information or not, default is false

Definition at line 120 of file concave_hull.h.

template<typename PointInT >
void pcl::ConcaveHull< PointInT >::setVoronoiCenters ( PointCloudPtr  voronoi_centers  )  [inline]

If set, the voronoi cells center will be saved in _voronoi_centers_.

Parameters:
voronoi_centers 

Definition at line 110 of file concave_hull.h.


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