Isis 3.0 Programmer Reference
Back | Home
CameraFocalPlaneMap.h
Go to the documentation of this file.
1 #ifndef CameraFocalPlaneMap_h
2 #define CameraFocalPlaneMap_h
3 
26 template<class T> class QVector;
27 
28 namespace Isis {
29 
30  class Affine;
31  class Camera;
101  public:
102  CameraFocalPlaneMap(Camera *parent, const int naifIkCode);
103  CameraFocalPlaneMap(const int naifIkCode);
104  CameraFocalPlaneMap(Camera *parent, Affine &affine);
105  virtual ~CameraFocalPlaneMap();
106 
107  virtual bool SetDetector(const double sample, const double line);
108  virtual bool SetFocalPlane(const double dx, const double dy);
109 
110  double FocalPlaneX() const;
111  double FocalPlaneY() const;
112  double DetectorSample() const;
113  double DetectorLine() const;
114  double CenteredDetectorSample() const;
115  double CenteredDetectorLine() const;
116  void SetDetectorOrigin(const double sample, const double line);
117  double DetectorLineOrigin() const;
118  double DetectorSampleOrigin() const;
119  void SetDetectorOffset(const double sampleOffset,
120  const double lineOffset);
121  double DetectorLineOffset() const;
122  double DetectorSampleOffset() const;
123 
124  void SetTransL(const QVector<double> transL);
125  void SetTransS(const QVector<double> transS);
126  void SetTransX(const QVector<double> transX);
127  void SetTransY(const QVector<double> transY);
128 
129  const double *TransL() const;
130  const double *TransS() const;
131  const double *TransX() const;
132  const double *TransY() const;
133 
139  Sample = 1,
140  Line = 2
141  };
142 
143 // FocalPlaneXDependencyType FocalPlaneXDependency();
144  int FocalPlaneXDependency();
145  double SignMostSigX();
146  double SignMostSigY();
147 
148  protected:
149  void ComputeCentered();
150  void ComputeUncentered();
151 
152  Camera *p_camera;
153 
154  double p_detectorLineOrigin;
155  double p_detectorSampleOrigin;
156 
157  double p_focalPlaneX;
158  double p_focalPlaneY;
159  double p_detectorLine;
161  double p_centeredDetectorSample;
162  double p_centeredDetectorLine;
163 
164  double p_detectorLineOffset;
165  double p_detectorSampleOffset;
166 
167  double p_transx[3];
168  double p_transy[3];
169  double p_itranss[3];
170  double p_itransl[3];
171 
172  private:
173  void Init(Camera *parent, const int naifIkCode);
174  };
175 };
176 #endif
double p_detectorLine
line value of the detector
const double * TransY() const
Return the affine coefficients for converting detector (sample,line) to distorted Y...
void SetTransY(const QVector< double > transY)
Set the affine coefficients for converting detector (sample,line) to a distorted Y.
void SetDetectorOffset(const double sampleOffset, const double lineOffset)
Set the detector offset.
virtual bool SetFocalPlane(const double dx, const double dy)
Compute detector position (sample,line) from focal plane coordinates.
virtual ~CameraFocalPlaneMap()
Destructor.
const double * TransS() const
Return the affine coefficients for converting distorted (x,y) to a detector Sample.
void ComputeCentered()
Convenience method to center detector origin (use when inheriting)
void SetTransL(const QVector< double > transL)
Set the affine coefficients for converting destorted (x,y) to a detector Line.
double p_focalPlaneX
x value of focal plane coordinate
The x value of the focal plane maps to a sample.
double DetectorLineOffset() const
Return detector line offset.
void SetDetectorOrigin(const double sample, const double line)
Set the detector origin.
virtual bool SetDetector(const double sample, const double line)
Compute distorted focal plane coordinate from detector position (sampel,line)
double p_focalPlaneY
y value of focal plane coordinate
double DetectorLine() const
Return detector line.
double DetectorSample() const
Return detector sample.
double SignMostSigX()
Return the sign of the p_transx coefficient with the greatest magnitude.
double DetectorSampleOrigin() const
Return detector sample origin.
double SignMostSigY()
Return the sign of the p_transy coefficient with the greatest magnitude.
Convert between distorted focal plane and detector coordinates.
Affine basis function.
Definition: Affine.h:79
void SetTransX(const QVector< double > transX)
Set the affine coefficients for converting detector (sample,line) to a distorted X.
void SetTransS(const QVector< double > transS)
Set the affine coefficients for converting destorted (x,y) to a detector Sample.
void ComputeUncentered()
Convenience method to center detector origin (use when inheriting)
const double * TransL() const
Return the affine coefficients for converting distorted (x,y) to a detector Line. ...
void Init(Camera *parent, const int naifIkCode)
Initialize the focal plane map to its default state.
double CenteredDetectorLine() const
Return centered detector line.
CameraFocalPlaneMap(Camera *parent, const int naifIkCode)
Construct mapping between detectors and focal plane x/y.
FocalPlaneXDependencyType
Focal plane x dependency indicates whether the x value of the focal plane coordinate maps to a sample...
double DetectorSampleOffset() const
Return detector sample offset.
double CenteredDetectorSample() const
Return centered detector sample.
const double * TransX() const
Return the affine coefficients for converting detector (sample,line) to a distorted X...
double FocalPlaneY() const
Return distorted focal plane y.
double DetectorLineOrigin() const
Return detector line origin.
double FocalPlaneX() const
Return distorted focal plane x.
double p_detectorSample
sample value of the detector
The x value of the focal plane maps to a line.
int FocalPlaneXDependency()
Return the focal plane x dependency variable.

U.S. Department of the Interior | U.S. Geological Survey
ISIS | Privacy & Disclaimers | Astrogeology Research Program
To contact us, please post comments and questions on the ISIS Support Center
File Modified: 07/12/2023 23:15:35