#include <surface.h>
Classes | |
struct | SWINDOW |
Public Member Functions | |
virtual float | area () const =0 |
calc approx. area | |
virtual bool | fitsCurvature (const Surface &o, const float thr) const =0 |
check form against | |
virtual const char * | getName () const =0 |
virtual int | getSurfaceType () const =0 |
get implementation details | |
virtual void | init (const boost::array< float, 6 > ¶ms, const float min_x, const float max_x, const float min_y, const float max_y, const float weight)=0 |
init with 6 parameters | |
virtual float | merge (const Surface &o, const float this_w, const float o_w, const SWINDOW &wind_t, const SWINDOW &wind_o)=0 |
merge parameters | |
virtual Eigen::Vector2f | nextPoint (const Eigen::Vector3f &v) const =0 |
find nearest point to manifold (Newton) | |
virtual Eigen::Vector3f | normalAt (const Eigen::Vector2f &v) const =0 |
get normal at 2D point | |
virtual Eigen::Vector3f | project2world (const Eigen::Vector2f &pt) const =0 |
project a 2D point to 3D | |
virtual void | transform (const Eigen::Matrix3f &rot, const Eigen::Vector3f &tr)=0 |
transform basis | |
virtual | ~Surface () |
virtual Slam_Surface::Surface::~Surface | ( | ) | [inline, virtual] |
virtual float Slam_Surface::Surface::area | ( | ) | const [pure virtual] |
calc approx. area
Implemented in Slam_Surface::PolynomialSurface, Slam_Surface::SurfaceNurbs, and Slam_Surface::SurfaceTriSpline.
virtual bool Slam_Surface::Surface::fitsCurvature | ( | const Surface & | o, |
const float | thr | ||
) | const [pure virtual] |
check form against
Implemented in Slam_Surface::PolynomialSurface, Slam_Surface::SurfaceNurbs, and Slam_Surface::SurfaceTriSpline.
virtual const char* Slam_Surface::Surface::getName | ( | ) | const [pure virtual] |
Implemented in Slam_Surface::PolynomialSurface, Slam_Surface::SurfaceNurbs, and Slam_Surface::SurfaceTriSpline.
virtual int Slam_Surface::Surface::getSurfaceType | ( | ) | const [pure virtual] |
get implementation details
Implemented in Slam_Surface::PolynomialSurface, Slam_Surface::SurfaceNurbs, and Slam_Surface::SurfaceTriSpline.
virtual void Slam_Surface::Surface::init | ( | const boost::array< float, 6 > & | params, |
const float | min_x, | ||
const float | max_x, | ||
const float | min_y, | ||
const float | max_y, | ||
const float | weight | ||
) | [pure virtual] |
init with 6 parameters
Implemented in Slam_Surface::PolynomialSurface, Slam_Surface::SurfaceNurbs, and Slam_Surface::SurfaceTriSpline.
virtual float Slam_Surface::Surface::merge | ( | const Surface & | o, |
const float | this_w, | ||
const float | o_w, | ||
const SWINDOW & | wind_t, | ||
const SWINDOW & | wind_o | ||
) | [pure virtual] |
merge parameters
Implemented in Slam_Surface::PolynomialSurface, Slam_Surface::SurfaceNurbs, and Slam_Surface::SurfaceTriSpline.
virtual Eigen::Vector2f Slam_Surface::Surface::nextPoint | ( | const Eigen::Vector3f & | v | ) | const [pure virtual] |
find nearest point to manifold (Newton)
Implemented in Slam_Surface::PolynomialSurface, Slam_Surface::SurfaceNurbs, and Slam_Surface::SurfaceTriSpline.
virtual Eigen::Vector3f Slam_Surface::Surface::normalAt | ( | const Eigen::Vector2f & | v | ) | const [pure virtual] |
get normal at 2D point
Implemented in Slam_Surface::PolynomialSurface, Slam_Surface::SurfaceNurbs, and Slam_Surface::SurfaceTriSpline.
virtual Eigen::Vector3f Slam_Surface::Surface::project2world | ( | const Eigen::Vector2f & | pt | ) | const [pure virtual] |
project a 2D point to 3D
Implemented in Slam_Surface::PolynomialSurface, Slam_Surface::SurfaceNurbs, and Slam_Surface::SurfaceTriSpline.
virtual void Slam_Surface::Surface::transform | ( | const Eigen::Matrix3f & | rot, |
const Eigen::Vector3f & | tr | ||
) | [pure virtual] |
transform basis
Implemented in Slam_Surface::PolynomialSurface, Slam_Surface::SurfaceNurbs, and Slam_Surface::SurfaceTriSpline.