Public Types | Public Member Functions

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

Simple triangulation/surface reconstruction for organized point clouds. More...

#include <pcl/surface/organized_fast_mesh.h>

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

List of all members.

Public Types

enum  TriangulationType { TRIANGLE_RIGHT_CUT, TRIANGLE_LEFT_CUT, TRIANGLE_ADAPTIVE_CUT, QUAD_MESH }
typedef pcl::PointCloud
< PointInT >::Ptr 
PointCloudPtr
typedef std::vector
< pcl::Vertices
Polygons
typedef pcl::search::Search
< PointInT > 
KdTree
typedef pcl::search::Search
< PointInT >::Ptr 
KdTreePtr
typedef pcl::PointCloud< PointInT > PointCloud
typedef PointCloud::ConstPtr PointCloudConstPtr
typedef PointIndices::Ptr PointIndicesPtr
typedef PointIndices::ConstPtr PointIndicesConstPtr

Public Member Functions

 OrganizedFastMesh ()
 ~OrganizedFastMesh ()
void performReconstruction (pcl::PolygonMesh &output)
 Create the surface.
void reconstructPolygons (std::vector< pcl::Vertices > &polygons)
void setMaxEdgeLength (float max_edge_length)
 Set a maximum edge length.
void setTrianglePixelSize (int triangle_size)
 Set the edge length (in pixels) used for constructing the fixed mesh.
void setTriangulationType (TriangulationType type)
 Set the triangulation type (see TriangulationType).
void storeShadowedFaces (bool enable)
void reconstruct (pcl::PolygonMesh &output)
 Base method for surface reconstruction for all points given in <setInputCloud (), setIndices ()>
void setSearchMethod (const KdTreePtr &tree)
 Provide a pointer to the search object.
KdTreePtr getSearchMethod ()
 Get a pointer to the search method used.
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::OrganizedFastMesh< PointInT >

Simple triangulation/surface reconstruction for organized point clouds.

Neighboring points (pixels in image space) are connected to construct a triangular mesh.

Author:
Dirk Holz

Definition at line 54 of file organized_fast_mesh.h.


Member Typedef Documentation

template<typename PointInT>
typedef pcl::search::Search<PointInT> pcl::SurfaceReconstruction< PointInT >::KdTree [inherited]
template<typename PointInT>
typedef pcl::search::Search<PointInT>::Ptr pcl::SurfaceReconstruction< PointInT >::KdTreePtr [inherited]
typedef pcl::PointCloud<PointInT > pcl::PCLBase< PointInT >::PointCloud [inherited]

Reimplemented in pcl::ConcaveHull< PointInT >, and pcl::ConvexHull< PointInT >.

Definition at line 74 of file pcl_base.h.

typedef PointCloud::ConstPtr pcl::PCLBase< PointInT >::PointCloudConstPtr [inherited]

Reimplemented in pcl::ConcaveHull< PointInT >, and pcl::ConvexHull< PointInT >.

Definition at line 76 of file pcl_base.h.

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

Reimplemented from pcl::PCLBase< PointInT >.

Definition at line 60 of file organized_fast_mesh.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.

template<typename PointInT >
typedef std::vector<pcl::Vertices> pcl::OrganizedFastMesh< PointInT >::Polygons

Definition at line 62 of file organized_fast_mesh.h.


Member Enumeration Documentation

template<typename PointInT >
enum pcl::OrganizedFastMesh::TriangulationType
Enumerator:
TRIANGLE_RIGHT_CUT 
TRIANGLE_LEFT_CUT 
TRIANGLE_ADAPTIVE_CUT 
QUAD_MESH 

Definition at line 64 of file organized_fast_mesh.h.


Constructor & Destructor Documentation

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

Definition at line 72 of file organized_fast_mesh.h.

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

Definition at line 81 of file organized_fast_mesh.h.


Member Function Documentation

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.

template<typename PointInT>
KdTreePtr pcl::SurfaceReconstruction< PointInT >::getSearchMethod (  )  [inline, inherited]

Get a pointer to the search method used.

Definition at line 86 of file reconstruction.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::OrganizedFastMesh< PointInT >::performReconstruction ( pcl::PolygonMesh output  )  [virtual]

Create the surface.

Simply uses image indices to create an initial polygonal mesh for organized point clouds. indices_ are ignored!

Parameters:
output the resultant polygonal mesh

Implements pcl::SurfaceReconstruction< PointInT >.

Definition at line 47 of file organized_fast_mesh.hpp.

template<typename PointInT >
void pcl::SurfaceReconstruction< PointInT >::reconstruct ( pcl::PolygonMesh output  )  [inherited]

Base method for surface reconstruction for all points given in <setInputCloud (), setIndices ()>

Parameters:
output the resultant reconstructed surface model

NOTE: passing in boost shared pointer with * as const& should be OK here

NOTE: usually the number of triangles is around twice the number of vertices

Definition at line 44 of file reconstruction.hpp.

template<typename PointInT >
void pcl::OrganizedFastMesh< PointInT >::reconstructPolygons ( std::vector< pcl::Vertices > &  polygons  ) 

Definition at line 61 of file organized_fast_mesh.hpp.

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 ( 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 ( 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::OrganizedFastMesh< PointInT >::setMaxEdgeLength ( float  max_edge_length  )  [inline]

Set a maximum edge length.

TODO: Implement!

Definition at line 98 of file organized_fast_mesh.h.

template<typename PointInT>
void pcl::SurfaceReconstruction< PointInT >::setSearchMethod ( const KdTreePtr tree  )  [inline, inherited]

Provide a pointer to the search object.

Parameters:
tree a pointer to the spatial search object.

Definition at line 79 of file reconstruction.h.

template<typename PointInT >
void pcl::OrganizedFastMesh< PointInT >::setTrianglePixelSize ( int  triangle_size  )  [inline]

Set the edge length (in pixels) used for constructing the fixed mesh.

Parameters:
triangle_size edge length in pixels (Default: 1 = neighboring pixels are connected)

Definition at line 109 of file organized_fast_mesh.h.

template<typename PointInT >
void pcl::OrganizedFastMesh< PointInT >::setTriangulationType ( TriangulationType  type  )  [inline]

Set the triangulation type (see TriangulationType).

Parameters:
type quad mesh, triangle mesh with fixed left, right cut, or adaptive cut (splits a quad wrt. the depth (z) of the points)

Definition at line 120 of file organized_fast_mesh.h.

template<typename PointInT >
void pcl::OrganizedFastMesh< PointInT >::storeShadowedFaces ( bool  enable  )  [inline]

Definition at line 126 of file organized_fast_mesh.h.


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