USGS

Isis 3.0 Developer's Reference (API)

Home

Isis::LroWideAngleCameraDistortionMap Class Reference

Distort/undistort focal plane coordinates. More...

#include <LroWideAngleCameraDistortionMap.h>

Inherits Isis::CameraDistortionMap.

Public Member Functions

 LroWideAngleCameraDistortionMap (Camera *parent, int naifIkCode)
 Camera distortion map constructor.
 
virtual ~LroWideAngleCameraDistortionMap ()
 Destroys the LroWideAngleCameraDistortionMap object.
 
void addFilter (int naifIkCode)
 Add an additional set of parameters for a given LROC/WAC filter.
 
void setBand (int vband)
 Implements band-dependant distortion parameters.
 
virtual bool SetFocalPlane (const double dx, const double dy)
 Compute undistorted focal plane x/y.
 
virtual bool SetUndistortedFocalPlane (const double ux, const double uy)
 Compute distorted focal plane x/y.
 
void SetDistortion (int naifIkCode)
 Load distortion coefficients.
 
std::vector< double > OpticalDistortionCoefficients () const
 Return optical distortion polynomial coefficients.
 
double ZDirection () const
 Return the direction of the focal plane Z-axis.
 
double FocalPlaneX () const
 Return distorted focal plane x.
 
double FocalPlaneY () const
 Return distorted focal plane y.
 
double UndistortedFocalPlaneX () const
 Return undistorted focal plane x.
 
double UndistortedFocalPlaneY () const
 Return undistorted focal plane y.
 
double UndistortedFocalPlaneZ () const
 Return undistorted focal plane z.
 

Protected Attributes

Camerap_camera
 
double p_focalPlaneX
 
double p_focalPlaneY
 
double p_undistortedFocalPlaneX
 
double p_undistortedFocalPlaneY
 
double p_zDirection
 
std::vector< double > p_odk
 

Detailed Description

Distort/undistort focal plane coordinates.

Creates a map for adding/removing optical distortions from the focal plane of a camera.

See Also
LroWideAngleCamera
Author
2008-08-22 Steven Lambright

Constructor & Destructor Documentation

Isis::LroWideAngleCameraDistortionMap::LroWideAngleCameraDistortionMap ( Camera parent,
int  naifIkCode 
)

Camera distortion map constructor.

Create a camera distortion map. This class maps between distorted and undistorted focal plane x/y's. The default mapping is the identity, that is, the focal plane x/y and undistorted focal plane x/y will be identical.

Parameters
parentthe parent camera that will use this distortion map
zDirectionthe direction of the focal plane Z-axis (either 1 or -1)

References Isis::CameraDistortionMap::SetDistortion().

virtual Isis::LroWideAngleCameraDistortionMap::~LroWideAngleCameraDistortionMap ( )
inlinevirtual

Destroys the LroWideAngleCameraDistortionMap object.

Member Function Documentation

void Isis::LroWideAngleCameraDistortionMap::addFilter ( int  naifIkCode)

Add an additional set of parameters for a given LROC/WAC filter.

This method will read the parameters for LROC/WAC filter as indicated by the IK code provided. It will create a vector of these parameters and append them to the band list.

The filters added should correspond directly to the order in which the filters are physically stored in the ISIS cube (or the virtually selected bands).

Author
2013-03-07 Kris Becker
Parameters
naifIkCodeNAIF IK code for the desired filter to add.

References Isis::Spice::getDouble(), and Isis::CameraDistortionMap::p_camera.

Referenced by Isis::LroWideAngleCamera::LroWideAngleCamera().

double Isis::CameraDistortionMap::FocalPlaneX ( ) const
inlineinherited
double Isis::CameraDistortionMap::FocalPlaneY ( ) const
inlineinherited
std::vector< double > Isis::CameraDistortionMap::OpticalDistortionCoefficients ( ) const
inherited

Return optical distortion polynomial coefficients.

References Isis::CameraDistortionMap::p_odk.

void Isis::LroWideAngleCameraDistortionMap::setBand ( int  vband)

