|
Isis 3.0 Application Source Code Reference |
Home |
Obtain SPICE rotation information for a body. More...
#include <LineScanCameraRotation.h>
Public Member Functions | |
| LineScanCameraRotation (int frameCode, Isis::Pvl &lab, std::vector< double > timeCache, double tol) | |
| Constructors. | |
| virtual | ~LineScanCameraRotation () |
| Destructor. | |
| void | LoadCache () |
| Cache J2000 rotation quaternion over a time range. | |
| void | SetJitter (PixelOffset *jitter) |
| void | ReloadCache () |
| Cache J2000 rotation over existing cached time range using polynomials. | |
| void | ResetPitchRate (double pitchRate) |
| void | ResetYaw (double yaw) |
| Isis::PvlKeyword | InstrumentPointingValue () |
Obtain SPICE rotation information for a body.
This class will obtain the rotation from J2000 to the ICR frame (with axes (defined in direction of in track, cross track, and radial) for HiRise.
It is essentially used to convert position vectors from one frame to another, making it is a C++ wrapper to the NAIF routines pxform_c and mxv or mtxv. Therefore, appropriate NAIF kernels are expected to be loaded prior to using this class. A position can be returned in either the J2000 frame or the selected reference frame. See NAIF required reading for more information regarding this subject at ftp://naif.jpl.nasa.gov/pub/naif/toolkit_docs/C/ascii/individual_docs/spk.req
An important functionality of this class is the ability to cache the rotations so they do not have to be constantly read from the NAIF kernels and they can be more conveniently updated. Once the data is cached, the NAIF kernels can be unloaded.
Definition at line 104 of file LineScanCameraRotation.h.
| LineScanCameraRotation | ( | int | frameCode, | |
| Isis::Pvl & | lab, | |||
| std::vector< double > | timeCache, | |||
| double | tol | |||
| ) |
Constructors.
Construct an empty SpiceRotation class using a valid Naif frame code to set up for getting rotation from Spice kernels.
See required reading ftp://naif.jpl.nasa.gov/pub/naif/toolkit_docs/C/ascii/individual_docs/naif_ids.req
| frameCode | Valid naif frame code. |
Definition at line 34 of file LineScanCameraRotation.cpp.
| ~LineScanCameraRotation | ( | ) | [virtual] |
Destructor.
Destroys the LineScanComeraRotation object.
Definition at line 75 of file LineScanCameraRotation.cpp.
| void LoadCache | ( | ) |
Cache J2000 rotation quaternion over a time range.
This method will load an internal cache with frames over a time range. This prevents the NAIF kernels from being read over-and-over again and slowing an application down due to I/O performance. Once the cache has been loaded then the kernels can be unloaded from the NAIF system.
Definition at line 93 of file LineScanCameraRotation.cpp.
| void SetJitter | ( | PixelOffset * | jitter | ) | [inline] |
Definition at line 116 of file LineScanCameraRotation.h.
| void ReloadCache | ( | ) |
Cache J2000 rotation over existing cached time range using polynomials.
This method will reload an internal cache with matrices formed from rotation angles fit to polynomials over a time range.
| function1 | The first polynomial function used to find the rotation angles | |
| function2 | The second polynomial function used to find the rotation angles | |
| function3 | The third polynomial function used to find the rotation angles |
Definition at line 178 of file LineScanCameraRotation.cpp.
| void ResetPitchRate | ( | double | pitchRate | ) | [inline] |
Definition at line 122 of file LineScanCameraRotation.h.
| void ResetYaw | ( | double | yaw | ) | [inline] |
Definition at line 126 of file LineScanCameraRotation.h.
| Isis::PvlKeyword InstrumentPointingValue | ( | ) | [inline] |
Definition at line 130 of file LineScanCameraRotation.h.