Isis 3 Programmer Reference
CameraDetectorMap.h
1 
6 /* SPDX-License-Identifier: CC0-1.0 */
7 #ifndef CameraDetectorMap_h
8 #define CameraDetectorMap_h
9 
10 #include "Camera.h"
11 
12 namespace Isis {
48  public:
49  CameraDetectorMap(Camera *parent = 0);
50 
51  virtual ~CameraDetectorMap();
52 
53  virtual bool SetParent(const double sample,
54  const double line);
55  virtual bool SetParent(const double sample,
56  const double line,
57  const double deltaT);
58 
59  virtual bool SetDetector(const double sample,
60  const double line);
61 
62  double AdjustedStartingSample() const;
63 
64  double AdjustedStartingLine() const;
65 
66  double ParentSample() const;
67  double ParentLine() const;
68  double DetectorSample() const;
69  double DetectorLine() const;
70 
79  inline void SetStartingDetectorSample(const double sample) {
80  p_startingDetectorSample = sample;
81  Compute();
82  }
83 
84 
93  inline void SetStartingDetectorLine(const double line) {
95  Compute();
96  }
97 
98 
108  inline void SetDetectorSampleSumming(const double summing) {
109  p_detectorSampleSumming = summing;
110  Compute();
111  }
112 
113 
123  inline void SetDetectorLineSumming(const double summing) {
124  p_detectorLineSumming = summing;
125  Compute();
126  }
127 
128 
129  virtual double SampleScaleFactor() const;
130  virtual double LineScaleFactor() const;
131  virtual double LineRate() const;
132 
133  virtual double exposureDuration(const double sample,
134  const double line,
135  const int band) const;
136 
137  protected:
140  double p_parentSample;
141  double p_parentLine;
142  double p_detectorLine;
150  double p_ss;
151  double p_sl;
153  private:
154  void Compute();
155  };
156 };
157 #endif
Isis::CameraDetectorMap::p_parentLine
double p_parentLine
The parent line calculated from the detector.
Definition: CameraDetectorMap.h:141
Isis::CameraDetectorMap
Convert between parent image coordinates and detector coordinates.
Definition: CameraDetectorMap.h:47
Isis::CameraDetectorMap::DetectorSample
double DetectorSample() const
Return detector sample.
Definition: CameraDetectorMap.cpp:153
Isis::CameraDetectorMap::p_startingDetectorSample
double p_startingDetectorSample
Detector start coordinate sample value.
Definition: CameraDetectorMap.h:147
Isis::CameraDetectorMap::p_startingDetectorLine
double p_startingDetectorLine
Detector start coordinate line value.
Definition: CameraDetectorMap.h:148
Isis::CameraDetectorMap::SampleScaleFactor
virtual double SampleScaleFactor() const
Return scaling factor for computing sample resolution.
Definition: CameraDetectorMap.cpp:173
Isis::CameraDetectorMap::SetParent
virtual bool SetParent(const double sample, const double line)
Compute detector position from a parent image coordinate.
Definition: CameraDetectorMap.cpp:63
Isis::CameraDetectorMap::~CameraDetectorMap
virtual ~CameraDetectorMap()
Destructor.
Definition: CameraDetectorMap.cpp:29
Isis::CameraDetectorMap::SetDetectorSampleSumming
void SetDetectorSampleSumming(const double summing)
Set sample summing mode.
Definition: CameraDetectorMap.h:108
Isis::CameraDetectorMap::p_parentSample
double p_parentSample
The parent sample calculated from the detector.
Definition: CameraDetectorMap.h:140
Isis::Camera
Definition: Camera.h:236
Isis::CameraDetectorMap::Compute
void Compute()
Compute new offsets whenenver summing or starting sample/lines change.
Definition: CameraDetectorMap.cpp:99
Isis::CameraDetectorMap::p_detectorLineSumming
double p_detectorLineSumming
The scaling factor for computing line resolution.
Definition: CameraDetectorMap.h:146
Isis::CameraDetectorMap::SetDetectorLineSumming
void SetDetectorLineSumming(const double summing)
Set line summing mode.
Definition: CameraDetectorMap.h:123
Isis::CameraDetectorMap::SetStartingDetectorLine
void SetStartingDetectorLine(const double line)
Set the starting detector line.
Definition: CameraDetectorMap.h:93
Isis::CameraDetectorMap::exposureDuration
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.
Definition: CameraDetectorMap.cpp:212
Isis::CameraDetectorMap::p_detectorLine
double p_detectorLine
Detector coordinate line value.
Definition: CameraDetectorMap.h:142
Isis::CameraDetectorMap::p_detectorSampleSumming
double p_detectorSampleSumming
The scaling factor for computing sample resolution.
Definition: CameraDetectorMap.h:145
Isis::CameraDetectorMap::ParentSample
double ParentSample() const
Return parent sample.
Definition: CameraDetectorMap.cpp:133
Isis::CameraDetectorMap::SetDetector
virtual bool SetDetector(const double sample, const double line)
Compute parent position from a detector coordinate.
Definition: CameraDetectorMap.cpp:43
Isis::CameraDetectorMap::LineScaleFactor
virtual double LineScaleFactor() const
Return scaling factor for computing line resolution.
Definition: CameraDetectorMap.cpp:183
Isis::CameraDetectorMap::DetectorLine
double DetectorLine() const
Return detector line.
Definition: CameraDetectorMap.cpp:163
Isis::CameraDetectorMap::AdjustedStartingSample
double AdjustedStartingSample() const
Return the starting detector sample adjusted for summation.
Definition: CameraDetectorMap.cpp:113
Isis::CameraDetectorMap::p_sl
double p_sl
Start line.
Definition: CameraDetectorMap.h:151
Isis::CameraDetectorMap::SetStartingDetectorSample
void SetStartingDetectorSample(const double sample)
Set the starting detector sample.
Definition: CameraDetectorMap.h:79
Isis::CameraDetectorMap::p_camera
Camera * p_camera
Pointer to the camera.
Definition: CameraDetectorMap.h:138
Isis::CameraDetectorMap::AdjustedStartingLine
double AdjustedStartingLine() const
Return the starting detector line adjusted for summation.
Definition: CameraDetectorMap.cpp:123
Isis::CameraDetectorMap::p_detectorSample
double p_detectorSample
Detector coordinate sample value.
Definition: CameraDetectorMap.h:143
Isis::CameraDetectorMap::p_ss
double p_ss
Start sample.
Definition: CameraDetectorMap.h:150
Isis::CameraDetectorMap::LineRate
virtual double LineRate() const
Return the line collection rate (0 for framing cameras)
Definition: CameraDetectorMap.cpp:193
Isis::CameraDetectorMap::ParentLine
double ParentLine() const
Return parent line.
Definition: CameraDetectorMap.cpp:143
Isis::CameraDetectorMap::CameraDetectorMap
CameraDetectorMap(Camera *parent=0)
Default constructor assumes no summing and starting detector offsets.
Definition: CameraDetectorMap.cpp:15
Isis
This is free and unencumbered software released into the public domain.
Definition: Apollo.h:16