![]()  | 
  
    Isis Developer Reference
    
   | 
 
Convert between parent image coordinates and detector coordinates. More...
#include <CameraDetectorMap.h>


Public Member Functions | |
| CameraDetectorMap (Camera *parent=0) | |
| Default constructor assumes no summing and starting detector offsets.  More... | |
| virtual | ~CameraDetectorMap () | 
| Destructor.  More... | |
| virtual bool | SetParent (const double sample, const double line) | 
| Compute detector position from a parent image coordinate.  More... | |
| virtual bool | SetParent (const double sample, const double line, const double deltaT) | 
| Compute detector position from a parent image coordinate.  More... | |
| virtual bool | SetDetector (const double sample, const double line) | 
| Compute parent position from a detector coordinate.  More... | |
| double | AdjustedStartingSample () const | 
| Return the starting detector sample adjusted for summation.  More... | |
| double | AdjustedStartingLine () const | 
| Return the starting detector line adjusted for summation.  More... | |
| double | ParentSample () const | 
| Return parent sample.  More... | |
| double | ParentLine () const | 
| Return parent line.  More... | |
| double | DetectorSample () const | 
| Return detector sample.  More... | |
| double | DetectorLine () const | 
| Return detector line.  More... | |
| void | SetStartingDetectorSample (const double sample) | 
| Set the starting detector sample.  More... | |
| void | SetStartingDetectorLine (const double line) | 
| Set the starting detector line.  More... | |
| void | SetDetectorSampleSumming (const double summing) | 
| Set sample summing mode.  More... | |
| void | SetDetectorLineSumming (const double summing) | 
| Set line summing mode.  More... | |
| virtual double | SampleScaleFactor () const | 
| Return scaling factor for computing sample resolution.  More... | |
| virtual double | LineScaleFactor () const | 
| Return scaling factor for computing line resolution.  More... | |
| virtual double | LineRate () const | 
| Return the line collection rate (0 for framing cameras)  More... | |
| 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.  More... | |
Protected Attributes | |
| Camera * | p_camera | 
| Pointer to the camera.  More... | |
| double | p_parentSample | 
| The parent sample calculated from the detector.  More... | |
| double | p_parentLine | 
| The parent line calculated from the detector.  More... | |
| double | p_detectorLine | 
| Detector coordinate line value.  More... | |
| double | p_detectorSample | 
| Detector coordinate sample value.  More... | |
| double | p_detectorSampleSumming | 
| The scaling factor for computing sample resolution.  More... | |
| double | p_detectorLineSumming | 
| The scaling factor for computing line resolution.  More... | |
| double | p_startingDetectorSample | 
| Detector start coordinate sample value.  More... | |
| double | p_startingDetectorLine | 
| Detector start coordinate line value.  More... | |
| double | p_ss | 
| Start sample.  More... | |
| double | p_sl | 
| Start line.  More... | |
Convert between parent image coordinates and detector coordinates.
This base class is used to convert between parent detector coordinates (sample/line) and detector coordinates for the camera.
| Isis::CameraDetectorMap::CameraDetectorMap | ( | Camera * | parent = 0 | ) | 
Default constructor assumes no summing and starting detector offsets.
| parent | Camera that will use this detector map | 
References p_camera, p_detectorLineSumming, p_detectorSampleSumming, p_startingDetectorLine, p_startingDetectorSample, and Isis::Camera::SetDetectorMap().
      
  | 
  virtual | 
Destructor.
| double Isis::CameraDetectorMap::AdjustedStartingLine | ( | ) | const | 
Return the starting detector line adjusted for summation.
References p_sl.
| double Isis::CameraDetectorMap::AdjustedStartingSample | ( | ) | const | 
Return the starting detector sample adjusted for summation.
References p_ss.
| double Isis::CameraDetectorMap::DetectorLine | ( | ) | const | 
Return detector line.
References p_detectorLine.
Referenced by Isis::Camera::SetImage().
| double Isis::CameraDetectorMap::DetectorSample | ( | ) | const | 
Return detector sample.
References p_detectorSample.
Referenced by Isis::Camera::SetImage().
      
  | 
  virtual | 
This virtual method is for returning the exposure duration of a given pixel.
For framing cameras, exposure duration is not available so it throws an error.
| sample | The sample of the desired pixel. | 
| line | The line of the desired pixel. | 
| band | The band of the desired pixel. | 
| IException::Programmer | "Exposure duration is only available for LineScan, VariableLineScan, and PushFrame Cameras." | 
Reimplemented in Isis::LineScanCameraDetectorMap, Isis::PushFrameCameraDetectorMap, Isis::VariableLineScanCameraDetectorMap, and Isis::NirsDetectorMap.
References _FILEINFO_, and Isis::IException::Programmer.
Referenced by Isis::Camera::exposureDuration().
      
  | 
  virtual | 
