Spec-Zone.ru › PointCloudLibrary

ConvexHull using libqhull library. Подробнее...

#include <pcl/surface/convex_hull.h>

Inheritance graph
[легенда]
Collaboration graph
[легенда]

Public Types

using Ptr = shared_ptr< ConvexHull< PointInT > >
using ConstPtr = shared_ptr< const ConvexHull< PointInT > >
using PointCloud = pcl::PointCloud< PointInT >
using PointCloudPtr = typename PointCloud::Ptr
using PointCloudConstPtr = typename PointCloud::ConstPtr
- Public Types inherited from pcl::MeshConstruction< PointInT >
using Ptr = shared_ptr< MeshConstruction< PointInT > >
using ConstPtr = shared_ptr< const MeshConstruction< PointInT > >
- Public Types inherited from pcl::PCLSurfaceBase< PointInT >
using Ptr = shared_ptr< PCLSurfaceBase< PointInT > >
using ConstPtr = shared_ptr< const PCLSurfaceBase< PointInT > >
using KdTree = pcl::search::Search< PointInT >
using KdTreePtr = typename KdTree::Ptr
- Public Types inherited from pcl::PCLBase< PointInT >
using PointCloud = pcl::PointCloud< PointInT >
using PointCloudPtr = typename PointCloud::Ptr
using PointCloudConstPtr = typename PointCloud::ConstPtr
using PointIndicesPtr = PointIndices::Ptr
using PointIndicesConstPtr = PointIndices::ConstPtr

Общедоступные члены-функции

ConvexHull ()
Конструктор по умолчанию. Подробнее...
~ConvexHull () override=default
Деструктор по умолчанию. Подробнее...
void reconstruct (PointCloud &points, std::vector< pcl::Vertices > &polygons)
Вычисление выпуклой оболочки для всех заданных точек. Подробнее...
void reconstruct (PointCloud &points)
Вычисление выпуклой оболочки для всех заданных точек. Подробнее...
void setComputeAreaVolume (bool value)
Если установлено в true, библиотека qhull вызывается для вычисления общей площади и объема выпуклой оболочки. Подробнее...
double getTotalArea () const
Возвращает общую площадь выпуклой оболочки. Подробнее...
double getTotalVolume () const
Возвращает общий объем выпуклой оболочки. Подробнее...
void setDimension (int dimension)
Устанавливает размерность входных данных, 2D или 3D. Подробнее...
int getDimension () const
Возвращает размерность (2 или 3) вычисленной оболочки. Подробнее...
void getHullPointIndices (pcl::PointIndices &hull_point_indices) const
Получить индексы точек входного облака точек для выпуклой оболочки. Подробнее...
- Общедоступные члены-функции унаследованные от pcl::MeshConstruction< PointInT >
MeshConstruction ()
Конструктор. Подробнее...
~MeshConstruction () override=default
Деструктор. Подробнее...
void reconstruct (pcl::PolygonMesh &output) override
Базовый метод реконструкции поверхности для всех заданных точек в <setInputCloud (), setIndices ()> Подробнее...
virtual void reconstruct (std::vector< pcl::Vertices > &polygons)
Базовый метод построения сетки для всех точек, заданных в <setInputCloud (), setIndices ()> Подробнее...
- Общедоступные члены-функции унаследованные от pcl::PCLSurfaceBase< PointInT >
PCLSurfaceBase ()
Конструктор по умолчанию. Подробнее...
~PCLSurfaceBase () override=default
Деструктор по умолчанию. Подробнее...
void setSearchMethod (const KdTreePtr &tree)
Укажите необязательный указатель на объект поиска. Подробнее...
KdTreePtr getSearchMethod ()
Получить указатель на метод поиска, используемый. Подробнее...
- Общедоступные члены-функции, унаследованные от pcl::PCLBase< PointInT >
PCLBase ()
Пустой конструктор. Подробнее...
PCLBase (const PCLBase &base)
Конструктор копирования. Подробнее...
virtual ~PCLBase ()=default
Деструктор. Подробнее...
virtual void setInputCloud (const PointCloudConstPtr &cloud)
Укажите указатель на входной набор данных. Подробнее...
PointCloudConstPtr const getInputCloud () const
Получить указатель на входное облако точек. Подробнее...
virtual void setIndices (const IndicesPtr &indices)
Укажите указатель на вектор индексов, представляющий входные данные. Подробнее...
virtual void setIndices (const IndicesConstPtr &indices)
Укажите указатель на вектор индексов, представляющий входные данные. Подробнее...
virtual void setIndices (const PointIndicesConstPtr &indices)
Укажите указатель на вектор индексов, представляющий входные данные. Подробнее...
virtual void setIndices (std::size_t row_start, std::size_t col_start, std::size_t nb_rows, std::size_t nb_cols)
Установить индексы для точек, лежащих внутри интересующей области облака точек. Подробнее...
IndicesPtr getIndices ()
Получить указатель на используемый вектор индексов. Подробнее...
IndicesConstPtr const getIndices () const
Получить указатель на используемый вектор индексов. Подробнее...
const PointInT & operator[] (std::size_t pos) const
Переопределенный оператор PointCloud[] для сокращения кода. Подробнее...

