Isis 3 Programmer Reference
|
Convert between undistorted focal plane and ground coordinates. More...
#include <VimsSkyMap.h>
Public Member Functions | |
VimsSkyMap (Camera *parent, Pvl &lab) | |
Constructs the VimsSkyMap object. More... | |
virtual | ~VimsSkyMap () |
Destroys the VimsSkyMap object. More... | |
virtual bool | SetFocalPlane (const double ux, const double uy, const double uz) |
Compute ground position from focal plane coordinate. More... | |
virtual bool | SetSky (const double ra, const double dec) |
Sets the sky position to the given ra and dec. More... | |
void | Init (Pvl &lab) |
Initialize vims sky model. More... | |
double | FocalPlaneX () const |
double | FocalPlaneY () const |
Protected Attributes | |
Camera * | p_camera |
The main camera to calculate distortions on. More... | |
double | p_focalPlaneX |
Undistorted x value for the focal plane. More... | |
double | p_focalPlaneY |
Undistorted y value for the focal plane. More... | |
Private Member Functions | |
void | LookDirection (double v[3]) |
Determines the look direction in the camera coordinate system. More... | |
Private Attributes | |
SpiceDouble | p_etStart |
Start ephemeris time. More... | |
double | p_interlineDelay |
InterlineDelayDuration keyword value from the instrument group of the labels, divided by 1000. More... | |
double | p_ux |
Distorted focal plane x, in millimeters. More... | |
double | p_uy |
Distorted focal plane y, in millimeters. More... | |
double | p_uz |
Distorted focal plane z, in millimeters. More... | |
double | p_xPixSize |
X pixel size. More... | |
double | p_yPixSize |
Y pixel size. More... | |
double | p_xBore |
X boresight. More... | |
double | p_yBore |
Y boresight. More... | |
QString | p_channel |
Channel keyword value from the instrument group of the labels. More... | |
double | p_visExp |
VIS exposure duration, divided by 1000. More... | |
double | p_irExp |
IR exposure duration, divided by 1000. More... | |
int | p_swathWidth |
SwathWidth keyword value from the instrument group of the labels. More... | |
int | p_swathLength |
SwathLength keyword value from the instrument group of the labels. More... | |
int | p_camSampOffset |
Sample offset. More... | |
int | p_camLineOffset |
Line offset. More... | |
double | p_minRa |
Minimum right ascension. More... | |
double | p_maxRa |
Maximum right ascension. More... | |
double | p_minDec |
Minimum declination. More... | |
double | p_maxDec |
Maximum declination. More... | |
double | p_raMap [64][64] |
Right ascension map. More... | |
double | p_decMap [64][64] |
Declination map. More... | |
Convert between undistorted focal plane and ground coordinates.
This base class is used to convert between undistorted focal plane coordinates (x/y) in millimeters and ground coordinates lat/lon. This class handles the case of framing cameras.
Definition at line 46 of file VimsSkyMap.h.
Constructs the VimsSkyMap object.
Definition at line 37 of file VimsSkyMap.cpp.
|
inlinevirtual |
Destroys the VimsSkyMap object.
Definition at line 51 of file VimsSkyMap.h.
|
inlineinherited |
Definition at line 46 of file CameraSkyMap.h.
References Isis::CameraSkyMap::p_focalPlaneX.
Referenced by Isis::Camera::SetRightAscensionDeclination().
|
inlineinherited |
Definition at line 53 of file CameraSkyMap.h.
References Isis::CameraSkyMap::p_focalPlaneY.
Referenced by Isis::Camera::SetRightAscensionDeclination().
void Isis::VimsSkyMap::Init | ( | Pvl & | lab | ) |
Initialize vims sky model.
iException::Io | - "Cannot process NYQUIST(undersampled) mode " |
iException::Io | - "Can't open unit vector file" |
Definition at line 58 of file VimsSkyMap.cpp.
References Isis::Sensor::Declination(), Isis::iTime::Et(), Isis::PvlObject::findGroup(), Isis::Spice::getClockTime(), Isis::Camera::IgnoreProjection(), Isis::CameraSkyMap::p_camera, p_camLineOffset, p_camSampOffset, p_channel, p_decMap, p_etStart, p_interlineDelay, p_irExp, p_maxDec, p_maxRa, p_minDec, p_minRa, p_raMap, p_swathLength, p_swathWidth, p_visExp, p_xBore, p_xPixSize, p_yBore, p_yPixSize, Isis::Camera::ParentLines(), Isis::Camera::ParentSamples(), Isis::IException::Programmer, Isis::Sensor::RightAscension(), Isis::Camera::SetImage(), Isis::Sensor::setTime(), Isis::toDouble(), and Isis::PvlObject::Traverse.
|
private |
Determines the look direction in the camera coordinate system.
[out] | v | Look direction vector in camera coordinates |
This method will compute the look direction vector in the camera coordinate system. This code was converted from Rick McCloskey's point_tbl c code.
Definition at line 372 of file VimsSkyMap.cpp.
References Isis::HALFPI, p_camLineOffset, p_camSampOffset, p_ux, p_uy, p_xBore, p_xPixSize, p_yBore, and p_yPixSize.
Referenced by SetFocalPlane().
|
virtual |
Compute ground position from focal plane coordinate.
This method will compute the ground position given an undistorted focal plane coordinate. Note that the latitude/longitude value can be obtained from the camera class passed into the constructor.
ux | distorted focal plane x in millimeters |
uy | distorted focal plane y in millimeters |
uz | distorted focal plane z in millimeters |
Reimplemented from Isis::CameraSkyMap.
Definition at line 201 of file VimsSkyMap.cpp.
References LookDirection(), Isis::CameraSkyMap::p_camera, p_channel, p_etStart, p_interlineDelay, p_irExp, p_swathWidth, p_ux, p_uy, p_uz, p_visExp, Isis::Camera::ParentLines(), Isis::Camera::ParentSamples(), Isis::Sensor::SetLookDirection(), and Isis::Sensor::setTime().
|
virtual |
Sets the sky position to the given ra and dec.
ra | the right ascension |
dec | the declination |
Reimplemented from Isis::CameraSkyMap.
Definition at line 247 of file VimsSkyMap.cpp.
References Isis::LeastSquares::AddKnown(), Isis::LeastSquares::Evaluate(), Isis::Camera::IgnoreProjection(), Isis::LeastSquares::Knowns(), Isis::CameraSkyMap::p_camera, p_decMap, Isis::CameraSkyMap::p_focalPlaneX, Isis::CameraSkyMap::p_focalPlaneY, p_maxDec, p_maxRa, p_raMap, Isis::Camera::ParentLines(), Isis::Camera::ParentSamples(), Isis::Camera::SetImage(), and Isis::LeastSquares::Solve().
|
protectedinherited |
The main camera to calculate distortions on.
Definition at line 58 of file CameraSkyMap.h.
Referenced by Isis::CameraSkyMap::CameraSkyMap(), Init(), Isis::CameraSkyMap::SetFocalPlane(), SetFocalPlane(), Isis::CameraSkyMap::SetSky(), Isis::LineScanCameraSkyMap::SetSky(), and SetSky().
|
private |
|
private |
Sample offset.
Definition at line 86 of file VimsSkyMap.h.
Referenced by Init(), and LookDirection().
|
private |
Channel keyword value from the instrument group of the labels.
Possible values are IR or VIS
Definition at line 78 of file VimsSkyMap.h.
Referenced by Init(), and SetFocalPlane().
|
private |
|
private |
Start ephemeris time.
Definition at line 65 of file VimsSkyMap.h.
Referenced by Init(), and SetFocalPlane().
|
protectedinherited |
Undistorted x value for the focal plane.
Definition at line 59 of file CameraSkyMap.h.
Referenced by Isis::CameraSkyMap::FocalPlaneX(), Isis::CameraSkyMap::SetSky(), Isis::LineScanCameraSkyMap::SetSky(), and SetSky().
|
protectedinherited |
Undistorted y value for the focal plane.
Definition at line 60 of file CameraSkyMap.h.
Referenced by Isis::CameraSkyMap::FocalPlaneY(), Isis::CameraSkyMap::SetSky(), Isis::LineScanCameraSkyMap::SetSky(), and SetSky().
|
private |
InterlineDelayDuration keyword value from the instrument group of the labels, divided by 1000.
Definition at line 67 of file VimsSkyMap.h.
Referenced by Init(), and SetFocalPlane().
|
private |
IR exposure duration, divided by 1000.
Definition at line 81 of file VimsSkyMap.h.
Referenced by Init(), and SetFocalPlane().
|
private |
Maximum declination.
Definition at line 92 of file VimsSkyMap.h.
|
private |
Maximum right ascension.
Definition at line 90 of file VimsSkyMap.h.
|
private |
|
private |
|
private |
Right ascension map.
Definition at line 93 of file VimsSkyMap.h.
|
private |
SwathLength keyword value from the instrument group of the labels.
This will be image size unless occultation image
Definition at line 84 of file VimsSkyMap.h.
Referenced by Init().
|
private |
SwathWidth keyword value from the instrument group of the labels.
This will be image size unless occultation image
Definition at line 82 of file VimsSkyMap.h.
Referenced by Init(), and SetFocalPlane().
|
private |
Distorted focal plane x, in millimeters.
Definition at line 69 of file VimsSkyMap.h.
Referenced by LookDirection(), and SetFocalPlane().
|
private |
Distorted focal plane y, in millimeters.
Definition at line 70 of file VimsSkyMap.h.
Referenced by LookDirection(), and SetFocalPlane().
|
private |
Distorted focal plane z, in millimeters.
Definition at line 71 of file VimsSkyMap.h.
Referenced by SetFocalPlane().
|
private |
VIS exposure duration, divided by 1000.
Definition at line 80 of file VimsSkyMap.h.
Referenced by Init(), and SetFocalPlane().
|
private |
|
private |
X pixel size.
Definition at line 73 of file VimsSkyMap.h.
Referenced by Init(), and LookDirection().
|
private |
|
private |
Y pixel size.
Definition at line 74 of file VimsSkyMap.h.
Referenced by Init(), and LookDirection().