USGS

Isis 3.0 Developer's Reference (API)

Home

Isis::VariableLineScanCameraDetectorMap Class Reference

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

#include <VariableLineScanCameraDetectorMap.h>

Inherits Isis::LineScanCameraDetectorMap.

List of all members.

Public Member Functions

 VariableLineScanCameraDetectorMap (Camera *parent, std::vector< LineRateChange > &lineRates)
 Constructs a VariableLineScanCameraDetectorMap.
virtual ~VariableLineScanCameraDetectorMap ()
 Destructor.
virtual bool SetParent (const double sample, const double line)
 Compute detector position from a parent image coordinate.
virtual bool SetDetector (const double sample, const double line)
 Compute parent position from a detector coordinate.
void SetStartTime (const double etStart)
 Reset the starting ephemeris time.
void SetLineRate (const double lineRate)
 Reset the line rate.
double LineRate () const
 Return the time in seconds between scan lines.
double StartTime () const
 Return the starting time at the top edge of the first line in the parent image.
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.

Protected Attributes

Camerap_camera
double p_parentSample
double p_parentLine
double p_detectorLine
double p_detectorSample
double p_detectorSampleSumming
double p_detectorLineSumming
double p_startingDetectorSample
double p_startingDetectorLine
double p_ss
double p_sl

Detailed Description

Convert between parent image coordinates and detector coordinates.

This class is used to convert between parent dector coordinates (sample/line) and detector coordinates for a line scan camera.

Author:
2008-08-08 Steven Lambright
See also:
Camera

Constructor & Destructor Documentation

Isis::VariableLineScanCameraDetectorMap::VariableLineScanCameraDetectorMap ( Camera parent,
std::vector< LineRateChange > &  lineRates 
)

Constructs a VariableLineScanCameraDetectorMap.

Parameters:
parent The camera
p_lineRates This should be a vector with an entry for every scan rate change in it. The pair consists of the line number and ET of the changed time; the first entry should be line 1 and the last entry should be one line past the end of the image. See HrscCamera for an example.
virtual Isis::VariableLineScanCameraDetectorMap::~VariableLineScanCameraDetectorMap (  )  [inline, virtual]

Destructor.


Member Function Documentation

double Isis::CameraDetectorMap::AdjustedStartingLine (  )  const [inherited]

Return the starting detector line adjusted for summation.

References Isis::CameraDetectorMap::p_sl.

double Isis::CameraDetectorMap::AdjustedStartingSample (  )  const [inherited]

Return the starting detector sample adjusted for summation.

References Isis::CameraDetectorMap::p_ss.

double Isis::CameraDetectorMap::DetectorLine (  )  const [inline, inherited]

Return detector line.

References Isis::CameraDetectorMap::p_detectorLine.

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

double Isis::CameraDetectorMap::DetectorSample (  )  const [inline, inherited]

Return detector sample.

References Isis::CameraDetectorMap::p_detectorSample.

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

double Isis::LineScanCameraDetectorMap::LineRate (  )  const [inline, virtual, inherited]

Return the time in seconds between scan lines.

Reimplemented from Isis::CameraDetectorMap.

Referenced by Isis::LineScanCameraSkyMap::SetSky().

virtual double Isis::CameraDetectorMap::LineScaleFactor (  )  const [inline, virtual, inherited]
double Isis::CameraDetectorMap::ParentLine (  )  const [inline, inherited]
double Isis::CameraDetectorMap::ParentSample (  )  const [inline, inherited]
virtual double Isis::CameraDetectorMap::SampleScaleFactor (  )  const [inline, virtual, inherited]

Return scaling factor for computing sample resolution.

References Isis::CameraDetectorMap::p_detectorSampleSumming.

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

bool Isis::VariableLineScanCameraDetectorMap::SetDetector ( const double  sample,
const double  line 
) [virtual]

Compute parent position from a detector coordinate.

This method will compute a parent sample given a detector coordinate. The parent line will be computed using the the time in the parent camera

Parameters:
sample Sample number in the detector
line Line number in the detector
Returns:
conversion successful