Защищенные члены-функции

void performReconstruction (PointCloud &points, std::vector< pcl::Vertices > &polygons, bool fill_polygon_data=false)
Фактический метод реконструкции. Подробнее...
void performReconstruction2D (PointCloud &points, std::vector< pcl::Vertices > &polygons, bool fill_polygon_data=false)
Метод реконструкции для 2D данных. Подробнее...
void performReconstruction3D (PointCloud &points, std::vector< pcl::Vertices > &polygons, bool fill_polygon_data=false)
Метод реконструкции для 3D данных. Подробнее...
void performReconstruction (PolygonMesh &output) override
Метод реконструкции, возвращающий polygonmesh. Подробнее...
void performReconstruction (std::vector< pcl::Vertices > &polygons) override
Метод реконструкции, возвращающий многоугольник выпуклой оболочки. Подробнее...
void calculateInputDimension ()
Автоматически определяет размерность входных данных - 2D или 3D. Подробнее...
std::string getClassName () const override
Метод получения имени класса. Подробнее...
- Защищенные члены-функции, унаследованные от pcl::PCLBase< PointInT >
bool initCompute ()
Этот метод должен вызываться перед началом фактического вычисления. Подробнее...
bool deinitCompute ()
Этот метод должен вызываться после завершения фактического вычисления. Подробнее...

Защищенные атрибуты

bool compute_area_
double total_area_
double total_volume_
int dimension_
Размерность вогнутой оболочки (2D или 3D). Подробнее...
double projection_angle_thresh_
Насколько близко должна быть нормаль 2D-плоскости к оси, чтобы возникли проблемы с проекцией. Подробнее...
std::string qhull_flags
Строка флагов опций для вызова qhull. Подробнее...
const Eigen::Vector3d x_axis_
const Eigen::Vector3d y_axis_
const Eigen::Vector3d z_axis_
pcl::PointIndices hull_indices_
- Защищенные атрибуты, унаследованные от pcl::MeshConstruction< PointInT >
bool check_tree_
Флаг, указывающий, нужно ли производному алгоритму реконструкции использовать объект поиска tree. Подробнее...
- Защищенные атрибуты, унаследованные от pcl::PCLSurfaceBase< PointInT >
KdTreePtr tree_
Указатель на объект пространственного поиска. Подробнее...
- Защищенные атрибуты, унаследованные от pcl::PCLBase< PointInT >
PointCloudConstPtr input_
Набор входных точек. Подробнее...
IndicesPtr indices_
Указатель на вектор индексов точек для использования. Подробнее...
bool use_indices_
Устанавливается в true, если используются индексы точек. Подробнее...
bool fake_indices_
Если набор индексов не задан, создается набор фиктивных индексов, имитирующих входной PointCloud. Подробнее...

Подробное описание

шаблон<typename PointInT>
класс pcl::ConvexHull< PointInT >

ConvexHull с использованием библиотеки libqhull.

Автор
Aitor Aldoma, Alex Trevor

Определение в строке 72 файла convex_hull.h.

Документация по переопределенным типам данных

ConstPtr

шаблон<typename PointInT >
using pcl::ConvexHull< PointInT >::ConstPtr = shared_ptr<const ConvexHull<PointInT> >

Определение в строке 82 файла convex_hull.h.

