movement.h
Go to the documentation of this file.
00001 #ifndef FSRMOVEMENT_H
00002 #define FSRMOVEMENT_H
00003 
00004 #include <gmapping/utils/point.h>
00005 
00006 namespace GMapping {
00007 
00009 class FSRMovement  {
00010  public:
00011   FSRMovement(double f=0.0, double s=0.0, double r=0.0);
00012   FSRMovement(const FSRMovement& src);
00013   FSRMovement(const OrientedPoint& pt1, const OrientedPoint& pt2);
00014   FSRMovement(const FSRMovement& move1, const FSRMovement& move2);
00015   
00016 
00017   void normalize();
00018   void invert();
00019   void compose(const FSRMovement& move2);
00020   OrientedPoint move(const OrientedPoint& pt) const;
00021 
00022 
00023   /* static members */
00024 
00025   static OrientedPoint movePoint(const OrientedPoint& pt, const FSRMovement& move1);
00026 
00027   static FSRMovement composeMoves(const FSRMovement& move1, 
00028                                   const FSRMovement& move2);
00029   
00030   static FSRMovement moveBetweenPoints(const OrientedPoint& pt1, 
00031                                        const OrientedPoint& pt2);
00032 
00033   static FSRMovement invertMove(const FSRMovement& move1);
00034 
00035   static OrientedPoint frameTransformation(const OrientedPoint& reference_pt_frame1, 
00036                                            const OrientedPoint& reference_pt_frame2,
00037                                            const OrientedPoint& pt_frame1);
00038 
00039  public:
00040   double f;
00041   double s;
00042   double r;
00043 };
00044 }
00045 #endif


openslam_gmapping
Author(s): Giorgio Grisetti, Cyrill Stachniss, Wolfram Burgard
autogenerated on Thu Jun 6 2019 19:25:13