Implementation of a box clipper in 3D. Actually it allows affine transformations, thus any parallelepiped in general pose. The affine transformation is used to transform the point before clipping it using a cube centered at origin and with an extend of -1 to +1 in each dimension.
More...
#include <pcl/filters/box_clipper3D.h>
|
| BoxClipper3D (const Eigen::Affine3f &transformation) |
| Constructor taking an affine transformation matrix, which allows also shearing of the clipping area. More...
|
|
| BoxClipper3D (const Eigen::Vector3f &rodrigues, const Eigen::Vector3f &translation, const Eigen::Vector3f &box_size) |
| creates a BoxClipper object with a scaled box in general pose More...
|
|
void | setTransformation (const Eigen::Affine3f &transformation) |
| Set the affine transformation. More...
|
|
void | setTransformation (const Eigen::Vector3f &rodrigues, const Eigen::Vector3f &translation, const Eigen::Vector3f &box_size) |
| sets the box in general pose given by the orientation position and size More...
|
|
| ~BoxClipper3D () noexcept override |
| virtual destructor More...
|
|
bool | clipPoint3D (const PointT &point) const override |
| interface to clip a single point More...
|
|
bool | clipLineSegment3D (PointT &from, PointT &to) const override |
|
void | clipPlanarPolygon3D (std::vector< PointT, Eigen::aligned_allocator< PointT > > &polygon) const override |
|
void | clipPlanarPolygon3D (const std::vector< PointT, Eigen::aligned_allocator< PointT > > &polygon, std::vector< PointT, Eigen::aligned_allocator< PointT > > &clipped_polygon) const override |
|
void | clipPointCloud3D (const pcl::PointCloud< PointT > &cloud_in, Indices &clipped, const Indices &indices=Indices()) const override |
| interface to clip a point cloud More...
|
|
Clipper3D< PointT > * | clone () const override |
| polymorphic method to clone the underlying clipper with its parameters. More...
|
|
virtual | ~Clipper3D () noexcept=default |
| virtual destructor. More...
|
|
template<typename PointT>
class pcl::BoxClipper3D< PointT >
Implementation of a box clipper in 3D. Actually it allows affine transformations, thus any parallelepiped in general pose. The affine transformation is used to transform the point before clipping it using a cube centered at origin and with an extend of -1 to +1 in each dimension.
- Author
- Suat Gedikli gedik.nosp@m.li@w.nosp@m.illow.nosp@m.gara.nosp@m.ge.co.nosp@m.m
- See also
- CropBox
Definition at line 54 of file box_clipper3D.h.
◆ ConstPtr
template<typename PointT >
◆ Ptr
template<typename PointT >
◆ BoxClipper3D() [1/2]
template<typename PointT >
◆ BoxClipper3D() [2/2]
template<typename PointT >
creates a BoxClipper object with a scaled box in general pose
- Parameters
-
[in] | rodrigues | the rotation axis and angle given by the vector direction and length respectively |
[in] | translation | the position of the box center |
[in] | box_size | the size of the box for each dimension |
Definition at line 48 of file box_clipper3D.hpp.
◆ ~BoxClipper3D()
template<typename PointT >
◆ clipLineSegment3D()
template<typename PointT >
◆ clipPlanarPolygon3D() [1/2]
template<typename PointT >
◆ clipPlanarPolygon3D() [2/2]
template<typename PointT >
◆ clipPoint3D()
template<typename PointT >
interface to clip a single point
- Parameters
-
[in] | point | the point to check against |
- Returns
- true, it point still exists, false if its clipped
Implements pcl::Clipper3D< PointT >.
Definition at line 107 of file box_clipper3D.hpp.
◆ clipPointCloud3D()
template<typename PointT >
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.
Implements pcl::Clipper3D< PointT >.
Definition at line 195 of file box_clipper3D.hpp.
References pcl::PointCloud< PointT >::size().
◆ clone()
template<typename PointT >
polymorphic method to clone the underlying clipper with its parameters.
- Returns
- the new clipper object from the specific subclass with all its parameters.
Implements pcl::Clipper3D< PointT >.
Definition at line 74 of file box_clipper3D.hpp.
◆ getDistance()
template<typename PointT >
◆ setTransformation() [1/2]
template<typename PointT >
Set the affine transformation.
- Parameters
-
[in] | transformation | applied to the point(s) |
Definition at line 60 of file box_clipper3D.hpp.
◆ setTransformation() [2/2]
template<typename PointT >
void pcl::BoxClipper3D< PointT >::setTransformation |
( |
const Eigen::Vector3f & |
rodrigues, |
|
|
const Eigen::Vector3f & |
translation, |
|
|
const Eigen::Vector3f & |
box_size |
|
) |
| |
sets the box in general pose given by the orientation position and size
- Parameters
-
[in] | rodrigues | the rotation axis and angle given by the vector direction and length respectively |
[in] | translation | the position of the box center |
[in] | box_size | the size of the box for each dimension |
Definition at line 67 of file box_clipper3D.hpp.
◆ transformPoint()
template<typename PointT >
The documentation for this class was generated from the following files: