Main Page | Directories | Class Hierarchy | Alphabetical List | Class List | File List | Class Members | File Members | Related Pages

vtkWarpLens.h

Go to the documentation of this file.
00001 /*=========================================================================
00002 
00003   Program:   Visualization Toolkit
00004   Module:    $RCSfile: vtkWarpLens.h,v $
00005 
00006   Copyright (c) Ken Martin, Will Schroeder, Bill Lorensen
00007   All rights reserved.
00008   See Copyright.txt or http://www.kitware.com/Copyright.htm for details.
00009 
00010      This software is distributed WITHOUT ANY WARRANTY; without even
00011      the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR
00012      PURPOSE.  See the above copyright notice for more information.
00013 
00014 =========================================================================*/
00036 #ifndef __vtkWarpLens_h
00037 #define __vtkWarpLens_h
00038 
00039 #include "vtkPointSetToPointSetFilter.h"
00040 
00041 class VTK_GRAPHICS_EXPORT vtkWarpLens : public vtkPointSetToPointSetFilter
00042 {
00043 public:
00044   static vtkWarpLens *New();
00045   vtkTypeRevisionMacro(vtkWarpLens,vtkPointSetToPointSetFilter);
00046   void PrintSelf(ostream& os, vtkIndent indent);
00047 
00049 
00051   void SetKappa(double kappa);
00052   double GetKappa();
00054 
00056 
00058   void SetCenter(double centerX, double centerY);
00059   double *GetCenter();
00061 
00063 
00064   vtkSetVector2Macro(PrincipalPoint,double);
00065   vtkGetVectorMacro(PrincipalPoint,double,2);
00067 
00069 
00070   vtkSetMacro(K1,double);
00071   vtkGetMacro(K1,double);
00072   vtkSetMacro(K2,double);
00073   vtkGetMacro(K2,double);
00075 
00077 
00078   vtkSetMacro(P1,double);
00079   vtkGetMacro(P1,double);
00080   vtkSetMacro(P2,double);
00081   vtkGetMacro(P2,double);
00083 
00085 
00086   vtkSetMacro(FormatWidth,double);
00087   vtkGetMacro(FormatWidth,double);
00088   vtkSetMacro(FormatHeight,double);
00089   vtkGetMacro(FormatHeight,double);
00091 
00093 
00094   vtkSetMacro(ImageWidth,int);
00095   vtkGetMacro(ImageWidth,int);
00096   vtkSetMacro(ImageHeight,int);
00097   vtkGetMacro(ImageHeight,int);
00099 
00100 
00101 protected:
00102   vtkWarpLens();
00103   ~vtkWarpLens() {};
00104 
00105   void Execute();
00106 
00107   double PrincipalPoint[2];      // The calibrated principal point of camera/lens in mm
00108   double K1;                     // Symmetric radial distortion parameters
00109   double K2;
00110   double P1;                     // Decentering distortion parameters
00111   double P2;
00112   double FormatWidth;            // imager format width in mm
00113   double FormatHeight;           // imager format height in mm
00114   int ImageWidth;               // image width in pixels
00115   int ImageHeight;              // image height in pixels
00116 private:
00117   vtkWarpLens(const vtkWarpLens&);  // Not implemented.
00118   void operator=(const vtkWarpLens&);  // Not implemented.
00119 };
00120 
00121 #endif