Main Page | Modules | Namespace List | Class Hierarchy | Class List | File List | Namespace Members | Class Members | File Members | Related Pages
hugin_base/algorithms/basic/RotatePanorama.h
Go to the documentation of this file.00001 // -*- c-basic-offset: 4 -*- 00026 #ifndef _BASICALGORITHMS_ROTATEPANORAMA_H 00027 #define _BASICALGORITHMS_ROTATEPANORAMA_H 00028 00029 #include <hugin_shared.h> 00030 #include <algorithm/PanoramaAlgorithm.h> 00031 00032 #include <panodata/PanoramaData.h> 00033 00034 00035 namespace HuginBase { 00036 00037 00038 class IMPEX RotatePanorama : public PanoramaAlgorithm 00039 { 00040 00041 public: 00043 RotatePanorama(PanoramaData& panorama, const Matrix3& transformMat) 00044 : PanoramaAlgorithm(panorama), o_transformMat(transformMat) 00045 {}; 00046 00048 RotatePanorama(PanoramaData& panorama, double yaw, double pitch, double roll); 00049 00051 virtual ~RotatePanorama() {}; 00052 00053 00054 public: 00056 static void rotatePano(PanoramaData& panorama, const Matrix3& transformMat); 00057 00058 00059 public: 00061 virtual bool modifiesPanoramaData() const 00062 { return true; } 00063 00065 virtual bool runAlgorithm() 00066 { 00067 rotatePano(o_panorama, o_transformMat); 00068 return true; // let's hope so. 00069 } 00070 00071 00072 protected: 00073 Matrix3 o_transformMat; 00074 }; 00075 00076 00077 } // namespace 00078 #endif
1.3.9.1