PointCloud

template<typename PointInT >
using pcl::ConvexHull< PointInT >::PointCloud = pcl::PointCloud<PointInT>

Определение в строке 86 файла convex_hull.h.

PointCloudConstPtr

template<typename PointInT >
using pcl::ConvexHull< PointInT >::PointCloudConstPtr = typename PointCloud::ConstPtr

Определение в строке 88 файла convex_hull.h.

PointCloudPtr

template<typename PointInT >
using pcl::ConvexHull< PointInT >::PointCloudPtr = typename PointCloud::Ptr

Определение в строке 87 файла convex_hull.h.

Ptr

template<typename PointInT >
using pcl::ConvexHull< PointInT >::Ptr = shared_ptr<ConvexHull<PointInT> >

Определение в строке 81 файла convex_hull.h.

Конструктор и деструктор

ConvexHull()

template<typename PointInT >
pcl::ConvexHull< PointInT >::ConvexHull ( )
inline

Пустой конструктор.

Определение в строке 91 файла convex_hull.h.

~ConvexHull()

template<typename PointInT >
pcl::ConvexHull< PointInT >::~ConvexHull ( )
overridedefault

Пустой деструктор.

Документация по членам-функциям

calculateInputDimension()

template<typename PointInT >
void pcl::ConvexHull< PointInT >::calculateInputDimension
protected

Автоматически определяет размерность входных данных — 2D или 3D.

Определение в строке 57 файла convex_hull.hpp.

Ссылки на pcl::compute3DCentroid(), pcl::computeCovarianceMatrixNormalized() и pcl::eigen33().

getClassName()

template<typename PointInT >
std::string pcl::ConvexHull< PointInT >::getClassName ( ) const
inlineoverrideprotectedvirtual

Метод получения имени класса.

Переопределено из pcl::PCLSurfaceBase< PointInT >.

Определение в строке 234 файла convex_hull.h.

Используется в pcl::ConvexHull< PointInT >::setDimension().

getDimension()

template<typename PointInT >
int pcl::ConvexHull< PointInT >::getDimension ( ) const
inline

Возвращает размерность (2 или 3) вычисленной оболочки.

Определение в строке 164 файла convex_hull.h.

Ссылки на pcl::ConvexHull< PointInT >::dimension_.

getHullPointIndices()

template<typename PointInT >
void pcl::ConvexHull< PointInT >::getHullPointIndices ( pcl::PointIndices & hull_point_indices ) const

Получение индексов точек входного облака точек, образующих выпуклую оболочку.

Примечание
Должно вызываться только после завершения построения.
Параметры
[out] hull_point_indices Индексы точек, образующих облако точек

Определение в строке 503 файла convex_hull.hpp.

getTotalArea()

template<typename PointInT >
double pcl::ConvexHull< PointInT >::getTotalArea ( ) const
inline

Возвращает общую площадь выпуклой оболочки.

Определение в строке 136 файла convex_hull.h.

Ссылки на pcl::ConvexHull< PointInT >::total_area_.

getTotalVolume()

template<typename PointInT >
double pcl::ConvexHull< PointInT >::getTotalVolume ( ) const
inline

Возвращает общий объём выпуклой оболочки.

Действительно только для 3-мерных множеств. Для 2D-множеств объём равен нулю.

Определение в строке 145 файла convex_hull.h.

Ссылки на pcl::ConvexHull< PointInT >::total_volume_.

performReconstruction() [1/3]

template<typename PointInT >
void pcl::ConvexHull< PointInT >::performReconstruction ( PointCloud & points,
std::vector< pcl::Vertices > & polygons,
bool fill_polygon_data = false
)
protected

Фактический метод реконструкции.

Параметры
[out] points результирующие точки, лежащие на выпуклой оболочке
[out] polygons результирующие многоугольники выпуклой оболочки, как набор вершин. Структура Vertices содержит массив индексов точек.
[in] fill_polygon_data true, если многоугольники должны быть заполнены, в противном случае false

Определение в строке 425 файла convex_hull.hpp.

performReconstruction() [2/3]

template<typename PointInT >
void pcl::ConvexHull< PointInT >::performReconstruction ( PolygonMesh & output )
overrideprotectedvirtual