Return the line collection rate (0 for framing cameras)
Reimplemented in Isis::ApolloPanoramicDetectorMap, Isis::LineScanCameraDetectorMap, and Isis::RadarPulseMap.
      
  | 
  virtual | 
Return scaling factor for computing line resolution.
References p_detectorLineSumming.
Referenced by Isis::Camera::LineResolution(), Isis::Camera::ObliqueLineResolution(), Isis::ThemisIrCamera::SetBand(), Isis::PushFrameCameraDetectorMap::SetDetector(), Isis::PushFrameCameraDetectorMap::SetParent(), and Isis::PushFrameCameraDetectorMap::TotalFramelets().
| double Isis::CameraDetectorMap::ParentLine | ( | ) | const | 
Return parent line.
References p_parentLine.
Referenced by Isis::Camera::SetRightAscensionDeclination().
| double Isis::CameraDetectorMap::ParentSample | ( | ) | const | 
Return parent sample.
References p_parentSample.
Referenced by Isis::Camera::SetRightAscensionDeclination().
      
  | 
  virtual | 
Return scaling factor for computing sample resolution.
References p_detectorSampleSumming.
Referenced by Isis::Camera::ObliqueSampleResolution(), and Isis::Camera::SampleResolution().
      
  | 
  virtual | 
Compute parent position from a detector coordinate.
This method will compute a parent sample/line given a detector coordinate
| sample | Sample number in the detector | 
| line | Line number in the detector | 
Reimplemented in Isis::ApolloPanoramicDetectorMap, Isis::LineScanCameraDetectorMap, Isis::PushFrameCameraDetectorMap, Isis::RadarPulseMap, Isis::RollingShutterCameraDetectorMap, Isis::VariableLineScanCameraDetectorMap, and Isis::MocWideAngleDetectorMap.
References p_detectorLine, p_detectorLineSumming, p_detectorSample, p_detectorSampleSumming, p_parentLine, p_parentSample, p_sl, and p_ss.
Referenced by Isis::LineScanCameraDetectorMap::SetDetector(), Isis::PushFrameCameraDetectorMap::SetDetector(), Isis::RadarPulseMap::SetDetector(), Isis::VariableLineScanCameraDetectorMap::SetDetector(), and Isis::Camera::SetRightAscensionDeclination().
      
  | 
  inline | 
Set line summing mode.
Use this method to specify if detector lines are summed/averaged. That is, one image lines represents the average of N detectors. If not set the default is 1.
| summing | Line summing mode | 
References p_detectorLineSumming.
Referenced by Isis::CrismCamera::CrismCamera(), Isis::DawnFcCamera::DawnFcCamera(), Isis::HayabusaAmicaCamera::HayabusaAmicaCamera(), Isis::HiriseCamera::HiriseCamera(), Isis::Hyb2OncCamera::Hyb2OncCamera(), Isis::IssNACamera::IssNACamera(), Isis::IssWACamera::IssWACamera(), Isis::JunoCamera::JunoCamera(), Isis::LroWideAngleCamera::LroWideAngleCamera(), Isis::MarciCamera::MarciCamera(), Isis::MdisCamera::MdisCamera(), Isis::MexHrscSrcCamera::MexHrscSrcCamera(), Isis::MocNarrowAngleCamera::MocNarrowAngleCamera(), Isis::MocWideAngleCamera::MocWideAngleCamera(), Isis::NewHorizonsLorriCamera::NewHorizonsLorriCamera(), Isis::NewHorizonsMvicFrameCamera::NewHorizonsMvicFrameCamera(), Isis::RosettaOsirisCamera::RosettaOsirisCamera(), Isis::SsiCamera::SsiCamera(), Isis::TgoCassisCamera::TgoCassisCamera(), Isis::ThemisIrCamera::ThemisIrCamera(), and Isis::ThemisVisCamera::ThemisVisCamera().
      
  | 
  inline | 