Reimplemented from Isis::LineScanCameraDetectorMap.

References Isis::iTime::Et(), Isis::CameraDetectorMap::p_camera, Isis::CameraDetectorMap::p_parentLine, Isis::CameraDetectorMap::SetDetector(), Isis::LineScanCameraDetectorMap::SetLineRate(), and Isis::Spice::time().

void Isis::CameraDetectorMap::SetDetectorLineSumming ( const double  summing  )  [inline, inherited]
void Isis::CameraDetectorMap::SetDetectorSampleSumming ( const double  summing  )  [inline, inherited]
void Isis::LineScanCameraDetectorMap::SetLineRate ( const double  lineRate  )  [inline, inherited]

Reset the line rate.

Use this method to reset the time between lines. Usually this will not need to be done unless the rate changes between bands.

Parameters:
lineRate the time in seconds between lines

Referenced by SetDetector(), and SetParent().

bool Isis::VariableLineScanCameraDetectorMap::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. The parent line will be used to set the appropriate time in the parent camera.

Parameters:
sample Sample number in the parent image
line Line number in the parent image
Returns:
conversion successful

Reimplemented from Isis::LineScanCameraDetectorMap.

References Isis::CameraFocalPlaneMap::DetectorLineOffset(), Isis::Camera::FocalPlaneMap(), Isis::CameraDetectorMap::p_camera, Isis::CameraDetectorMap::p_detectorLine, Isis::LineScanCameraDetectorMap::SetLineRate(), Isis::CameraDetectorMap::SetParent(), and Isis::Sensor::setTime().

void Isis::CameraDetectorMap::SetStartingDetectorLine ( const double  line  )  [inline, inherited]

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:
line Starting detector line

References Isis::CameraDetectorMap::p_startingDetectorLine.

Referenced by Isis::MdisCamera::MdisCamera().

void Isis::CameraDetectorMap::SetStartingDetectorSample ( const double  sample  )  [inline, inherited]

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.

Parameters:
sample Starting detector sample

References Isis::CameraDetectorMap::p_startingDetectorSample.

Referenced by Isis::ApolloPanoramicCamera::ApolloPanoramicCamera(), Isis::CTXCamera::CTXCamera(), Isis::HiriseCamera::HiriseCamera(), Isis::LroNarrowAngleCamera::LroNarrowAngleCamera(), Isis::LroWideAngleCamera::LroWideAngleCamera(), Isis::MdisCamera::MdisCamera(), Isis::MocNarrowAngleCamera::MocNarrowAngleCamera(), and Isis::MocWideAngleCamera::MocWideAngleCamera().

void Isis::LineScanCameraDetectorMap::SetStartTime ( const double  etStart  )  [inline, inherited]

Reset the starting ephemeris time.

Use this method to reset the starting time of the top edge of the first line in the parent image. That is the time, prior to cropping, scaling, or padding. Usually this will not need to be done unless the time changes between bands.

Parameters:
etStart starting ephemeris time in seconds

Referenced by Isis::ThemisIrCamera::SetBand().

double Isis::LineScanCameraDetectorMap::StartTime (  )  const [inherited]

Return the starting time at the top edge of the first line in the parent image.


Member Data Documentation

Camera* Isis::CameraDetectorMap::p_camera [protected, inherited]
double Isis::CameraDetectorMap::p_detectorLine [protected, inherited]
double Isis::CameraDetectorMap::p_detectorLineSumming [protected, inherited]
double Isis::CameraDetectorMap::p_detectorSample [protected, inherited]
double Isis::CameraDetectorMap::p_detectorSampleSumming [protected, inherited]
double Isis::CameraDetectorMap::p_parentLine [protected, inherited]
double Isis::CameraDetectorMap::p_parentSample [protected, inherited]
double Isis::CameraDetectorMap::p_sl [protected, inherited]
double Isis::CameraDetectorMap::p_ss [protected, inherited]
double Isis::CameraDetectorMap::p_startingDetectorLine [protected, inherited]

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