9#include "LoCameraFiducialMap.h"
12#include "CameraGroundMap.h"
13#include "CameraSkyMap.h"
34 if(naifIkCode % 2 == 0) {
60 PvlKeyword &fXs = inst[
"FiducialXCoordinates"];
61 PvlKeyword &fYs = inst[
"FiducialYCoordinates"];
63 for(
int i = 0; i < fSamps.size(); i++) {
71 string msg =
"Unable to read fiducial mapping from cube labels - ";
72 msg +=
"Input cube must be processed in Isis 2 through lofixlabel ";
73 msg +=
"and converted to Isis with pds2isis";
97 string msg =
"Unable to create fiducial map.";
102 vector<double> transx;
103 vector<double> transy;
104 transx = fptrans->Coefficients(1);
105 transy = fptrans->Coefficients(2);
108 for(
int icoef = 0; icoef < 3; icoef++) {
109 transx[icoef] *= xdir;
113 transx.insert(transx.begin(), transx[2]);
115 transy.insert(transy.begin(), transy[2]);
119 string icodex = icode +
"_TRANSX";
120 string icodey = icode +
"_TRANSY";
121 pdpool_c(icodex.c_str(), 3, (
double( *)) &transx[0]);
122 pdpool_c(icodey.c_str(), 3, (
double( *)) &transy[0]);
124 vector<double> transs;
125 vector<double> transl;
126 transs = fptrans->InverseCoefficients(1);
127 transl = fptrans->InverseCoefficients(2);
130 transs.insert(transs.begin(), transs[2]);
132 transl.insert(transl.begin(), transl[2]);
139 string icodes = icode +
"_ITRANSS";
140 string icodel = icode +
"_ITRANSL";
141 pdpool_c(icodes.c_str(), 3, (
double( *)) &transs[0]);
142 pdpool_c(icodel.c_str(), 3, (
double( *)) &transl[0]);
@ User
A type of error that could only have occurred due to a mistake on the user's part (e....
Adds specific functionality to C++ strings.
void ReadFiducials(PvlGroup &inst)
Reads the fiducials from the instrument group of the labels.
std::vector< double > p_fidSamples
Image sample positions of fiducial map.
std::vector< double > p_fidLines
Image line positions of fiducial map.
std::vector< double > p_fidXCoords
Focal plane X positions of fiducial map.
void CreateTrans(int xdir)
Creates focal plane affine transform.
std::vector< double > p_fidYCoords
Focal plane Y positions of fiducial map.
LoCameraFiducialMap(PvlGroup &inst, const int naifIkCode)
Constructs mapping between Lunar Orbiter detectors and focal plane x/y.
int p_naifIkCode
Naif instrument code.
Contains multiple PvlContainers.
A single keyword-value pair.
This is free and unencumbered software released into the public domain.
double toDouble(const QString &string)
Global function to convert from a string to a double.
Namespace for the standard library.