13#include "KaguyaTcCameraDistortionMap.h"
32 QString odtxkey =
"INS" +
toString(naifIkCode) +
"_DISTORTION_COEF_X";
33 QString odtykey =
"INS" +
toString(naifIkCode) +
"_DISTORTION_COEF_Y";
34 QString boresightkey =
"INS" +
toString(naifIkCode) +
"_BORESIGHT";
36 for(
int i = 0; i < 4; ++i) {
97 double r2 = x*x + y*y;
139 double xx, yy, r, rr, rrr, dr_x, dr_y;
140 double xdistortion, ydistortion;
141 double xdistorted, ydistorted;
142 double xprevious, yprevious;
144 xprevious = 1000000.0;
145 yprevious = 1000000.0;
147 double tolerance = 0.000001;
148 bool bConverged =
false;
153 for (
int i = 0; i < 50; i++) {
170 xt = ux - xdistortion;
171 yt = uy - ydistortion;
178 if ((fabs(xt - xprevious) < tolerance) && (fabs(yt - yprevious) < tolerance)) {
Distort/undistort focal plane coordinates.
double p_focalPlaneX
Distorted focal plane x.
double p_undistortedFocalPlaneX
Undistorted focal plane x.
double p_undistortedFocalPlaneY
Undistorted focal plane y.
Camera * p_camera
The camera to distort/undistort.
double p_focalPlaneY
Distorted focal plane y.
std::vector< double > p_odky
distortion y coefficients
virtual bool SetFocalPlane(double dx, double dy)
Compute undistorted focal plane x/y.
KaguyaTcCameraDistortionMap(Camera *parent, int naifIkCode)
Kaguya TC Camera distortion map constructor.
virtual ~KaguyaTcCameraDistortionMap()
Destructor.
std::vector< double > p_odkx
distortion x coefficients
virtual bool SetUndistortedFocalPlane(double ux, double uy)
Compute distorted focal plane x/y.
SpiceDouble getDouble(const QString &key, int index=0)
This returns a value from the NAIF text pool.
This is free and unencumbered software released into the public domain.
QString toString(bool boolToConvert)
Global function to convert a boolean to a string.