Isis 3 Programmer Reference
|
Computes map from image coordinates to focal plane based on fiducials. More...
#include <LoCameraFiducialMap.h>
Public Member Functions | |
LoCameraFiducialMap (PvlGroup &inst, const int naifIkCode) | |
Constructs mapping between Lunar Orbiter detectors and focal plane x/y. More... | |
~LoCameraFiducialMap () | |
Destroys LoCameraFiducialMap object. More... | |
Private Member Functions | |
void | ReadFiducials (PvlGroup &inst) |
Reads the fiducials from the instrument group of the labels. More... | |
void | CreateTrans (int xdir) |
Creates focal plane affine transform. More... | |
Private Attributes | |
std::vector< double > | p_fidSamples |
Image sample positions of fiducial map. More... | |
std::vector< double > | p_fidLines |
Image line positions of fiducial map. More... | |
std::vector< double > | p_fidXCoords |
Focal plane X positions of fiducial map. More... | |
std::vector< double > | p_fidYCoords |
Focal plane Y positions of fiducial map. More... | |
int | p_naifIkCode |
Naif instrument code. More... | |
Computes map from image coordinates to focal plane based on fiducials.
The LoCameraFiducialMap class allows for the computation of a transformation from image coordinates (sample,line) to focal plane coordinates (x,y) for either the Lunar Orbiter High Resolution Camera or the Lunar Orbiter Medium resolution camera for any of the last three Lunar Orbiter missions. The transformation map is an affine transformation defined by values written in the Isis Instrument group labels.
This class will load the fiducial sample/line and x/y values from the labels, compute the coefficients of the affine transformation, and place the coefficients in to the data pool. Typically these values are read from an iak, but for Lunar Orbiter they are frame dependent.
Definition at line 44 of file LoCameraFiducialMap.h.
Isis::LoCameraFiducialMap::LoCameraFiducialMap | ( | PvlGroup & | inst, |
const int | naifIkCode | ||
) |
Constructs mapping between Lunar Orbiter detectors and focal plane x/y.
This method sets the x-axis direction to -1 if the NAIF IK code is even and to 1 if the code is odd.
inst | Instrument group from the Pvl labels |
naifIkCode | Naif code of the Lunar Orbiter instrument for reading coefficients |
Definition at line 27 of file LoCameraFiducialMap.cpp.
|
inline |
Destroys LoCameraFiducialMap object.
Definition at line 48 of file LoCameraFiducialMap.h.
|
private |
Creates focal plane affine transform.
xdir | The x-axis direction. |
IException::User | - "Unable to create fiducial map." |
Definition at line 86 of file LoCameraFiducialMap.cpp.
References Isis::Affine::Coefficients(), Isis::Affine::InverseCoefficients(), and Isis::Affine::Solve().
|
private |
Reads the fiducials from the instrument group of the labels.
inst | Instrument group from the Pvl labels |
IException::User | - "Unable to read fiducial mapping from cube labels - Input cube must be processed in Isis 2 through lofixlabel and converted to Isis with pds2isis" |
Definition at line 53 of file LoCameraFiducialMap.cpp.
References Isis::PvlKeyword::size(), and Isis::toDouble().
|
private |
Image line positions of fiducial map.
Definition at line 54 of file LoCameraFiducialMap.h.
|
private |
Image sample positions of fiducial map.
Definition at line 53 of file LoCameraFiducialMap.h.
|
private |
Focal plane X positions of fiducial map.
Definition at line 55 of file LoCameraFiducialMap.h.
|
private |
Focal plane Y positions of fiducial map.
Definition at line 56 of file LoCameraFiducialMap.h.
|
private |
Naif instrument code.
Definition at line 57 of file LoCameraFiducialMap.h.