Метод реконструкции, возвращающий polygonmesh.

Параметры
[out] output PolygonMesh, представляющий выпуклую оболочку входных данных.

Реализует pcl::MeshConstruction< PointInT >.

Определение в строке 463 файла convex_hull.hpp.

Ссылки на pcl::PolygonMesh::cloud, pcl::PolygonMesh::polygons и pcl::toPCLPointCloud2().

performReconstruction() [3/3]

template<typename PointInT >
void pcl::ConvexHull< PointInT >::performReconstruction ( std::vector< pcl::Vertices > & polygons )
overrideprotectedvirtual

Метод реконструкции, возвращающий многоугольник выпуклой оболочки.

Параметры
[out] polygons многоугольник(и) представляющий(ют) выпуклую оболочку входных данных.

Реализует pcl::MeshConstruction< PointInT >.

Определение в строке 475 файла convex_hull.hpp.

performReconstruction2D()

template<typename PointInT >
void pcl::ConvexHull< PointInT >::performReconstruction2D ( PointCloud & points,
std::vector< pcl::Vertices > & polygons,
bool fill_polygon_data = false
)
protected

Метод реконструкции для 2D данных.

Не требует задания размерности.

Параметры
[out] points результирующие точки, лежащие на выпуклой оболочке
[out] polygons результирующие полигоны выпуклой оболочки, как набор вершин. Структура Vertices содержит массив индексов точек.
[in] fill_polygon_data true, если полигоны должны быть заполнены, в противном случае false

Определение в строке 76 файла convex_hull.hpp.

Ссылки на pcl::PointCloud< PointT >::clear(), pcl::comparePoints2D(), pcl::compute3DCentroid(), pcl::computeCovarianceMatrixNormalized(), pcl::eigen33(), pcl::PointCloud< PointT >::height, pcl::PointCloud< PointT >::is_dense, pcl::PointCloud< PointT >::resize(), pcl::PointCloud< PointT >::size() и pcl::PointCloud< PointT >::width.

performReconstruction3D()

template<typename PointInT >
void pcl::ConvexHull< PointInT >::performReconstruction3D ( PointCloud & points,
std::vector< pcl::Vertices > & polygons,
bool fill_polygon_data = false
)
protected

Метод реконструкции для 3D данных.

Не требует задания размерности.

Параметры
[out] points результирующие точки, лежащие на выпуклой оболочке
[out] polygons результирующие полигоны выпуклой оболочки, как набор вершин. Структура Vertices содержит массив индексов точек.
[in] fill_polygon_data true, если полигоны должны быть заполнены, в противном случае false

Определение в строке 292 файла convex_hull.hpp.

Ссылки на pcl::PointCloud< PointT >::height, pcl::PointCloud< PointT >::is_dense, pcl::PointCloud< PointT >::resize(), pcl::PointCloud< PointT >::size() и pcl::PointCloud< PointT >::width.

reconstruct() [1/2]

template<typename PointInT >
void pcl::ConvexHull< PointInT >::reconstruct ( PointCloud & points )

Вычисление выпуклой оболочки для всех заданных точек.

Параметры
[out] points результирующие точки, лежащие на выпуклой оболочке.

Определение в строке 440 файла convex_hull.hpp.

Ссылки на pcl::PointCloud< PointT >::clear(), pcl::PointCloud< PointT >::header, pcl::PointCloud< PointT >::height, pcl::PointCloud< PointT >::is_dense, pcl::PointCloud< PointT >::size() и pcl::PointCloud< PointT >::width.

reconstruct() [2/2]

template<typename PointInT >
void pcl::ConvexHull< PointInT >::reconstruct ( PointCloud & points,
std::vector< pcl::Vertices > & polygons
)

Вычислить выпуклую оболочку для всех заданных точек.

Примечание
В случае 2D (т.е. если входные точки принадлежат одной плоскости) вектор polygons будет содержать один элемент, а в 3D случае он будет содержать по одному элементу для каждой грани оболочки.
Параметры
[out] points результирующие точки, лежащие на выпуклой оболочке.
[out] polygons результирующие многоугольники выпуклой оболочки как набор вершин. Структура Vertices содержит массив индексов точек.

Определение в строке 483 файла convex_hull.hpp.