Implements band-dependant distortion parameters.

This method should be used to switch to another band's set of distortion parameters. See the addFilter() method to add additional band parameters to this object. Note that the band number should correspond with the same order as they were added in the addFilter() method.

Author
2013-03-07 Kris Becker
Parameters
vbandBand number to select. Range is 1 to Bands.

References _FILEINFO_, Isis::CameraDistortionMap::p_odk, and Isis::IException::Programmer.

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

void Isis::CameraDistortionMap::SetDistortion ( int  naifIkCode)
inherited

Load distortion coefficients.

This method loads the distortion coefficients from the instrument kernel. The coefficients in the NAIF instrument kernel are expected to be in the form of:

INSxxxxx_OD_K = ( coef1, coef2, ..., coefN)
where xxxxx is the instrument code (always a negative number)

These coefficient will be used to convert from focal plane x,y to undistorted x,y as follows (add equation here)

Parameters
naifIkCodeCode to search for in instrument kernel

References Isis::CameraDistortionMap::p_camera, Isis::CameraDistortionMap::p_odk, and Isis::toString().

Referenced by Isis::AmicaCamera::AmicaCamera(), Isis::CTXCamera::CTXCamera(), Isis::HiriseCamera::HiriseCamera(), LroWideAngleCameraDistortionMap(), Isis::LoHighDistortionMap::SetDistortion(), and Isis::LoMediumDistortionMap::SetDistortion().

bool Isis::LroWideAngleCameraDistortionMap::SetFocalPlane ( const double  dx,
const double  dy 
)
virtual

Compute undistorted focal plane x/y.

Compute undistorted focal plane x/y given a distorted focal plane x/y.

Parameters
dxdistorted focal plane x in millimeters
dydistorted focal plane y in millimeters
Returns
if the conversion was successful
See Also
SetDistortion

Reimplemented from Isis::CameraDistortionMap.

References Isis::CameraDistortionMap::p_focalPlaneX, Isis::CameraDistortionMap::p_focalPlaneY, Isis::CameraDistortionMap::p_odk, Isis::CameraDistortionMap::p_undistortedFocalPlaneX, and Isis::CameraDistortionMap::p_undistortedFocalPlaneY.

bool Isis::LroWideAngleCameraDistortionMap::SetUndistortedFocalPlane ( const double  ux,
const double  uy 
)
virtual

Compute distorted focal plane x/y.

Compute distorted focal plane x/y given an undistorted focal plane x/y.

Parameters
uxundistorted focal plane x in millimeters
uyundistorted focal plane y in millimeters
Returns
if the conversion was successful
See Also
SetDistortion

Reimplemented from Isis::CameraDistortionMap.

References Isis::CameraDistortionMap::p_focalPlaneX, Isis::CameraDistortionMap::p_focalPlaneY, Isis::CameraDistortionMap::p_odk, Isis::CameraDistortionMap::p_undistortedFocalPlaneX, and Isis::CameraDistortionMap::p_undistortedFocalPlaneY.

double Isis::CameraDistortionMap::UndistortedFocalPlaneX ( ) const
inlineinherited
double Isis::CameraDistortionMap::UndistortedFocalPlaneY ( ) const
inlineinherited
double Isis::CameraDistortionMap::UndistortedFocalPlaneZ ( ) const
inlineinherited
double Isis::CameraDistortionMap::ZDirection ( ) const
inherited

Return the direction of the focal plane Z-axis.

References Isis::CameraDistortionMap::p_zDirection.

Member Data Documentation

double Isis::CameraDistortionMap::p_focalPlaneX
protectedinherited

