USGS

Isis 3.0 Object Programmers' Reference

Home

Isis::LroNarrowAngleDistortionMap Class Reference

Distort/undistort focal plane coordinates. More...

#include <LroNarrowAngleDistortionMap.h>

Inheritance diagram for Isis::LroNarrowAngleDistortionMap:
Inheritance graph
Collaboration diagram for Isis::LroNarrowAngleDistortionMap:
Collaboration graph

Public Member Functions

 LroNarrowAngleDistortionMap (Camera *parent)
 Camera distortion map constructor.
 
virtual ~LroNarrowAngleDistortionMap ()
 Destroys the LroNarrowAngleDistortionMap object.
 
void SetDistortion (const int naifIkCode)
 
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.
 
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
LroNarrowAngleCamera
Author
2009-07-03 Jacob Danton
History:

2010-05-10 Ken Edmundson - Corrected computation of distorted and undistorted locations

2010-08-21 Kris Becker - Changed the sign of the distortion parameter to match the calibration report. The LRO/LROC IK lro_lroc_v14.ti and above contain the appropriate parameters to coincide with the code change made here. IMPORTANT: This results in Version = 2 of the LroNarrowAngleCamera as depicted in the Camera.plugin for both NAC-L and NAC-R.

2011-05-03 Jeannie Walldren - Removed Lro namespace wrap.

2012-07-06 Debbie A. Cook, Updated Spice members to be more compliant with Isis coding standards. References #972.

Definition at line 53 of file LroNarrowAngleDistortionMap.h.

Constructor & Destructor Documentation

Isis::LroNarrowAngleDistortionMap::LroNarrowAngleDistortionMap ( Camera parent)

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)

Definition at line 38 of file LroNarrowAngleDistortionMap.cpp.

virtual Isis::LroNarrowAngleDistortionMap::~LroNarrowAngleDistortionMap ( )
inlinevirtual

Destroys the LroNarrowAngleDistortionMap object.

Definition at line 58 of file LroNarrowAngleDistortionMap.h.

Member Function Documentation

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.

Definition at line 195 of file CameraDistortionMap.cpp.

void Isis::LroNarrowAngleDistortionMap::SetDistortion ( const int  naifIkCode)
Parameters
naifIkCode

Definition at line 44 of file LroNarrowAngleDistortionMap.cpp.

References Isis::Spice::getDouble(), and Isis::toString().

Referenced by Isis::LroNarrowAngleCamera::LroNarrowAngleCamera().

bool Isis::LroNarrowAngleDistortionMap::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
Todo:
Generalize polynomial equation

Reimplemented from Isis::CameraDistortionMap.

Definition at line 61 of file LroNarrowAngleDistortionMap.cpp.

bool Isis::LroNarrowAngleDistortionMap::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.

Definition at line 87 of file LroNarrowAngleDistortionMap.cpp.

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

Return undistorted focal plane z.

Definition at line 92 of file CameraDistortionMap.h.

References Isis::Camera::FocalLength().

Referenced by Isis::BundleAdjust::ApproximatePoint_ClosestApproach(), and Isis::Camera::SetImage().

double Isis::CameraDistortionMap::ZDirection ( ) const
inherited

Return the direction of the focal plane Z-axis.

Definition at line 201 of file CameraDistortionMap.cpp.


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