Ссылки на pcl::PointCloud< PointT >::clear(), pcl::PointCloud< PointT >::header, pcl::PointCloud< PointT >::height, pcl::PointCloud< PointT >::is_dense, pcl::PointCloud< PointT >::size(), и pcl::PointCloud< PointT >::width.

setComputeAreaVolume()

template<typename PointInT >
void pcl::ConvexHull< PointInT >::setComputeAreaVolume ( bool value )
inline

Если установлено в true, библиотека qhull вызывается для вычисления общей площади и объема выпуклой оболочки.

ПРИМЕЧАНИЕ: при активации этого параметра, библиотека qhull выводит вывод в консоль.

Параметры
[in] value вычислять ли площадь и объем, по умолчанию false

Определение в строке 125 файла convex_hull.h.

Ссылки на pcl::ConvexHull< PointInT >::compute_area_, и pcl::ConvexHull< PointInT >::qhull_flags.

setDimension()

template<typename PointInT >
void pcl::ConvexHull< PointInT >::setDimension ( int dimension )
inline

Устанавливает размер входных данных, 2D или 3D.

Параметры
[in] dimension Размерность входных данных. Если не установлено, это будет определено автоматически.

Определение в строке 154 файла convex_hull.h.

Ссылки на pcl::ConvexHull< PointInT >::dimension_, и pcl::ConvexHull< PointInT >::getClassName().

Данные членов

compute_area_

template<typename PointInT >
bool pcl::ConvexHull< PointInT >::compute_area_
protected

Определение в строке 240 файла convex_hull.h.

Ссылка на pcl::ConvexHull< PointInT >::setComputeAreaVolume().

dimension_

template<typename PointInT >
int pcl::ConvexHull< PointInT >::dimension_
protected

Размерность выпуклой оболочки (2D или 3D).

Определение в строке 249 файла convex_hull.h.

Ссылка на pcl::ConvexHull< PointInT >::getDimension(), и pcl::ConvexHull< PointInT >::setDimension().

hull_indices_

template<typename PointInT >
pcl::PointIndices pcl::ConvexHull< PointInT >::hull_indices_
protected

Определение в строке 267 файла convex_hull.h.

projection_angle_thresh_

template<typename PointInT >
double pcl::ConvexHull< PointInT >::projection_angle_thresh_
protected

Насколько близко может быть нормаль 2D плоскости к оси, чтобы сделать проекцию проблемной.

Определение в строке 252 файла convex_hull.h.

qhull_flags

template<typename PointInT >
std::string pcl::ConvexHull< PointInT >::qhull_flags
protected

Строка флагов для вызова qhull.

Определение в строке 255 файла convex_hull.h.

Используется в pcl::ConvexHull< PointInT >::setComputeAreaVolume().

total_area_

template<typename PointInT >
double pcl::ConvexHull< PointInT >::total_area_
protected

Определение в строке 243 файла convex_hull.h.

Используется в pcl::ConvexHull< PointInT >::getTotalArea().

total_volume_

template<typename PointInT >
double pcl::ConvexHull< PointInT >::total_volume_
protected

Определение в строке 246 файла convex_hull.h.

Используется в pcl::ConvexHull< PointInT >::getTotalVolume().

x_axis_

template<typename PointInT >
const Eigen::Vector3d pcl::ConvexHull< PointInT >::x_axis_
protected

Определение в строке 258 файла convex_hull.h.

y_axis_

template<typename PointInT >
const Eigen::Vector3d pcl::ConvexHull< PointInT >::y_axis_
protected

Определение в строке 261 файла convex_hull.h.

z_axis_

template<typename PointInT >
const Eigen::Vector3d pcl::ConvexHull< PointInT >::z_axis_
protected

Определение в строке 264 файла convex_hull.h.


Документация для этого класса была сгенерирована из следующих файлов:
  • pcl/surface/convex_hull.h
  • pcl/surface/impl/convex_hull.hpp

© 2009–2012, Willow Garage, Inc.
© 2012–, Open Perception, Inc.
Licensed under the BSD License.
https://pointclouds.org/documentation/classpcl_1_1_convex_hull.html

Spec-Zone.ru

Настройки Оффлайн Что нового Помощь О нас
Spec-Zone .ru
спецификации, руководства, описания, API