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. | |
virtual | ~CameraDetectorMap () |
Destructor. | |
virtual bool | SetParent (const double sample, const double line) |
Compute detector position from a parent image coordinate. | |
virtual bool | SetParent (const double sample, const double line, const double deltaT) |
Compute detector position from a parent image coordinate. | |
virtual bool | SetDetector (const double sample, const double line) |
Compute parent position from a detector coordinate. | |
double | AdjustedStartingSample () const |
Return the starting detector sample adjusted for summation. | |
double | AdjustedStartingLine () const |
Return the starting detector line adjusted for summation. | |
double | ParentSample () const |
Return parent sample. | |
double | ParentLine () const |
Return parent line. | |
double | DetectorSample () const |
Return detector sample. | |
double | DetectorLine () const |
Return detector line. | |
void | SetStartingDetectorSample (const double sample) |
Set the starting detector sample. | |
void | SetStartingDetectorLine (const double line) |
Set the starting detector line. | |
void | SetDetectorSampleSumming (const double summing) |
Set sample summing mode. | |
void | SetDetectorLineSumming (const double summing) |
Set line summing mode. | |
virtual double | SampleScaleFactor () const |
Return scaling factor for computing sample resolution. | |
virtual double | LineScaleFactor () const |
Return scaling factor for computing line resolution. | |
virtual double | LineRate () const |
Return the line collection rate (0 for framing cameras) | |
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. | |
Protected Attributes | |
Camera * | p_camera |
Pointer to the camera. | |
double | p_parentSample |
The parent sample calculated from the detector. | |
double | p_parentLine |
The parent line calculated from the detector. | |
double | p_detectorLine |
Detector coordinate line value. | |
double | p_detectorSample |
Detector coordinate sample value. | |
double | p_detectorSampleSumming |
The scaling factor for computing sample resolution. | |
double | p_detectorLineSumming |
The scaling factor for computing line resolution. | |
double | p_startingDetectorSample |
Detector start coordinate sample value. | |
double | p_startingDetectorLine |
Detector start coordinate line value. | |
double | p_ss |
Start sample. | |
double | p_sl |
Start line. | |
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(), and Isis::Camera::SetImage().
double Isis::CameraDetectorMap::DetectorSample | ( | ) | const |
Return detector sample.
References p_detectorSample.
Referenced by Isis::Camera::SetImage(), and 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(), and Isis::Camera::exposureDuration().
|
virtual |
Return the line collection rate (0 for framing cameras)
Reimplemented in Isis::ApolloPanoramicDetectorMap, Isis::LineScanCameraDetectorMap, and Isis::RadarPulseMap.
Referenced by Isis::LineScanCameraSkyMap::SetSky().
|
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().
|
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::CrismCamera::CrismCamera(), Isis::DawnVirCamera::DawnVirCamera(), Isis::HrscCamera::HrscCamera(), and Isis::RosettaVirtisCamera::RosettaVirtisCamera().
|
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(), 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::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.
|
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().
|
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().