iLab Neuromorphic Robotics Toolkit  0.1
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Friends Macros Groups Pages
nrt::PointNormal Class Reference

#include <nrt/PointCloud2/Features/FeatureTypes/PointNormal.H>

An SSE capable point normal class.

A point normal represents a normal to a local plane centered at some location as well as the curvature measurement corresponding to this location

Examples:
tests/test-PointCloud2Normals.C.

Definition at line 47 of file PointNormal.H.

Inheritance diagram for nrt::PointNormal:
nrt::PointSSE< PointCloud2::BaseType > nrt::Point< PointCloud2::BaseType, 4 >

Public Member Functions

 PointNormal ()
 Construct a zero valued normal.
 
 PointNormal (BaseType value)
 Constructs a point with all values set to value.
 
 PointNormal (BaseType x, BaseType y, BaseType z, BaseType curvature)
 Construct a point by specifying all values.
 
 PointNormal (std::array< BaseType, 4 > const &init)
 Construct a point from an std::array.
 
 PointNormal (Point< BaseType, 4 > const &other)
 Copy constructor.
 
BaseType & curvature ()
 Access the fourth element.
 
BaseType const curvature () const
 Access the fourth element.
 
- Public Member Functions inherited from nrt::PointSSE< PointCloud2::BaseType >
 PointSSE ()
 Construct a zero valued point with w set to 0.
 
 PointSSE (PointCloud2::BaseTypevalue, PointCloud2::BaseTypew=0)
 Constructs a point with all values set to value, optionally setting w.
 
 PointSSE (PointCloud2::BaseTypex, PointCloud2::BaseTypey, PointCloud2::BaseTypez, PointCloud2::BaseTypew=0)
 Construct a point by specifying the dimensions.
 
 PointSSE (std::array< PointCloud2::BaseType, 3 > const &init)
 Construct a point from an std::array (setting w to 1)
 
 PointSSE (std::array< PointCloud2::BaseType, 4 > const &init)
 Construct a point from an std::array.
 
 PointSSE (Point< PointCloud2::BaseType, 4 > const &other)
 Copy constructor.
 
 PointSSE (Point< PointCloud2::BaseType, 3 > const &other)
 Copy constructor, sets W to 0.
 
 PointSSE (Point< U, 4 > const &other)
 Conversion copy constructor.
 
 PointSSE (Point< U, 3 > const &other)
 Conversion copy constructor, sets W to 0.
 
PointCloud2::BaseTypex ()
 Access the first element.
 
PointCloud2::BaseTypeconst & x () const
 Access the first element.
 
PointCloud2::BaseTypey ()
 Access the second element.
 
PointCloud2::BaseTypeconst & y () const
 Access the second element.
 
PointCloud2::BaseTypez ()
 Access the third element.
 
PointCloud2::BaseTypeconst & z () const
 Access the third element.
 
PointCloud2::BaseTypew ()
 Access the fourth element.
 
PointCloud2::BaseTypeconst & w () const
 Access the fourth element.
 
bool isValid () const
 Checks whether this point is composed of only finite values.
 
Eigen::Map< Vector4,
Eigen::Aligned > 
getVectorMap ()
 Return an eigen vector mapped to the internal contents of this point.
 
Eigen::Map< const Vector4,
Eigen::Aligned > 
getVectorMap () const
 Return a const eigen vector mapped to the internal contents of this point.
 
Eigen::Map< Vector3,
Eigen::Aligned > 
getVector3Map ()
 Return an eigen vector mapped to the internal contents of this point, ignoring the fourth component.
 
Eigen::Map< const Vector3,
Eigen::Aligned > 
getVector3Map () const
 Return a const eigen vector mapped to the internal contents of this point, ignoring the fourth component.
 
- Public Member Functions inherited from nrt::Point< PointCloud2::BaseType, 4 >
 Point ()
 Construct an uninitialized point.
 
 Point (S...args)
 Construct a Point by specifying the value of each Dimension. More...
 
 Point (std::array< PointCloud2::BaseType, Dimensions > const &init)
 Construct a point from an std::array.
 
 Point (Point< PointCloud2::BaseType, Dimensions > const &other)=default
 Copy constructor.
 
 Point (Point< PointCloud2::BaseType, Dimensions > &&other)=default
 Move constructor.
 
 Point (Point< U, Dimensions > const &other)
 Conversion copy constructor, uses nrt::clamped_convert<T,U> internally.
 
Point< PointCloud2::BaseType,
Dimensions > & 
operator= (Point< PointCloud2::BaseType, Dimensions > const &other)=default
 Assignment.
 
Point< PointCloud2::BaseType,
Dimensions > & 
operator= (Point< PointCloud2::BaseType, Dimensions > &&other)=default
 Move assignment.
 
PointCloud2::BaseTypeoperator[] (size_t index)
 Access a single dimension of the Point.
 
PointCloud2::BaseTypeconst & operator[] (size_t index) const
 Access a single dimension of the Point - const version.
 
double distanceTo (Point< U, Dimensions > const &other) const
 Compute the Euclidian distance to another point.
 
double squaredDistanceTo (Point< U, Dimensions > const &other) const
 Compute the squared Euclidian distance to another point.
 
double magnitude () const
 Compute the magnitude (the Euclidian distance from the origin)
 
double manhattanDistanceTo (Point< U, Dimensions > const &other) const
 Compute the Manhattan distance to another point.
 
PointCloud2::BaseTypebegin ()
 Access the beginning of the underlying array.
 
PointCloud2::BaseTypeconst * begin () const
 Access the beginning of the underlying array - const version.
 
PointCloud2::BaseTypeend ()
 Access the end of the underlying array.
 
PointCloud2::BaseTypeconst * end () const
 Access the end of the underlying array - const version.
 

Additional Inherited Members

- Public Types inherited from nrt::PointSSE< PointCloud2::BaseType >
typedef Eigen::Matrix
< PointCloud2::BaseType, 3, 1 > 
Vector3
 
typedef Eigen::Matrix
< PointCloud2::BaseType, 4, 1 > 
Vector4
 
- Protected Member Functions inherited from nrt::Point< PointCloud2::BaseType, 4 >
void serialize (Archive &ar)
 Serialization.
 
- Protected Attributes inherited from nrt::Point< PointCloud2::BaseType, 4 >
std::array
< PointCloud2::BaseType,
Dimensions > 
itsData
 

The documentation for this class was generated from the following file: