Реализация обрезателя прямоугольных призм в 3D. На самом деле она позволяет аффинные преобразования, таким образом, любой параллелепипед в общем положении. Аффинное преобразование используется для преобразования точки перед её обрезанием с использованием единичного куба, центрированного в начале координат и с диапазоном от -1 до +1 по каждой оси. Подробнее...
#include <pcl/filters/box_clipper3D.h>
Общедоступные типы | |
| using | Ptr = shared_ptr< BoxClipper3D< PointT > > |
| using | ConstPtr = shared_ptr< const BoxClipper3D< PointT > > |
|
| |
| using | Ptr = shared_ptr< Clipper3D< PointT > > |
| using | ConstPtr = shared_ptr< const Clipper3D< PointT > > |
Общедоступные члены-функции | |
| BoxClipper3D (const Eigen::Affine3f &transformation) | |
| Конструктор, принимающий матрицу аффинного преобразования, которая также позволяет сдвигать область обрезки. Подробнее... |
|
| BoxClipper3D (const Eigen::Vector3f &rodrigues, const Eigen::Vector3f &translation, const Eigen::Vector3f &box_size) | |
| создает объект BoxClipper с масштабированным кубом в общем положении Подробнее... |
|
| void | setTransformation (const Eigen::Affine3f &transformation) |
| Установить аффинное преобразование. Подробнее... |
|
| void | setTransformation (const Eigen::Vector3f &rodrigues, const Eigen::Vector3f &translation, const Eigen::Vector3f &box_size) |
| устанавливает куб в общем положении, заданном ориентацией, положением и размером Подробнее... |
|
| ~BoxClipper3D () noexcept override | |
| виртуальный деструктор Подробнее... |
|
| bool | clipPoint3D (const PointT &point) const override |
| интерфейс для обрезки одной точки Подробнее... |
|
| 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 |
| интерфейс для обрезки облака точек Подробнее... |
|
| Clipper3D< PointT > * | clone () const override |
| полиморфный метод для клонирования базового обрезателя с его параметрами. Подробнее... |
|
|
| |
| virtual | ~Clipper3D () noexcept=default |
| виртуальный деструктор. Подробнее... |
|
Защищенные члены-функции | |
| float | getDistance (const PointT &point) const |
| void | transformPoint (const PointT &pointIn, PointT &pointOut) const |
Подробное описание
template<typename PointT>
class pcl::BoxClipper3D< PointT >
Реализация обрезателя куба в 3D. На самом деле он позволяет использовать аффинные преобразования, таким образом, любой параллелепипед в общем положении. Аффинное преобразование используется для преобразования точки перед ее обрезкой с использованием единичного куба, центрированного в начале координат, и с размахом от -1 до +1 по каждой оси.
Определение в строке 53 файла box_clipper3D.h.
Документация по членам-типам
ConstPtr
| using pcl::BoxClipper3D< PointT >::ConstPtr = shared_ptr<const BoxClipper3D<PointT> > |
Определение в строке 58 файла box_clipper3D.h.
Ptr
| using pcl::BoxClipper3D< PointT >::Ptr = shared_ptr<BoxClipper3D<PointT> > |
Определение в строке 57 файла box_clipper3D.h.
Документация конструктора и деструктора
BoxClipper3D() [1/2]
| pcl::BoxClipper3D< PointT >::BoxClipper3D | ( | const Eigen::Affine3f & | transformation | ) |
Конструктор, принимающий матрицу аффинного преобразования, которая также позволяет смещение области обрезки.
- Параметры
-
[in] transformation матрица аффинного преобразования 3x3, используемая для описания единичного куба
Определение в строке 41 файла box_clipper3D.hpp.
BoxClipper3D() [2/2]
| pcl::BoxClipper3D< PointT >::BoxClipper3D | ( | const Eigen::Vector3f & | rodrigues, |
| const Eigen::Vector3f & | translation, | ||
| const Eigen::Vector3f & | box_size | ||
| ) |
создает объект BoxClipper с масштабированным кубом в общем положении
- Параметры
-
[in] rodrigues ось вращения и угол, заданные соответственно направлением вектора и длиной [in] translation положение центра куба [in] box_size размер куба для каждой размерности
Определение в строке 49 файла box_clipper3D.hpp.
~BoxClipper3D()
| overridedefaultnoexcept |
виртуальный деструктор
Документация по членам-функциям
clipLineSegment3D()
| overridevirtual |
- Внимание
- код не проверен
Реализует pcl::Clipper3D< PointT >.
Определение в строке 122 файла box_clipper3D.hpp.
clipPlanarPolygon3D() [1/2]
| overridevirtual |
- Внимание
- код не проверен
Реализует pcl::Clipper3D< PointT >.
Определение в строке 176 файла box_clipper3D.hpp.
clipPlanarPolygon3D() [2/2]
| overridevirtual |
- Внимание
- код не проверен
Реализует pcl::Clipper3D< PointT >.
Определение в строке 188 файла box_clipper3D.hpp.
clipPoint3D()
| overridevirtual |
интерфейс для обрезки одной точки
- Параметры
-
[in] point точка для проверки
- Возвращает
- true, если точка остаётся, false если она отсекается
Реализует pcl::Clipper3D< PointT >.
Определение в строке 110 файла box_clipper3D.hpp.
clipPointCloud3D()
| overridevirtual |
интерфейс для обрезки облака точек
- Параметры
-
[in] cloud_in входное облако точек [out] clipped индексы точек, которые остаются после обрезки входного облака [in] indices индексы точек в облаке точек для обрезки.
- Возвращает
- список индексов оставшихся точек после обрезки.
Реализует pcl::Clipper3D< PointT >.
Определение в строке 198 файла box_clipper3D.hpp.
Ссылки на pcl::PointCloud< PointT >::size().
clone()
| overridevirtual |
полиморфный метод для клонирования базового обрезателя с его параметрами.
- Возвращает
- новый объект обрезателя из специфического подкласса со всеми его параметрами.
Реализует pcl::Clipper3D< PointT >.
Определение в строке 77 файла box_clipper3D.hpp.
getDistance()
| protected |
setTransformation() [1/2]
| void pcl::BoxClipper3D< PointT >::setTransformation | ( | const Eigen::Affine3f & | transformation | ) |
Установить аффинное преобразование.
- Параметры
-
[in] transformation
Определение в строке 61 файла box_clipper3D.hpp.
setTransformation() [2/2]
| void pcl::BoxClipper3D< PointT >::setTransformation | ( | const Eigen::Vector3f & | rodrigues, |
| const Eigen::Vector3f & | translation, | ||
| const Eigen::Vector3f & | box_size | ||
| ) |
устанавливает коробку в общем положении, заданном ориентацией, позицией и размером
- Параметры
-
[in] rodrigues ось и угол вращения задаются направлением вектора и его длиной соответственно [in] translation позиция центра коробки [in] box_size размер коробки по каждой размерности
Определение в строке 69 файла box_clipper3D.hpp.
transformPoint()
| protected |
Определение в строке 84 файла box_clipper3D.hpp.
Документация для этого класса была сгенерирована из следующих файлов:
- pcl/filters/box_clipper3D.h
- pcl/filters/impl/box_clipper3D.hpp
© 2009–2012, Willow Garage, Inc.
© 2012–, Open Perception, Inc.
Licensed under the BSD License.
https://pointclouds.org/documentation/classpcl_1_1_box_clipper3_d.html