Public Member Functions | Protected Member Functions | Protected Attributes

lssr::PointCloudManager< VertexT, NormalT > Class Template Reference

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>

Inheritance diagram for lssr::PointCloudManager< VertexT, NormalT >:
Inheritance graph
[legend]

List of all members.

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

Detailed Description

template<typename VertexT, typename NormalT>
class lssr::PointCloudManager< VertexT, NormalT >

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.


Member Function Documentation

template<typename VertexT, typename NormalT>
virtual float lssr::PointCloudManager< VertexT, NormalT >::distance ( VertexT  v  )  [pure virtual]
template<typename VertexT, typename NormalT>
virtual BoundingBox<VertexT>& lssr::PointCloudManager< VertexT, NormalT >::getBoundingBox (  )  [virtual]

Returns the bounding box of the loaded point set.

template<typename VertexT, typename NormalT>
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.

Parameters:
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 >.

template<typename VertexT, typename 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.

Parameters:
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 >.

template<typename VertexT, typename NormalT>
virtual size_t lssr::PointCloudManager< VertexT, NormalT >::getNumPoints (  )  [virtual]

Returns the number of managed points.

template<typename VertexT, typename NormalT>
virtual VertexT lssr::PointCloudManager< VertexT, NormalT >::getPoint ( size_t  index  )  [virtual]

Returns the points at index index} in the point array.

Parameters:
index 
Returns:
template<typename VertexT, typename NormalT>
virtual const VertexT lssr::PointCloudManager< VertexT, NormalT >::operator[] ( const size_t &  index  )  const [virtual]

Returns the point at the given index}.

template<typename VertexT, typename NormalT>
virtual void lssr::PointCloudManager< VertexT, NormalT >::readFromFile ( string  filename  )  [protected, virtual]

Tries to read point and normal information from the given file.

Parameters:
filename A file containing point cloud data.

Member Data Documentation

template<typename VertexT, typename NormalT>
BoundingBox<VertexT> lssr::PointCloudManager< VertexT, NormalT >::m_boundingBox [protected]

The bounding box of the point set.

Definition at line 92 of file PointCloudManager.hpp.

template<typename VertexT, typename NormalT>
float** lssr::PointCloudManager< VertexT, NormalT >::m_normals [protected]

The point normals.

Definition at line 89 of file PointCloudManager.hpp.

template<typename VertexT, typename NormalT>
size_t lssr::PointCloudManager< VertexT, NormalT >::m_numPoints [protected]

Definition at line 94 of file PointCloudManager.hpp.

template<typename VertexT, typename NormalT>
float** lssr::PointCloudManager< VertexT, NormalT >::m_points [protected]

The currently stored points.

Definition at line 86 of file PointCloudManager.hpp.


The documentation for this class was generated from the following file:
 All Classes Files Functions Variables Typedefs Defines