Referenced by Isis::CameraDistortionMap::FocalPlaneX(), Isis::RadialDistortionMap::SetFocalPlane(), Isis::DawnFcDistortionMap::SetFocalPlane(), Isis::ApolloMetricDistortionMap::SetFocalPlane(), Isis::NewHorizonsLorriDistortionMap::SetFocalPlane(), Isis::ReseauDistortionMap::SetFocalPlane(), Isis::MocWideAngleDistortionMap::SetFocalPlane(), Isis::ThemisIrDistortionMap::SetFocalPlane(), Isis::NewHorizonsMvicFrameCameraDistortionMap::SetFocalPlane(), Isis::ThemisVisDistortionMap::SetFocalPlane(), Isis::KaguyaMiCameraDistortionMap::SetFocalPlane(), Isis::NewHorizonsMvicTdiCameraDistortionMap::SetFocalPlane(), Isis::Chandrayaan1M3DistortionMap::SetFocalPlane(), Isis::MarciDistortionMap::SetFocalPlane(), Isis::TaylorCameraDistortionMap::SetFocalPlane(), Isis::LroNarrowAngleDistortionMap::SetFocalPlane(), Isis::CameraDistortionMap::SetFocalPlane(), Isis::RadarSlantRangeMap::SetFocalPlane(), Isis::LoHighDistortionMap::SetFocalPlane(), SetFocalPlane(), Isis::LoMediumDistortionMap::SetFocalPlane(), Isis::RadialDistortionMap::SetUndistortedFocalPlane(), Isis::DawnFcDistortionMap::SetUndistortedFocalPlane(), Isis::NewHorizonsLorriDistortionMap::SetUndistortedFocalPlane(), Isis::ApolloMetricDistortionMap::SetUndistortedFocalPlane(), Isis::ReseauDistortionMap::SetUndistortedFocalPlane(), Isis::MocWideAngleDistortionMap::SetUndistortedFocalPlane(), Isis::ThemisVisDistortionMap::SetUndistortedFocalPlane(), Isis::ThemisIrDistortionMap::SetUndistortedFocalPlane(), Isis::NewHorizonsMvicFrameCameraDistortionMap::SetUndistortedFocalPlane(), Isis::Chandrayaan1M3DistortionMap::SetUndistortedFocalPlane(), Isis::KaguyaMiCameraDistortionMap::SetUndistortedFocalPlane(), Isis::MarciDistortionMap::SetUndistortedFocalPlane(), Isis::NewHorizonsMvicTdiCameraDistortionMap::SetUndistortedFocalPlane(), Isis::TaylorCameraDistortionMap::SetUndistortedFocalPlane(), Isis::LroNarrowAngleDistortionMap::SetUndistortedFocalPlane(), Isis::CameraDistortionMap::SetUndistortedFocalPlane(), Isis::RadarSlantRangeMap::SetUndistortedFocalPlane(), Isis::LoHighDistortionMap::SetUndistortedFocalPlane(), SetUndistortedFocalPlane(), and Isis::LoMediumDistortionMap::SetUndistortedFocalPlane().

double Isis::CameraDistortionMap::p_focalPlaneY
protectedinherited

