Isis 3 Developer Reference
Isis::CameraDetectorMap Class Reference

Convert between parent image coordinates and detector coordinates. More...

#include <CameraDetectorMap.h>

Inheritance diagram for Isis::CameraDetectorMap:
Inheritance graph
Collaboration diagram for Isis::CameraDetectorMap:
Collaboration graph

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

Camerap_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...
 

Detailed Description

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.

See also
Camera
Author
2005-02-03 Jeff Anderson

Constructor & Destructor Documentation

◆ CameraDetectorMap()

Isis::CameraDetectorMap::CameraDetectorMap ( Camera parent = 0)

Default constructor assumes no summing and starting detector offsets.

Parameters
parentCamera that will use this detector map

References p_camera, p_detectorLineSumming, p_detectorSampleSumming, p_startingDetectorLine, p_startingDetectorSample, and Isis::Camera::SetDetectorMap().

◆ ~CameraDetectorMap()

Isis::CameraDetectorMap::~CameraDetectorMap ( )
virtual

Destructor.

Member Function Documentation

◆ AdjustedStartingLine()

double Isis::CameraDetectorMap::AdjustedStartingLine ( ) const

Return the starting detector line adjusted for summation.

Returns
(double) The starting line

References p_sl.

◆ AdjustedStartingSample()

double Isis::CameraDetectorMap::AdjustedStartingSample ( ) const

Return the starting detector sample adjusted for summation.

Returns
(double) The starting sample

References p_ss.

◆ DetectorLine()

double Isis::CameraDetectorMap::DetectorLine ( ) const

Return detector line.

Returns
(double) The detector line

References p_detectorLine.

Referenced by Isis::Camera::SetImage().

◆ DetectorSample()

double Isis::CameraDetectorMap::DetectorSample ( ) const

Return detector sample.

Returns
(double) The detector sample

References p_detectorSample.

Referenced by Isis::Camera::SetImage().

◆ exposureDuration()

double Isis::CameraDetectorMap::exposureDuration ( const double  sample,
const double  line,
const int  band 
) const
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.

Parameters
sampleThe sample of the desired pixel.
lineThe line of the desired pixel.
bandThe band of the desired pixel.
Returns
double The exposure duration for the desired pixel in seconds.
Exceptions
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().

◆ LineRate()

double Isis::CameraDetectorMap::LineRate ( ) const
virtual

Return the line collection rate (0 for framing cameras)

Returns
(double) The line collection rate

Reimplemented in Isis::RadarPulseMap, Isis::ApolloPanoramicDetectorMap, and Isis::LineScanCameraDetectorMap.

◆ LineScaleFactor()

double Isis::CameraDetectorMap::LineScaleFactor ( ) const
virtual

◆ ParentLine()

double Isis::CameraDetectorMap::ParentLine ( ) const

Return parent line.

Returns
(double) The parent line

References p_parentLine.

Referenced by Isis::Camera::SetRightAscensionDeclination().

◆ ParentSample()

double Isis::CameraDetectorMap::ParentSample ( ) const

Return parent sample.

Returns
(double) The parent sample

References p_parentSample.

Referenced by Isis::Camera::SetRightAscensionDeclination().

◆ SampleScaleFactor()

double Isis::CameraDetectorMap::SampleScaleFactor ( ) const
virtual

Return scaling factor for computing sample resolution.

Returns
(double) The scaling factor for sample resolution

References p_detectorSampleSumming.

Referenced by Isis::Camera::ObliqueSampleResolution(), and Isis::Camera::SampleResolution().

◆ SetDetector()

bool Isis::CameraDetectorMap::SetDetector ( const double  sample,
const double  line 
)
virtual

◆ SetDetectorLineSumming()

◆ SetDetectorSampleSumming()

void Isis::CameraDetectorMap::SetDetectorSampleSumming ( const double  summing)
inline

◆ SetParent() [1/2]

bool Isis::CameraDetectorMap::SetParent ( const double  sample,
const double  line 
)
virtual

Compute detector position from a parent image coordinate.

This method will compute the detector position from the parent line/sample coordinate

Parameters
sampleSample number in the parent image
lineLine number in the parent image
Returns
conversion successful

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().

◆ SetParent() [2/2]

bool Isis::CameraDetectorMap::SetParent ( const double  sample,
const double  line,
const double  deltaT 
)
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.

Parameters
sampleSample number in the parent image
lineLine number in the parent image
deltaToption time offset from center of exposure in seconds
Returns
conversion successful

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().

◆ SetStartingDetectorLine()

void Isis::CameraDetectorMap::SetStartingDetectorLine ( const double  line)
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.

Parameters
lineStarting detector line

References p_startingDetectorLine.

Referenced by Isis::HayabusaAmicaCamera::HayabusaAmicaCamera(), Isis::HayabusaNirsCamera::HayabusaNirsCamera(), Isis::JunoCamera::JunoCamera(), Isis::MdisCamera::MdisCamera(), and Isis::RosettaOsirisCamera::RosettaOsirisCamera().

◆ SetStartingDetectorSample()

Member Data Documentation

◆ p_camera

◆ p_detectorLine

◆ p_detectorLineSumming

double Isis::CameraDetectorMap::p_detectorLineSumming
protected

The scaling factor for computing line resolution.

Referenced by CameraDetectorMap(), LineScaleFactor(), SetDetector(), SetDetectorLineSumming(), and SetParent().

◆ p_detectorSample

double Isis::CameraDetectorMap::p_detectorSample
protected

Detector coordinate sample value.

Referenced by DetectorSample(), SetDetector(), Isis::PushFrameCameraDetectorMap::SetDetector(), and SetParent().

◆ p_detectorSampleSumming

double Isis::CameraDetectorMap::p_detectorSampleSumming
protected

The scaling factor for computing sample resolution.

Referenced by CameraDetectorMap(), SampleScaleFactor(), SetDetector(), SetDetectorSampleSumming(), and SetParent().

◆ p_parentLine

◆ p_parentSample

double Isis::CameraDetectorMap::p_parentSample
protected

The parent sample calculated from the detector.

Referenced by ParentSample(), SetDetector(), SetParent(), and Isis::PushFrameCameraDetectorMap::SetParent().

◆ p_sl

double Isis::CameraDetectorMap::p_sl
protected

Start line.

Referenced by AdjustedStartingLine(), SetDetector(), and SetParent().

◆ p_ss

double Isis::CameraDetectorMap::p_ss
protected

Start sample.

Referenced by AdjustedStartingSample(), SetDetector(), and SetParent().

◆ p_startingDetectorLine

double Isis::CameraDetectorMap::p_startingDetectorLine
protected

Detector start coordinate line value.

Referenced by CameraDetectorMap(), and SetStartingDetectorLine().

◆ p_startingDetectorSample

double Isis::CameraDetectorMap::p_startingDetectorSample
protected

Detector start coordinate sample value.

Referenced by CameraDetectorMap(), and SetStartingDetectorSample().


The documentation for this class was generated from the following files: