Loading...
Searching...
No Matches
pcl::Clipper3D< PointT > Class Template Referenceabstract
Module filters

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

`#include <pcl/filters/clipper3D.h>`

Inheritance diagram for pcl::Clipper3D< PointT >:

## Public Types

using | Ptr = shared_ptr< Clipper3D< PointT > >
using | ConstPtr = shared_ptr< const Clipper3D< PointT > >

## Public Member Functions

virtual | ~Clipper3D () noexcept=default
| virtual destructor.
virtual bool | clipPoint3D (const PointT &point) const =0
| interface to clip a single point
virtual bool | clipLineSegment3D (PointT &pt1, PointT &pt2) const =0
| interface to clip a line segment given by two end points.
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
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
virtual void | clipPointCloud3D (const pcl::PointCloud< PointT > &cloud_in, Indices &clipped, const Indices &indices=Indices()) const =0
| interface to clip a point cloud
virtual Clipper3D< PointT > * | clone () const =0
| polymorphic method to clone the underlying clipper with its parameters.

## 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 54 of file clipper3D.h.

## Member Typedef Documentation

## ConstPtr

template<typename PointT >

using pcl::Clipper3D< PointT >::ConstPtr = shared_ptr<const Clipper3D<PointT> >

Definition at line 58 of file clipper3D.h.

## Ptr

template<typename PointT >

using pcl::Clipper3D< PointT >::Ptr = shared_ptr<Clipper3D<PointT> >

Definition at line 57 of file clipper3D.h.

## Constructor & Destructor Documentation

## ~Clipper3D()

template<typename PointT >

virtual pcl::Clipper3D< PointT >::~Clipper3D | ( |  | ) |

virtual default noexcept

virtual destructor.

Never throws an exception.

## Member Function Documentation

## clipLineSegment3D()

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] | pt1 | start point of the line
  [in,out] | pt2 | end 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::PlaneClipper3D< PointT >, and pcl::BoxClipper3D< PointT >.

## clipPlanarPolygon3D() [1/2]

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] | polygon | the polygon in any direction (ccw or cw) but ordered, thus two neighboring points define an edge of the polygon
  [out] | clipped_polygon | the clipped polygon

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

## clipPlanarPolygon3D() [2/2]

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] | polygon | the polygon in any direction (ccw or cw) but ordered, thus two neighboring points define an edge of the polygon

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

## clipPoint3D()

template<typename PointT >

virtual bool pcl::Clipper3D< PointT >::clipPoint3D | ( | const PointT & | point | ) | const

pure virtual

interface to clip a single point

Parameters

  [in] | point | the point to check against

Returns
  true, it point still exists, false if its clipped

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

## clipPointCloud3D()

template<typename PointT >

virtual void pcl::Clipper3D< PointT >::clipPointCloud3D | ( | const pcl::PointCloud< PointT > & | cloud_in,
|  | Indices & | clipped,
|  | const Indices & | indices = `Indices()`
| ) |  | const

pure virtual

interface to clip a point cloud

Parameters

  [in] | cloud_in | input point cloud
  [out] | clipped | indices of points that remain after clipping the input cloud
  [in] | indices | the indices of points in the point cloud to be clipped.

Returns
  list of indices of remaining points after clipping.

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

## clone()

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::PlaneClipper3D< PointT >, and pcl::BoxClipper3D< PointT >.

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

- pcl/filters/clipper3D.h