Set sample summing mode.
Use this method to specify if detector samples are summed/averaged. That is, one image sample represents the average of N detectors. If not set the default is 1.
| summing | Sample summing mode | 
References p_detectorSampleSumming.
Referenced by Isis::ApolloPanoramicCamera::ApolloPanoramicCamera(), Isis::Chandrayaan1M3Camera::Chandrayaan1M3Camera(), Isis::CrismCamera::CrismCamera(), Isis::CTXCamera::CTXCamera(), Isis::DawnFcCamera::DawnFcCamera(), Isis::DawnVirCamera::DawnVirCamera(), Isis::HayabusaAmicaCamera::HayabusaAmicaCamera(), Isis::HiriseCamera::HiriseCamera(), Isis::HrscCamera::HrscCamera(), Isis::Hyb2OncCamera::Hyb2OncCamera(), Isis::IssNACamera::IssNACamera(), Isis::IssWACamera::IssWACamera(), Isis::JunoCamera::JunoCamera(), Isis::KaguyaMiCamera::KaguyaMiCamera(), Isis::LroNarrowAngleCamera::LroNarrowAngleCamera(), Isis::LroWideAngleCamera::LroWideAngleCamera(), Isis::MarciCamera::MarciCamera(), Isis::MdisCamera::MdisCamera(), Isis::MexHrscSrcCamera::MexHrscSrcCamera(), Isis::MocNarrowAngleCamera::MocNarrowAngleCamera(), Isis::MocWideAngleCamera::MocWideAngleCamera(), Isis::NewHorizonsLorriCamera::NewHorizonsLorriCamera(), Isis::NewHorizonsMvicFrameCamera::NewHorizonsMvicFrameCamera(), Isis::RosettaOsirisCamera::RosettaOsirisCamera(), Isis::RosettaVirtisCamera::RosettaVirtisCamera(), Isis::SsiCamera::SsiCamera(), Isis::TgoCassisCamera::TgoCassisCamera(), Isis::ThemisIrCamera::ThemisIrCamera(), and Isis::ThemisVisCamera::ThemisVisCamera().
      
  | 
  virtual | 
Compute detector position from a parent image coordinate.
This method will compute the detector position from the parent line/sample coordinate
| sample | Sample number in the parent image | 
| line | Line number in the parent image | 
Reimplemented in Isis::ApolloPanoramicDetectorMap, Isis::LineScanCameraDetectorMap, Isis::PushFrameCameraDetectorMap, Isis::RadarPulseMap, Isis::RollingShutterCameraDetectorMap, Isis::VariableLineScanCameraDetectorMap, and Isis::MocWideAngleDetectorMap.
References SetParent().
Referenced by Isis::LineScanCameraGroundMap::FindFocalPlane(), Isis::LineScanCameraGroundMap::FindSpacecraftDistance(), Isis::Camera::SetImage(), SetParent(), Isis::RadarPulseMap::SetParent(), Isis::LineScanCameraDetectorMap::SetParent(), Isis::PushFrameCameraDetectorMap::SetParent(), and Isis::VariableLineScanCameraDetectorMap::SetParent().
      
  | 
  virtual | 
Compute detector position from a parent image coordinate.
This method will compute the detector position from the parent line/sample coordinate and an offset from the currently set time in seconds. If the time has not already been set, the input offset is not applied. 
| sample | Sample number in the parent image | 
| line | Line number in the parent image | 
| deltaT | option time offset from center of exposure in seconds | 
Reimplemented in Isis::LineScanCameraDetectorMap, Isis::PushFrameCameraDetectorMap, Isis::RollingShutterCameraDetectorMap, and Isis::VariableLineScanCameraDetectorMap.
References Isis::iTime::Et(), Isis::Spice::isTimeSet(), p_camera, p_detectorLine, p_detectorLineSumming, p_detectorSample, p_detectorSampleSumming, p_parentLine, p_parentSample, p_sl, p_ss, Isis::Sensor::setTime(), and Isis::Spice::time().
      
  | 
  inline | 
Set the starting detector line.
Use this method to specify the starting detector that represents the first image line in the cube. If not set the default is 1.
| line | Starting detector line | 
References p_startingDetectorLine.
Referenced by Isis::HayabusaAmicaCamera::HayabusaAmicaCamera(), Isis::HayabusaNirsCamera::HayabusaNirsCamera(), Isis::JunoCamera::JunoCamera(), Isis::MdisCamera::MdisCamera(), and Isis::RosettaOsirisCamera::RosettaOsirisCamera().
      
  | 
  inline | 
Set the starting detector sample.
Use this method to specify the starting detector that represents the first image sample in the cube. If not set the default is 1.
| sample | Starting detector sample | 
References p_startingDetectorSample.
Referenced by Isis::ApolloPanoramicCamera::ApolloPanoramicCamera(), Isis::CTXCamera::CTXCamera(), Isis::HayabusaAmicaCamera::HayabusaAmicaCamera(), Isis::HayabusaNirsCamera::HayabusaNirsCamera(), Isis::HiriseCamera::HiriseCamera(), Isis::KaguyaMiCamera::KaguyaMiCamera(), Isis::KaguyaTcCamera::KaguyaTcCamera(), Isis::LroNarrowAngleCamera::LroNarrowAngleCamera(), Isis::LroWideAngleCamera::LroWideAngleCamera(), Isis::MdisCamera::MdisCamera(), Isis::MocNarrowAngleCamera::MocNarrowAngleCamera(), Isis::MocWideAngleCamera::MocWideAngleCamera(), and Isis::RosettaOsirisCamera::RosettaOsirisCamera().
      
  | 
  protected | 
