Point Cloud Library (PCL)  1.8.1-dev
 All Classes Namespaces Functions Variables Typedefs Enumerations Enumerator Friends Groups Pages
List of all members | Public Types | Public Member Functions
pcl::Clipper3D< PointT > Class Template Referenceabstract

Base class for 3D clipper objects. More...

#include <pcl/filters/clipper3D.h>

+ Inheritance diagram for pcl::Clipper3D< PointT >:

Public Types

typedef boost::shared_ptr
< Clipper3D< PointT > > 
Ptr
 
typedef boost::shared_ptr
< const Clipper3D< PointT > > 
ConstPtr
 

Public Member Functions

virtual ~Clipper3D () throw ()
 virtual destructor. More...
 
virtual bool clipPoint3D (const PointT &point) const =0
 interface to clip a single point More...
 
virtual bool clipLineSegment3D (PointT &pt1, PointT &pt2) const =0
 interface to clip a line segment given by two end points. More...
 
virtual void clipPlanarPolygon3D (std::vector< PointT, Eigen::aligned_allocator< PointT > > &polygon) const =0
 interface to clip a planar polygon given by an ordered list of points More...
 
virtual void clipPlanarPolygon3D (const std::vector< PointT, Eigen::aligned_allocator< PointT > > &polygon, std::vector< PointT, Eigen::aligned_allocator< PointT > > &clipped_polygon) const =0
 interface to clip a planar polygon given by an ordered list of points More...
 
virtual void clipPointCloud3D (const pcl::PointCloud< PointT > &cloud_in, std::vector< int > &clipped, const std::vector< int > &indices=std::vector< int >()) const =0
 interface to clip a point cloud More...
 
virtual Clipper3D< PointT > * clone () const =0
 polymorphic method to clone the underlying clipper with its parameters. More...
 

Detailed Description

template<typename PointT>
class pcl::Clipper3D< PointT >

Base class for 3D clipper objects.

Author
Suat Gedikli gedik.nosp@m.li@w.nosp@m.illow.nosp@m.gara.nosp@m.ge.co.nosp@m.m

Definition at line 52 of file clipper3D.h.

Member Typedef Documentation

template<typename PointT >
typedef boost::shared_ptr< const Clipper3D<PointT> > pcl::Clipper3D< PointT >::ConstPtr

Definition at line 56 of file clipper3D.h.

template<typename PointT >
typedef boost::shared_ptr< Clipper3D<PointT> > pcl::Clipper3D< PointT >::Ptr

Definition at line 55 of file clipper3D.h.

Constructor & Destructor Documentation

template<typename PointT >
virtual pcl::Clipper3D< PointT >::~Clipper3D ( )
throw (
)
inlinevirtual

virtual destructor.

Never throws an exception.

Definition at line 61 of file clipper3D.h.

Member Function Documentation

template<typename PointT >
virtual bool pcl::Clipper3D< PointT >::clipLineSegment3D ( PointT pt1,
PointT pt2 
) const
pure virtual

interface to clip a line segment given by two end points.

The order of the end points is unimportant and will sty the same after clipping. This means basically, that the direction of the line will not flip after clipping.

Parameters
[in,out]pt1start point of the line
[in,out]pt2end point of the line
Returns
true if the clipped line is not empty, thus the parameters are still valid, false if line completely outside clipping space

Implemented in pcl::BoxClipper3D< PointT >, and pcl::PlaneClipper3D< PointT >.

template<typename PointT >
virtual void pcl::Clipper3D< PointT >::clipPlanarPolygon3D ( std::vector< PointT, Eigen::aligned_allocator< PointT > > &  polygon) const
pure virtual

interface to clip a planar polygon given by an ordered list of points

Parameters
[in,out]polygonthe polygon in any direction (ccw or cw) but ordered, thus two neighboring points define an edge of the polygon

Implemented in pcl::BoxClipper3D< PointT >, and pcl::PlaneClipper3D< PointT >.

template<typename PointT >
virtual void pcl::Clipper3D< PointT >::clipPlanarPolygon3D ( const std::vector< PointT, Eigen::aligned_allocator< PointT > > &  polygon,
std::vector< PointT, Eigen::aligned_allocator< PointT > > &  clipped_polygon 
) const
pure virtual

interface to clip a planar polygon given by an ordered list of points

Parameters
[in]polygonthe polygon in any direction (ccw or cw) but ordered, thus two neighboring points define an edge of the polygon
[out]clipped_polygonthe clipped polygon

Implemented in pcl::BoxClipper3D< PointT >, and pcl::PlaneClipper3D< PointT >.

template<typename PointT >
virtual bool pcl::Clipper3D< PointT >::clipPoint3D ( const PointT point) const
pure virtual

interface to clip a single point

Parameters
[in]pointthe point to check against
Returns
true, it point still exists, false if its clipped

Implemented in pcl::BoxClipper3D< PointT >, and pcl::PlaneClipper3D< PointT >.

template<typename PointT >
virtual void pcl::Clipper3D< PointT >::clipPointCloud3D ( const pcl::PointCloud< PointT > &  cloud_in,
std::vector< int > &  clipped,
const std::vector< int > &  indices = std::vector< int >() 
) const
pure virtual

interface to clip a point cloud

Parameters
[in]cloud_ininput point cloud
[out]clippedindices of points that remain after clipping the input cloud
[in]indicesthe indices of points in the point cloud to be clipped.
Returns
list of indices of remaining points after clipping.

Implemented in pcl::BoxClipper3D< PointT >, and pcl::PlaneClipper3D< PointT >.

template<typename PointT >
virtual Clipper3D<PointT>* pcl::Clipper3D< PointT >::clone ( ) const
pure virtual

polymorphic method to clone the underlying clipper with its parameters.

Returns
the new clipper object from the specific subclass with all its parameters.

Implemented in pcl::BoxClipper3D< PointT >, and pcl::PlaneClipper3D< PointT >.


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