Isis 3 Programmer Reference
CameraDetectorMap.h
Go to the documentation of this file.
1 
24 #ifndef CameraDetectorMap_h
25 #define CameraDetectorMap_h
26 
27 #include "Camera.h"
28 
29 namespace Isis {
65  public:
66  CameraDetectorMap(Camera *parent = 0);
67 
68  virtual ~CameraDetectorMap();
69 
70  virtual bool SetParent(const double sample,
71  const double line);
72  virtual bool SetParent(const double sample,
73  const double line,
74  const double deltaT);
75 
76  virtual bool SetDetector(const double sample,
77  const double line);
78 
79  double AdjustedStartingSample() const;
80 
81  double AdjustedStartingLine() const;
82 
83  double ParentSample() const;
84  double ParentLine() const;
85  double DetectorSample() const;
86  double DetectorLine() const;
87 
96  inline void SetStartingDetectorSample(const double sample) {
97  p_startingDetectorSample = sample;
98  Compute();
99  }
100 
101 
110  inline void SetStartingDetectorLine(const double line) {
111  p_startingDetectorLine = line;
112  Compute();
113  }
114 
115 
125  inline void SetDetectorSampleSumming(const double summing) {
126  p_detectorSampleSumming = summing;
127  Compute();
128  }
129 
130 
140  inline void SetDetectorLineSumming(const double summing) {
141  p_detectorLineSumming = summing;
142  Compute();
143  }
144 
145 
146  virtual double SampleScaleFactor() const;
147  virtual double LineScaleFactor() const;
148  virtual double LineRate() const;
149 
150  virtual double exposureDuration(const double sample,
151  const double line,
152  const int band) const;
153 
154  protected:
157  double p_parentSample;
158  double p_parentLine;
159  double p_detectorLine;
167  double p_ss;
168  double p_sl;
170  private:
171  void Compute();
172  };
173 };
174 #endif
virtual bool SetParent(const double sample, const double line)
Compute detector position from a parent image coordinate.
CameraDetectorMap(Camera *parent=0)
Default constructor assumes no summing and starting detector offsets.
double p_startingDetectorLine
Detector start coordinate line value.
void SetDetectorSampleSumming(const double summing)
Set sample summing mode.
virtual ~CameraDetectorMap()
Destructor.
virtual double exposureDuration(const double sample, const double line, const int band) const
This virtual method is for returning the exposure duration of a given pixel.
double DetectorSample() const
Return detector sample.
void Compute()
Compute new offsets whenenver summing or starting sample/lines change.
double p_startingDetectorSample
Detector start coordinate sample value.
void SetDetectorLineSumming(const double summing)
Set line summing mode.
virtual double SampleScaleFactor() const
Return scaling factor for computing sample resolution.
void SetStartingDetectorLine(const double line)
Set the starting detector line.
Convert between parent image coordinates and detector coordinates.
double p_parentSample
The parent sample calculated from the detector.
double p_detectorLineSumming
The scaling factor for computing line resolution.
double p_detectorLine
Detector coordinate line value.
double AdjustedStartingSample() const
Return the starting detector sample adjusted for summation.
double p_sl
Start line.
double ParentSample() const
Return parent sample.
double p_detectorSampleSumming
The scaling factor for computing sample resolution.
double p_ss
Start sample.
virtual double LineRate() const
Return the line collection rate (0 for framing cameras)
double ParentLine() const
Return parent line.
void SetStartingDetectorSample(const double sample)
Set the starting detector sample.
double AdjustedStartingLine() const
Return the starting detector line adjusted for summation.
Namespace for ISIS/Bullet specific routines.
Definition: Apollo.h:31
virtual bool SetDetector(const double sample, const double line)
Compute parent position from a detector coordinate.
virtual double LineScaleFactor() const
Return scaling factor for computing line resolution.
double DetectorLine() const
Return detector line.
Camera * p_camera
Pointer to the camera.
double p_detectorSample
Detector coordinate sample value.
double p_parentLine
The parent line calculated from the detector.