Pointer to the camera.
Referenced by CameraDetectorMap(), Isis::ApolloPanoramicDetectorMap::SetDetector(), Isis::LineScanCameraDetectorMap::SetDetector(), Isis::RadarPulseMap::SetDetector(), Isis::VariableLineScanCameraDetectorMap::SetDetector(), Isis::PushFrameCameraDetectorMap::SetFramelet(), Isis::ApolloPanoramicDetectorMap::SetParent(), Isis::RadarPulseMap::SetParent(), Isis::MocWideAngleDetectorMap::SetParent(), SetParent(), Isis::LineScanCameraDetectorMap::SetParent(), Isis::RollingShutterCameraDetectorMap::SetParent(), Isis::VariableLineScanCameraDetectorMap::SetParent(), and Isis::PushFrameCameraDetectorMap::TotalFramelets().
      
  | 
  protected | 
Detector coordinate line value.
Referenced by DetectorLine(), Isis::ApolloPanoramicDetectorMap::SetDetector(), SetDetector(), Isis::PushFrameCameraDetectorMap::SetDetector(), Isis::RollingShutterCameraDetectorMap::SetDetector(), Isis::ApolloPanoramicDetectorMap::SetParent(), Isis::RadarPulseMap::SetParent(), SetParent(), Isis::LineScanCameraDetectorMap::SetParent(), Isis::PushFrameCameraDetectorMap::SetParent(), Isis::RollingShutterCameraDetectorMap::SetParent(), and Isis::VariableLineScanCameraDetectorMap::SetParent().
      
  | 
  protected | 
The scaling factor for computing line resolution.
Referenced by CameraDetectorMap(), LineScaleFactor(), SetDetector(), Isis::RollingShutterCameraDetectorMap::SetDetector(), SetDetectorLineSumming(), SetParent(), and Isis::RollingShutterCameraDetectorMap::SetParent().
      
  | 
  protected | 
Detector coordinate sample value.
Referenced by DetectorSample(), Isis::ApolloPanoramicDetectorMap::SetDetector(), SetDetector(), Isis::PushFrameCameraDetectorMap::SetDetector(), Isis::RollingShutterCameraDetectorMap::SetDetector(), Isis::ApolloPanoramicDetectorMap::SetParent(), Isis::MocWideAngleDetectorMap::SetParent(), SetParent(), and Isis::RollingShutterCameraDetectorMap::SetParent().
      
  | 
  protected | 
The scaling factor for computing sample resolution.
Referenced by CameraDetectorMap(), SampleScaleFactor(), SetDetector(), Isis::RollingShutterCameraDetectorMap::SetDetector(), SetDetectorSampleSumming(), SetParent(), and Isis::RollingShutterCameraDetectorMap::SetParent().
      
  | 
  protected | 
The parent line calculated from the detector.
Referenced by ParentLine(), Isis::ApolloPanoramicDetectorMap::SetDetector(), SetDetector(), Isis::LineScanCameraDetectorMap::SetDetector(), Isis::PushFrameCameraDetectorMap::SetDetector(), Isis::RadarPulseMap::SetDetector(), Isis::RollingShutterCameraDetectorMap::SetDetector(), Isis::VariableLineScanCameraDetectorMap::SetDetector(), Isis::ApolloPanoramicDetectorMap::SetParent(), SetParent(), Isis::PushFrameCameraDetectorMap::SetParent(), and Isis::RollingShutterCameraDetectorMap::SetParent().
      
  | 
  protected | 
The parent sample calculated from the detector.
Referenced by ParentSample(), Isis::ApolloPanoramicDetectorMap::SetDetector(), SetDetector(), Isis::RollingShutterCameraDetectorMap::SetDetector(), Isis::MocWideAngleDetectorMap::SetDetector(), Isis::ApolloPanoramicDetectorMap::SetParent(), SetParent(), Isis::PushFrameCameraDetectorMap::SetParent(), and Isis::RollingShutterCameraDetectorMap::SetParent().
      
  | 
  protected | 
Start line.
Referenced by AdjustedStartingLine(), SetDetector(), Isis::RollingShutterCameraDetectorMap::SetDetector(), SetParent(), and Isis::RollingShutterCameraDetectorMap::SetParent().
      
  | 
  protected | 
Start sample.
Referenced by AdjustedStartingSample(), SetDetector(), Isis::RollingShutterCameraDetectorMap::SetDetector(), SetParent(), and Isis::RollingShutterCameraDetectorMap::SetParent().
      
  | 
  protected | 
Detector start coordinate line value.
Referenced by CameraDetectorMap(), and SetStartingDetectorLine().
      
  | 
  protected | 
Detector start coordinate sample value.
Referenced by CameraDetectorMap(), and SetStartingDetectorSample().