Referenced by Isis::CameraDistortionMap::FocalPlaneY(), Isis::RadialDistortionMap::SetFocalPlane(), Isis::DawnFcDistortionMap::SetFocalPlane(), Isis::ApolloMetricDistortionMap::SetFocalPlane(), Isis::NewHorizonsLorriDistortionMap::SetFocalPlane(), Isis::ReseauDistortionMap::SetFocalPlane(), Isis::MocWideAngleDistortionMap::SetFocalPlane(), Isis::ThemisIrDistortionMap::SetFocalPlane(), Isis::NewHorizonsMvicFrameCameraDistortionMap::SetFocalPlane(), Isis::ThemisVisDistortionMap::SetFocalPlane(), Isis::KaguyaMiCameraDistortionMap::SetFocalPlane(), Isis::NewHorizonsMvicTdiCameraDistortionMap::SetFocalPlane(), Isis::Chandrayaan1M3DistortionMap::SetFocalPlane(), Isis::MarciDistortionMap::SetFocalPlane(), Isis::TaylorCameraDistortionMap::SetFocalPlane(), Isis::LroNarrowAngleDistortionMap::SetFocalPlane(), Isis::CameraDistortionMap::SetFocalPlane(), Isis::RadarSlantRangeMap::SetFocalPlane(), Isis::LoHighDistortionMap::SetFocalPlane(), SetFocalPlane(), Isis::LoMediumDistortionMap::SetFocalPlane(), Isis::RadialDistortionMap::SetUndistortedFocalPlane(), Isis::DawnFcDistortionMap::SetUndistortedFocalPlane(), Isis::NewHorizonsLorriDistortionMap::SetUndistortedFocalPlane(), Isis::ApolloMetricDistortionMap::SetUndistortedFocalPlane(), Isis::ReseauDistortionMap::SetUndistortedFocalPlane(), Isis::MocWideAngleDistortionMap::SetUndistortedFocalPlane(), Isis::ThemisVisDistortionMap::SetUndistortedFocalPlane(), Isis::ThemisIrDistortionMap::SetUndistortedFocalPlane(), Isis::NewHorizonsMvicFrameCameraDistortionMap::SetUndistortedFocalPlane(), Isis::Chandrayaan1M3DistortionMap::SetUndistortedFocalPlane(), Isis::KaguyaMiCameraDistortionMap::SetUndistortedFocalPlane(), Isis::MarciDistortionMap::SetUndistortedFocalPlane(), Isis::NewHorizonsMvicTdiCameraDistortionMap::SetUndistortedFocalPlane(), Isis::TaylorCameraDistortionMap::SetUndistortedFocalPlane(), Isis::LroNarrowAngleDistortionMap::SetUndistortedFocalPlane(), Isis::CameraDistortionMap::SetUndistortedFocalPlane(), Isis::RadarSlantRangeMap::SetUndistortedFocalPlane(), Isis::LoHighDistortionMap::SetUndistortedFocalPlane(), SetUndistortedFocalPlane(), and Isis::LoMediumDistortionMap::SetUndistortedFocalPlane().

double Isis::CameraDistortionMap::p_undistortedFocalPlaneX
protectedinherited

Referenced by Isis::RadialDistortionMap::SetFocalPlane(), Isis::DawnFcDistortionMap::SetFocalPlane(), Isis::NewHorizonsLorriDistortionMap::SetFocalPlane(), Isis::ApolloMetricDistortionMap::SetFocalPlane(), Isis::ReseauDistortionMap::SetFocalPlane(), Isis::MocWideAngleDistortionMap::SetFocalPlane(), Isis::ThemisIrDistortionMap::SetFocalPlane(), Isis::NewHorizonsMvicFrameCameraDistortionMap::SetFocalPlane(), Isis::ThemisVisDistortionMap::SetFocalPlane(), Isis::KaguyaMiCameraDistortionMap::SetFocalPlane(), Isis::NewHorizonsMvicTdiCameraDistortionMap::SetFocalPlane(), Isis::Chandrayaan1M3DistortionMap::SetFocalPlane(), Isis::MarciDistortionMap::SetFocalPlane(), Isis::TaylorCameraDistortionMap::SetFocalPlane(), Isis::LroNarrowAngleDistortionMap::SetFocalPlane(), Isis::CameraDistortionMap::SetFocalPlane(), Isis::RadarSlantRangeMap::SetFocalPlane(), Isis::LoHighDistortionMap::SetFocalPlane(), SetFocalPlane(), Isis::LoMediumDistortionMap::SetFocalPlane(), Isis::RadialDistortionMap::SetUndistortedFocalPlane(), Isis::DawnFcDistortionMap::SetUndistortedFocalPlane(), Isis::ApolloMetricDistortionMap::SetUndistortedFocalPlane(), Isis::NewHorizonsLorriDistortionMap::SetUndistortedFocalPlane(), Isis::ReseauDistortionMap::SetUndistortedFocalPlane(), Isis::MocWideAngleDistortionMap::SetUndistortedFocalPlane(), Isis::ThemisIrDistortionMap::SetUndistortedFocalPlane(), Isis::ThemisVisDistortionMap::SetUndistortedFocalPlane(), Isis::NewHorizonsMvicFrameCameraDistortionMap::SetUndistortedFocalPlane(), Isis::Chandrayaan1M3DistortionMap::SetUndistortedFocalPlane(), Isis::KaguyaMiCameraDistortionMap::SetUndistortedFocalPlane(), Isis::NewHorizonsMvicTdiCameraDistortionMap::SetUndistortedFocalPlane(), Isis::MarciDistortionMap::SetUndistortedFocalPlane(), Isis::TaylorCameraDistortionMap::SetUndistortedFocalPlane(), Isis::LroNarrowAngleDistortionMap::SetUndistortedFocalPlane(), Isis::CameraDistortionMap::SetUndistortedFocalPlane(), Isis::RadarSlantRangeMap::SetUndistortedFocalPlane(), Isis::LoHighDistortionMap::SetUndistortedFocalPlane(), SetUndistortedFocalPlane(), Isis::LoMediumDistortionMap::SetUndistortedFocalPlane(), and Isis::CameraDistortionMap::UndistortedFocalPlaneX().

