contrib/oxl/oxp/RadialLensCorrection.h

Go to the documentation of this file.
00001 // This is oxl/oxp/RadialLensCorrection.h
00002 #ifndef RadialLensCorrection_h_
00003 #define RadialLensCorrection_h_
00004 #ifdef VCL_NEEDS_PRAGMA_INTERFACE
00005 #pragma interface
00006 #endif
00007 //:
00008 // \file
00009 // \author Andrew W. Fitzgibbon, Oxford RRG, 13 Jul 98
00010 //
00011 //-----------------------------------------------------------------------------
00012 
00013 #include <oxp/Mapping_2d_2d.h>
00014 
00015 class RadialLensCorrection : public Mapping_2d_2d
00016 {
00017  public:
00018   RadialLensCorrection(double cx, double cy, double sx, double sy, double k2, double k4 = 0);
00019   RadialLensCorrection(double k2);
00020   RadialLensCorrection(int w, int h, double k2);
00021 
00022  protected: // implementation of Mapping_2d_2d
00023   virtual void implement_map(double x1, double y1, double* x2, double* y2);
00024   virtual void implement_inverse_map(double x2, double y2, double* x1, double* y1);
00025 
00026   void init(double cx, double cy, double sx, double sy, double k2, double k4);
00027 
00028   double _cx;
00029   double _cy;
00030   double _sx;
00031   double _sy;
00032   double _k2;
00033   double _k4;
00034   double _invsx;
00035   double _invsy;
00036 };
00037 
00038 #endif // RadialLensCorrection_h_

Generated on Tue Dec 2 05:14:28 2008 for contrib/oxl/oxp by  doxygen 1.5.1