Abstract interface class for objects that are able to handle point cloud data with normals. It defines queries for nearest neighbor search. More...
#include <PointCloudManager.hpp>
Public Member Functions | |
virtual void | getkClosestVertices (const VertexT &v, const size_t &k, vector< VertexT > &nb)=0 |
Returns the k closest neighbor vertices to a given query point. | |
virtual void | getkClosestNormals (const VertexT &n, const size_t &k, vector< NormalT > &nb)=0 |
Returns the k closest neighbor normals to a given query point. | |
virtual BoundingBox< VertexT > & | getBoundingBox () |
Returns the bounding box of the loaded point set. | |
virtual VertexT | getPoint (size_t index) |
Returns the points at index index} in the point array. | |
virtual size_t | getNumPoints () |
Returns the number of managed points. | |
virtual const VertexT | operator[] (const size_t &index) const |
Returns the point at the given index}. | |
virtual float | distance (VertexT v)=0 |
Protected Member Functions | |
virtual void | readFromFile (string filename) |
Tries to read point and normal information from the given file. | |
Protected Attributes | |
float ** | m_points |
The currently stored points. | |
float ** | m_normals |
The point normals. | |
BoundingBox< VertexT > | m_boundingBox |
The bounding box of the point set. | |
size_t | m_numPoints |
Abstract interface class for objects that are able to handle point cloud data with normals. It defines queries for nearest neighbor search.
Definition at line 27 of file PointCloudManager.hpp.
virtual float lssr::PointCloudManager< VertexT, NormalT >::distance | ( | VertexT | v | ) | [pure virtual] |
Implemented in lssr::StannPointCloudManager< VertexT, NormalT >.
virtual BoundingBox<VertexT>& lssr::PointCloudManager< VertexT, NormalT >::getBoundingBox | ( | ) | [virtual] |
Returns the bounding box of the loaded point set.
virtual void lssr::PointCloudManager< VertexT, NormalT >::getkClosestNormals | ( | const VertexT & | n, | |
const size_t & | k, | |||
vector< NormalT > & | nb | |||
) | [pure virtual] |
Returns the k closest neighbor normals to a given query point.
n | A query vertex | |
k | The (max) number of returned closest points to v | |
nb | A vector containing the determined closest normals |
Implemented in lssr::StannPointCloudManager< VertexT, NormalT >.
virtual void lssr::PointCloudManager< VertexT, NormalT >::getkClosestVertices | ( | const VertexT & | v, | |
const size_t & | k, | |||
vector< VertexT > & | nb | |||
) | [pure virtual] |
Returns the k closest neighbor vertices to a given query point.
v | A query vertex | |
k | The (max) number of returned closest points to v | |
nb | A vector containing the determined closest points |
Implemented in lssr::StannPointCloudManager< VertexT, NormalT >.
virtual size_t lssr::PointCloudManager< VertexT, NormalT >::getNumPoints | ( | ) | [virtual] |
Returns the number of managed points.
virtual VertexT lssr::PointCloudManager< VertexT, NormalT >::getPoint | ( | size_t | index | ) | [virtual] |
Returns the points at index index} in the point array.
index |
virtual const VertexT lssr::PointCloudManager< VertexT, NormalT >::operator[] | ( | const size_t & | index | ) | const [virtual] |
Returns the point at the given index}.
virtual void lssr::PointCloudManager< VertexT, NormalT >::readFromFile | ( | string | filename | ) | [protected, virtual] |
Tries to read point and normal information from the given file.
filename | A file containing point cloud data. |
BoundingBox<VertexT> lssr::PointCloudManager< VertexT, NormalT >::m_boundingBox [protected] |
The bounding box of the point set.
Definition at line 92 of file PointCloudManager.hpp.
float** lssr::PointCloudManager< VertexT, NormalT >::m_normals [protected] |
The point normals.
Definition at line 89 of file PointCloudManager.hpp.
size_t lssr::PointCloudManager< VertexT, NormalT >::m_numPoints [protected] |
Definition at line 94 of file PointCloudManager.hpp.
float** lssr::PointCloudManager< VertexT, NormalT >::m_points [protected] |
The currently stored points.
Definition at line 86 of file PointCloudManager.hpp.