00001 #ifndef TRV_HOMOGRAPHYMOSAIC_HPP
00002 #define TRV_HOMOGRAPHYMOSAIC_HPP
00003
00004 #include "traversability/trv_rotations.hpp"
00005 #include "traversability/trv_util.hpp"
00006 #include "traversability/trv_homography.hpp"
00007
00008 #include "kernel/jafarException.hpp"
00009 #include "jmath/jblas.hpp"
00010 #include "jmath/ublasExtra.hpp"
00011
00012 namespace jafar {
00013 namespace traversability {
00014
00022 class HomographyMosaic : public Homography
00023 {
00024 private:
00025 jblas::mat33 mH_C0Cn;
00026 jblas::mat33 mH_CnC0;
00027
00028 int uCntr;
00029 int vCntr;
00030
00031 public:
00032 HomographyMosaic ( void );
00033 ~HomographyMosaic ( void );
00034 void printInfo ( void ) const;
00035
00036
00037 void update ( const jblas::mat33 &HC0C1 );
00038 void setH_C0Cn ( const jblas::mat33 &HC0Cn );
00039 void setH_CnC0 ( const jblas::mat33 &HCnC0 );
00040 jblas::mat33 getH_C0Cn ( void ) const { return mH_C0Cn; }
00041 jblas::mat33 getH_CnC0 ( void ) const { return mH_CnC0; }
00042
00043 void init ( const float uCenter, const float vCenter );
00044 };
00045
00046 }
00047 }
00048
00049 #endif
00050