|
Isis 3 Programmer Reference
|
9 #include "ThemisIrCamera.h"
10 #include "ThemisIrDistortionMap.h"
14 #include "CameraFocalPlaneMap.h"
15 #include "IException.h"
17 #include "LineScanCameraDetectorMap.h"
18 #include "LineScanCameraGroundMap.h"
19 #include "LineScanCameraSkyMap.h"
20 #include "NaifStatus.h"
48 QString stime = inst[
"SpacecraftClockCount"];
51 double offset = inst[
"SpacecraftClockOffset"];
59 for(
int i = 0; i < orgBand.
size(); i++) {
60 p_originalBand.push_back(
toInt(orgBand[i]));
70 sumMode = inst[
"SpatialSumming"];
72 p_lineRate = 33.2871 / 1000.0 * sumMode;
77 p_tdiMode = (QString) inst[
"TimeDelayIntegration"];
126 if((band < 1) || (band > 10)) {
127 string msg =
"Invalid Reference Band [" +
IString(band) +
"]";
132 if(vband > (
int) p_originalBand.size()) {
133 string msg =
"Band number out of array bounds in ThemisIRCamera";
136 band = p_originalBand[vband-1];
147 if(p_tdiMode ==
"ENABLED") {
148 double bandDetector_TDI[] = {8.5, 24.5, 50.5, 76.5, 102.5,
149 128.5, 154.5, 180.5, 205.5, 231.5
151 detectorLine = bandDetector_TDI[band-1];
154 int bandDetector_noTDI[] = {9, 24, 52, 77, 102, 129, 155, 181, 206, 232};
155 detectorLine = (double) bandDetector_noTDI[band-1];
162 p_bandTimeOffset = (detectorLine - 0.5) * p_lineRate;
168 detectorMap->
SetStartTime(p_etStart + p_bandTimeOffset);
174 double alongtrackOffset = 120.5 - detectorLine;
178 double empiricalOffset[] = { -0.076, -0.098, -0.089, -0.022, 0.0,
179 -0.020, -0.005, -0.069, 0.025, 0.0
181 alongtrackOffset += empiricalOffset[band-1];
186 double sampleBoresight = 160.5;
187 double empiricalBoresightOffset[] = { 0.021, 0.027, 0.005, 0.005, 0.0,
188 -0.007, -0.012, -0.039, -0.045, 0.0
190 sampleBoresight -= empiricalBoresightOffset[band-1];
196 distMap->SetBand(band);
Convert between undistorted focal plane and ra/dec coordinates.
void SetDetectorOrigin(const double sample, const double line)
Set the detector origin.
PvlGroupIterator findGroup(const QString &name, PvlGroupIterator beg, PvlGroupIterator end)
Find a group with the specified name, within these indexes.
A single keyword-value pair.
SpiceInt naifIkCode() const
This returns the NAIF IK code to use when reading from instrument kernels.
QString m_instrumentNameLong
Full instrument name.
virtual iTime getClockTime(QString clockValue, int sclkCode=-1, bool clockTicks=false)
This converts the spacecraft clock ticks value (clockValue) to an iTime.
void SetDetectorSampleSumming(const double summing)
Set sample summing mode.
bool hasKeyword(const QString &name) const
Check to see if a keyword exists.
Container for cube-like labels.
CameraDistortionMap * DistortionMap()
Returns a pointer to the CameraDistortionMap object.
void SetDetectorOffset(const double sampleOffset, const double lineOffset)
Set the detector offset.
bool HasReferenceBand() const
Checks to see if the Camera object has a reference band.
static void CheckErrors(bool resetNaif=true)
This method looks for any naif errors that might have occurred.
void SetStartTime(const double etStart)
Reset the starting ephemeris time.
void SetDetectorLineSumming(const double summing)
Set line summing mode.
@ Traverse
Search child objects.
double Et() const
Returns the ephemeris time (TDB) representation of the time as a double.
void SetPixelPitch()
Reads the Pixel Pitch from the instrument kernel.
Contains multiple PvlContainers.
int toInt(const QString &string)
Global function to convert from a string to an integer.
void SetBand(const int band)
Change the THEMIS IR camera parameters based on the band number.
Distort/undistort focal plane coordinates.
Generic class for Line Scan Cameras.
Convert between undistorted focal plane and ground coordinates.
IO Handler for Isis Cubes.
QString m_spacecraftNameLong
Full spacecraft name.
virtual double LineScaleFactor() const
Return scaling factor for computing line resolution.
CameraFocalPlaneMap * FocalPlaneMap()
Returns a pointer to the CameraFocalPlaneMap object.
@ Programmer
This error is for when a programmer made an API call that was illegal.
Namespace for the standard library.
void LoadCache()
This loads the spice cache big enough for this image.
QString m_instrumentNameShort
Shortened instrument name.
Convert between distorted focal plane and detector coordinates.
Pvl * label() const
Returns a pointer to the IsisLabel object associated with the cube.
int size() const
Returns the number of values stored in this keyword.
Adds specific functionality to C++ strings.
int ReferenceBand() const
Returns the reference band.
LineScanCameraDetectorMap * DetectorMap()
Returns a pointer to the LineScanCameraDetectorMap object.
QString m_spacecraftNameShort
Shortened spacecraft name.
void SetFocalLength()
Reads the focal length from the instrument kernel.
This is free and unencumbered software released into the public domain.
Convert between parent image coordinates and detector coordinates.
@ User
A type of error that could only have occurred due to a mistake on the user's part (e....