Isis 3 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::PushFrameCameraDetectorMap, Isis::VariableLineScanCameraDetectorMap, Isis::LineScanCameraDetectorMap, 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::RadarPulseMap, Isis::ApolloPanoramicDetectorMap, and Isis::LineScanCameraDetectorMap.
|
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::RadarPulseMap, Isis::VariableLineScanCameraDetectorMap, Isis::LineScanCameraDetectorMap, Isis::PushFrameCameraDetectorMap, Isis::ApolloPanoramicDetectorMap, 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::VariableLineScanCameraDetectorMap::SetDetector(), Isis::RadarPulseMap::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::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::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::RadarPulseMap, Isis::VariableLineScanCameraDetectorMap, Isis::ApolloPanoramicDetectorMap, Isis::LineScanCameraDetectorMap, Isis::PushFrameCameraDetectorMap, and Isis::MocWideAngleDetectorMap.
Referenced by Isis::LineScanCameraGroundMap::FindFocalPlane(), Isis::LineScanCameraGroundMap::FindSpacecraftDistance(), Isis::Camera::SetImage(), Isis::PushFrameCameraDetectorMap::SetParent(), Isis::LineScanCameraDetectorMap::SetParent(), Isis::VariableLineScanCameraDetectorMap::SetParent(), and Isis::RadarPulseMap::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::VariableLineScanCameraDetectorMap, Isis::LineScanCameraDetectorMap, and Isis::PushFrameCameraDetectorMap.
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::LineScanCameraDetectorMap::SetDetector(), Isis::VariableLineScanCameraDetectorMap::SetDetector(), Isis::RadarPulseMap::SetDetector(), Isis::PushFrameCameraDetectorMap::SetFramelet(), SetParent(), Isis::LineScanCameraDetectorMap::SetParent(), Isis::VariableLineScanCameraDetectorMap::SetParent(), Isis::RadarPulseMap::SetParent(), and Isis::PushFrameCameraDetectorMap::TotalFramelets().
|
protected |
Detector coordinate line value.
Referenced by DetectorLine(), SetDetector(), Isis::PushFrameCameraDetectorMap::SetDetector(), SetParent(), Isis::LineScanCameraDetectorMap::SetParent(), Isis::PushFrameCameraDetectorMap::SetParent(), Isis::VariableLineScanCameraDetectorMap::SetParent(), and Isis::RadarPulseMap::SetParent().
|
protected |
The scaling factor for computing line resolution.
Referenced by CameraDetectorMap(), LineScaleFactor(), SetDetector(), SetDetectorLineSumming(), and SetParent().
|
protected |
Detector coordinate sample value.
Referenced by DetectorSample(), SetDetector(), Isis::PushFrameCameraDetectorMap::SetDetector(), and SetParent().
|
protected |
The scaling factor for computing sample resolution.
Referenced by CameraDetectorMap(), SampleScaleFactor(), SetDetector(), SetDetectorSampleSumming(), and SetParent().
|
protected |
The parent line calculated from the detector.
Referenced by ParentLine(), SetDetector(), Isis::PushFrameCameraDetectorMap::SetDetector(), Isis::LineScanCameraDetectorMap::SetDetector(), Isis::VariableLineScanCameraDetectorMap::SetDetector(), Isis::RadarPulseMap::SetDetector(), SetParent(), and Isis::PushFrameCameraDetectorMap::SetParent().
|
protected |
The parent sample calculated from the detector.
Referenced by ParentSample(), SetDetector(), SetParent(), and Isis::PushFrameCameraDetectorMap::SetParent().
|
protected |
Start line.
Referenced by AdjustedStartingLine(), SetDetector(), and SetParent().
|
protected |
Start sample.
Referenced by AdjustedStartingSample(), SetDetector(), and SetParent().
|
protected |
Detector start coordinate line value.
Referenced by CameraDetectorMap(), and SetStartingDetectorLine().
|
protected |
Detector start coordinate sample value.
Referenced by CameraDetectorMap(), and SetStartingDetectorSample().