double Isis::CameraDistortionMap::p_undistortedFocalPlaneY
protectedinherited

Referenced by Isis::RadialDistortionMap::SetFocalPlane(), Isis::DawnFcDistortionMap::SetFocalPlane(), Isis::NewHorizonsLorriDistortionMap::SetFocalPlane(), Isis::ApolloMetricDistortionMap::SetFocalPlane(), Isis::ReseauDistortionMap::SetFocalPlane(), Isis::MocWideAngleDistortionMap::SetFocalPlane(), Isis::ThemisIrDistortionMap::SetFocalPlane(), Isis::NewHorizonsMvicFrameCameraDistortionMap::SetFocalPlane(), Isis::ThemisVisDistortionMap::SetFocalPlane(), Isis::KaguyaMiCameraDistortionMap::SetFocalPlane(), Isis::NewHorizonsMvicTdiCameraDistortionMap::SetFocalPlane(), Isis::Chandrayaan1M3DistortionMap::SetFocalPlane(), Isis::MarciDistortionMap::SetFocalPlane(), Isis::TaylorCameraDistortionMap::SetFocalPlane(), Isis::LroNarrowAngleDistortionMap::SetFocalPlane(), Isis::CameraDistortionMap::SetFocalPlane(), Isis::RadarSlantRangeMap::SetFocalPlane(), Isis::LoHighDistortionMap::SetFocalPlane(), SetFocalPlane(), Isis::LoMediumDistortionMap::SetFocalPlane(), Isis::RadialDistortionMap::SetUndistortedFocalPlane(), Isis::DawnFcDistortionMap::SetUndistortedFocalPlane(), Isis::ApolloMetricDistortionMap::SetUndistortedFocalPlane(), Isis::NewHorizonsLorriDistortionMap::SetUndistortedFocalPlane(), Isis::ReseauDistortionMap::SetUndistortedFocalPlane(), Isis::MocWideAngleDistortionMap::SetUndistortedFocalPlane(), Isis::ThemisIrDistortionMap::SetUndistortedFocalPlane(), Isis::ThemisVisDistortionMap::SetUndistortedFocalPlane(), Isis::NewHorizonsMvicFrameCameraDistortionMap::SetUndistortedFocalPlane(), Isis::Chandrayaan1M3DistortionMap::SetUndistortedFocalPlane(), Isis::KaguyaMiCameraDistortionMap::SetUndistortedFocalPlane(), Isis::NewHorizonsMvicTdiCameraDistortionMap::SetUndistortedFocalPlane(), Isis::MarciDistortionMap::SetUndistortedFocalPlane(), Isis::TaylorCameraDistortionMap::SetUndistortedFocalPlane(), Isis::LroNarrowAngleDistortionMap::SetUndistortedFocalPlane(), Isis::CameraDistortionMap::SetUndistortedFocalPlane(), Isis::RadarSlantRangeMap::SetUndistortedFocalPlane(), Isis::LoHighDistortionMap::SetUndistortedFocalPlane(), SetUndistortedFocalPlane(), Isis::LoMediumDistortionMap::SetUndistortedFocalPlane(), and Isis::CameraDistortionMap::UndistortedFocalPlaneY().


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