Isis Developer Reference
Isis::CSMCamera Class Reference

#include <CSMCamera.h>

Inheritance diagram for Isis::CSMCamera:
Inheritance graph
Collaboration diagram for Isis::CSMCamera:
Collaboration graph

Public Types

enum  CameraType {
  Framing , PushFrame , LineScan , Radar ,
  Point , RollingShutter , Csm
}
 This enum defines the types of cameras supported in this class. More...
 

Public Member Functions

 CSMCamera (Cube &cube)
 Constructor for an ISIS Camera model that uses a Community Sensor Model (CSM) for the principal transformations.
 
 ~CSMCamera ()
 Destroys the CSMCamera object.
 
virtual CameraType GetCameraType () const
 The CSM camera needs a bogus type for now.
 
virtual int CkFrameId () const
 CK frame ID - - Instrument Code from spacit run on CK.
 
virtual int CkReferenceId () const
 CK Reference ID - J2000.
 
virtual int SpkCenterId () const
 SPK Center ID - 6 (Saturn)
 
virtual int SpkReferenceId () const
 SPK Reference ID - J2000.
 
virtual QList< QPointF > PixelIfovOffsets ()
 Returns the pixel ifov offsets from center of pixel.
 
virtual bool SetImage (const double sample, const double line)
 Set the image sample and line for the Camera Model and then compute the corresponding image time, look vector, and ground point.
 
virtual bool SetGround (Latitude latitude, Longitude longitude)
 Set the latitude and longitude for the Camera Model and then compute the corresponding image time, look vector, and image coordinate.
 
virtual bool SetGround (const SurfacePoint &surfacePt)
 Set the ground point for the Camera Model and then compute the corresponding image time, look vector, and image coordinate.
 
virtual bool SetUniversalGround (const double latitude, const double longitude)
 Set the latitude and longitude for the Camera Model and then compute the corresponding image time, look vector, and image coordinate.
 
virtual bool SetUniversalGround (const double latitude, const double longitude, double radius)
 Set the latitude, longitude, and radius for the Camera Model and then compute the corresponding image time, look vector, and image coordinate.
 
virtual bool SetRightAscensionDeclination (const double ra, const double dec)
 Given the ra/dec compute the look direction.
 
virtual void setTime (const iTime &time)
 Set the time and update the sensor position and orientation.
 
virtual bool SetLookDirection (const std::vector< double > lookB)
 Sets the look direction of the spacecraft.
 
virtual double CelestialNorthClockAngle ()
 Computes the celestial north clock angle at the current line/sample or ra/dec.
 
virtual double LineResolution ()
 Compute the line resolution in meters per pixel for the current set point.
 
virtual double SampleResolution ()
 Compute the sample resolution in meters per pixel for the current set point.
 
virtual double DetectorResolution ()
 Compute the detector resolution in meters per pixel for the current set point.
 
virtual double ObliqueLineResolution (bool useLocal=true)
 Compute the oblique line resolution in meters per pixel for the current set point.
 
virtual double ObliqueSampleResolution (bool useLocal=true)
 Compute the oblique sample resolution in meters per pixel for the current set point.
 
virtual double ObliqueDetectorResolution (bool useLocal=true)
 Compute the oblique detector resolution in meters per pixel for the current set point.
 
virtual double parentLine () const
 Returns the currently set parent line for the camera model.
 
virtual double parentSample () const
 Returns the currently set parent sample for the camera model.
 
virtual void subSpacecraftPoint (double &lat, double &lon)
 Get the latitude and longitude of the sub-spacecraft point at the currently set time.
 
virtual void subSpacecraftPoint (double &lat, double &lon, double line, double sample)
 Get the latitude and longitude of the sub-spacecraft point at the an image coordinate.
 
virtual void subSolarPoint (double &lat, double &lon)
 Returns the sub-solar latitude/longitude in universal coordinates (0-360 positive east, ocentric).
 
virtual double PhaseAngle () const
 Compute the phase angle at the currently set ground point.
 
virtual double EmissionAngle () const
 Compute the emission angle at the currently set ground point.
 
virtual double IncidenceAngle () const
 Compute the incidence angle at the currently set ground point.
 
virtual SpicePositionsunPosition () const
 Get the SpicePosition object that contains the state information for the sun in J2000.
 
virtual SpicePositioninstrumentPosition () const
 Get the SpicePosition object the contains the state information for the sensor in J2000.
 
virtual SpiceRotationbodyRotation () const
 Get the SpiceRotation object the contains the orientation of the target body relative to J2000.
 
virtual SpiceRotationinstrumentRotation () const
 Get the SpiceRotation object the contains the orientation of the sensor relative to J2000.
 
virtual void instrumentBodyFixedPosition (double p[3]) const
 Get the position of the sensor in the body fixed coordinate system at the currently set time.
 
virtual void sunPosition (double p[3]) const
 Get the body fixed position of the sun in kilometers.
 
virtual double SolarDistance () const
 Computes the distance to the sun from the currently set ground point.
 
virtual double SlantDistance () const
 Compute the slant distance from the sensor to the ground point at the currently set time.
 
virtual double targetCenterDistance () const
 Calculates and returns the distance from the spacecraft to the target center at the currently set time.
 
virtual double RightAscension ()
 Computes the Right Ascension of the currently set image coordinate.
 
virtual double Declination ()
 Computes the Declination of the currently set image coordinate.
 
std::vector< int > getParameterIndices (csm::param::Set paramSet) const
 Get the indices of the parameters that belong to a set.
 
std::vector< int > getParameterIndices (csm::param::Type paramType) const
 Get the indices of all parameters of a specific type.
 
std::vector< int > getParameterIndices (QStringList paramList) const
 Get the indices of a list of parameters.
 
void applyParameterCorrection (int index, double correction)
 Adjust the value of a parameter.
 
double getParameterCovariance (int index1, int index2)
 Get the covariance between two parameters.
 
QString getParameterName (int index)
 Get the name of the parameter.
 
QString getParameterUnits (int index)
 Get the units of the parameter at a particular index.
 
double getParameterValue (int index)
 Get the value of a parameter.
 
std::vector< double > getSensorPartials (int index, SurfacePoint groundPoint)
 
virtual std::vector< double > GroundPartials (SurfacePoint groundPoint)
 Compute the partial derivatives of the sample, line with respect to the x, y, z coordinates of the ground point.
 
virtual std::vector< double > GroundPartials ()
 Compute the partial derivatives of the sample, line with respect to the x, y, z coordinates of the ground point.
 
QString getModelState () const
 Get the CSM Model state string to re-create the CSM Model.
 
virtual bool SetImage (const double sample, const double line, const double deltaT)
 Sets the sample/line values of the image to get the lat/lon values with a time offset of deltaT.
 
bool SetUniversalGround (const double latitude, const double longitude, bool backCheck=true)
 This is the opposite routine for SetLookDirection.
 
bool SetUniversalGround (const double latitude, const double longitude, const double radius, bool backCheck=true)
 This overloaded method has the opposite function as SetLookDirection.
 
bool SetGround (const SurfacePoint &surfacePt, bool backCheck=true)
 This overloaded method has the opposite function as SetLookDirection.
 
void LocalPhotometricAngles (Angle &phase, Angle &incidence, Angle &emission, bool &success)
 Calculates LOCAL photometric angles using the DEM (not ellipsoid).
 
void Slope (double &slope, bool &success)
 Calculates the slope at the current point by computing the angle between the local surface normal and the ellipsoid surface normal.
 
void GetLocalNormal (double normal[3])
 This method will find the local normal at the current (sample, line) and set it to the passed in array.
 
bool HasProjection ()
 Checks to see if the camera object has a projection.
 
virtual bool IsBandIndependent ()
 Virtual method that checks if the band is independent.
 
int ReferenceBand () const
 Returns the reference band.
 
bool HasReferenceBand () const
 Checks to see if the Camera object has a reference band.
 
virtual void SetBand (const int band)
 Virtual method that sets the band number.
 
virtual double Sample () const
 Returns the current sample number.
 
virtual int Band () const
 Returns the current band.
 
virtual double Line () const
 Returns the current line number.
 
bool GroundRange (double &minlat, double &maxlat, double &minlon, double &maxlon, Pvl &pvl)
 Computes the Ground Range.
 
bool ringRange (double &minRingRadius, double &maxRingRadius, double &minRingLongitude, double &maxRingLongitude, Pvl &pvl)
 Analogous to the above Ground Range method.
 
bool IntersectsLongitudeDomain (Pvl &pvl)
 Checks whether the ground range intersects the longitude domain or not.
 
virtual double PixelResolution ()
 Returns the pixel resolution at the current position in meters/pixel.
 
virtual double ObliquePixelResolution (bool useLocal=true)
 Returns the oblique pixel resolution at the current position in meters/pixel.
 
virtual double resolution ()
 Returns the resolution of the camera.
 
double LowestImageResolution ()
 Returns the lowest/worst resolution in the entire image.
 
double HighestImageResolution ()
 Returns the highest/best resolution in the entire image.
 
double LowestObliqueImageResolution ()
 Returns the lowest/worst oblique resolution in the entire image.
 
double HighestObliqueImageResolution ()
 Returns the highest/best oblique resolution in the entire image.
 
void BasicMapping (Pvl &map)
 Writes the basic mapping group to the specified Pvl.
 
void basicRingMapping (Pvl &map)
 Writes the basic mapping group for ring plane to the specified Pvl.
 
double FocalLength () const
 Returns the focal length.
 
double PixelPitch () const
 Returns the pixel pitch.
 
virtual double exposureDuration () const
 Return the exposure duration for the pixel that the camera is set to.
 
virtual double exposureDuration (const double sample, const double line, const int band=-1) const
 Return the exposure duration for the pixel at the given line, sample and band.
 
int Samples () const
 Returns the number of samples in the image.
 
int Lines () const
 Returns the number of lines in the image.
 
int Bands () const
 Returns the number of bands in the image.
 
int ParentLines () const
 Returns the number of lines in the parent alphacube.
 
int ParentSamples () const
 Returns the number of samples in the parent alphacube.
 
bool RaDecRange (double &minra, double &maxra, double &mindec, double &maxdec)
 Computes the RaDec range.
 
double RaDecResolution ()
 Returns the RaDec resolution.
 
CameraDistortionMapDistortionMap ()
 Returns a pointer to the CameraDistortionMap object.
 
CameraFocalPlaneMapFocalPlaneMap ()
 Returns a pointer to the CameraFocalPlaneMap object.
 
CameraDetectorMapDetectorMap ()
 Returns a pointer to the CameraDetectorMap object.
 
CameraGroundMapGroundMap ()
 Returns a pointer to the CameraGroundMap object.
 
CameraSkyMapSkyMap ()
 Returns a pointer to the CameraSkyMap object.
 
QString instrumentId ()
 This method returns the InstrumentId as it appears in the cube.
 
QString instrumentNameLong () const
 This method returns the full instrument name.
 
QString instrumentNameShort () const
 This method returns the shortened instrument name.
 
QString spacecraftNameLong () const
 This method returns the full spacecraft name.
 
QString spacecraftNameShort () const
 This method returns the shortened spacecraft name.
 
void SetDistortionMap (CameraDistortionMap *map, bool deleteExisting=true)
 Sets the Distortion Map.
 
void SetFocalPlaneMap (CameraFocalPlaneMap *map)
 Sets the Focal Plane Map.
 
void SetDetectorMap (CameraDetectorMap *map)
 Sets the Detector Map.
 
void SetGroundMap (CameraGroundMap *map)
 Sets the Ground Map.
 
void SetSkyMap (CameraSkyMap *map)
 Sets the Sky Map.
 
double NorthAzimuth ()
 Returns the North Azimuth.
 
double SunAzimuth ()
 Returns the Sun Azimuth.
 
double SpacecraftAzimuth ()
 Return the Spacecraft Azimuth.
 
double OffNadirAngle ()
 Return the off nadir angle in degrees.
 
void IgnoreProjection (bool ignore)
 Set whether or not the camera should ignore the Projection.
 
void LoadCache ()
 This loads the spice cache big enough for this image.
 
std::pair< double, double > StartEndEphemerisTimes ()
 Calculates the start and end ephemeris times.
 
int CacheSize (double startTime, double endTime)
 This method calculates the spice cache size.
 
void GetGeometricTilingHint (int &startSize, int &endSize)
 This will get the geometric tiling hint; these values are typically used for ProcessRubberSheet::SetTiling(...).
 
bool InCube ()
 This returns true if the current Sample() or Line() value is outside of the cube (meaning the point must have been extrapolated).
 
virtual int SpkTargetId () const
 Provides target code for instruments SPK NAIF kernel.
 
bool SetLookDirection (const double v[3])
 Sets the look direction of the spacecraft.
 
bool HasSurfaceIntersection () const
 Returns if the last call to either SetLookDirection or SetUniversalGround had a valid intersection with the target.
 
void Coordinate (double p[3]) const
 Returns the x,y,z of the surface intersection in BodyFixed km.
 
virtual double UniversalLatitude () const
 Returns the planetocentric latitude, in degrees, at the surface intersection point in the body fixed coordinate system.
 
Latitude GetLatitude () const
 Returns a planetocentric latitude object at the surface intersection point in body fixed.
 
virtual double UniversalLongitude () const
 Returns the positive east, 0-360 domain longitude, in degrees, at the surface intersection point in the body fixed coordinate system.
 
Longitude GetLongitude () const
 Returns a positive east, 0-360 domain longitude object at the surface intersection point in the body fixed coordinate system.
 
virtual SurfacePoint GetSurfacePoint () const
 Returns the surface point (most efficient accessor).
 
Distance LocalRadius () const
 Returns the local radius at the intersection point.
 
Distance LocalRadius (Latitude lat, Longitude lon)
 Returns the local radius at the intersection point.
 
Distance LocalRadius (double lat, double lon)
 Returns the local radius at the intersection point.
 
void LookDirection (double v[3]) const
 Returns the look direction in the camera coordinate system.
 
virtual std::vector< double > lookDirectionJ2000 () const
 Returns the look direction in the camera coordinate system.
 
virtual std::vector< double > lookDirectionBodyFixed () const
 Returns the look direction in the body fixed coordinate system.
 
void SpacecraftSurfaceVector (double scSurfaceVector[3]) const
 Sets the vector between the spacecraft and surface point in body-fixed.
 
double LocalSolarTime ()
 Return the local solar time in hours.
 
double SpacecraftAltitude ()
 Returns the distance from the spacecraft to the subspacecraft point in km.
 
void IgnoreElevationModel (bool ignore)
 This allows you to ignore the cube elevation model and use the ellipse.
 
void instrumentPosition (double p[3]) const
 Returns the spacecraft position in body-fixed frame km units.
 
virtual double sunToBodyDist () const
 
virtual Longitude solarLongitude ()
 Returns the solar longitude.
 
virtual void instrumentBodyFixedVelocity (double v[3]) const
 Returns the spacecraft velocity in body-fixed frame km/sec units.
 
virtual iTime time () const
 Returns the ephemeris time in seconds which was used to obtain the spacecraft and sun positions.
 
void radii (Distance r[3]) const
 Returns the radii of the body in km.
 
virtual void createCache (iTime startTime, iTime endTime, const int size, double tol)
 This method creates an internal cache of spacecraft and sun positions over a specified time range.
 
virtual iTime cacheStartTime () const
 Accessor method for the cache start time.
 
virtual iTime cacheEndTime () const
 Accessor method for the cache end time.
 
virtual Targettarget () const
 Returns a pointer to the target object.
 
QString targetName () const
 Returns the QString name of the target.
 
virtual iTime getClockTime (QString clockValue, int sclkCode=-1, bool clockTicks=false)
 This converts the spacecraft clock ticks value (clockValue) to an iTime.
 
SpiceDouble getDouble (const QString &key, int index=0)
 This returns a value from the NAIF text pool.
 
SpiceInt getInteger (const QString &key, int index=0)
 This returns a value from the NAIF text pool.
 
QString getString (const QString &key, int index=0)
 This returns a value from the NAIF text pool.
 
bool isUsingAle ()
 
bool hasKernels (Pvl &lab)
 Returns true if the kernel group has kernel files.
 
bool isTimeSet ()
 Returns true if time has been initialized.
 
SpiceInt naifBodyCode () const
 This returns the NAIF body code of the target indicated in the labels.
 
SpiceInt naifSpkCode () const
 This returns the NAIF SPK code to use when reading from SPK kernels.
 
SpiceInt naifCkCode () const
 This returns the NAIF CK code to use when reading from CK kernels.
 
SpiceInt naifIkCode () const
 This returns the NAIF IK code to use when reading from instrument kernels.
 
SpiceInt naifSclkCode () const
 This returns the NAIF SCLK code to use when reading from instrument kernels.
 
SpiceInt naifBodyFrameCode () const
 This returns the NAIF body frame code.
 
PvlObject getStoredNaifKeywords () const
 This returns the PvlObject that stores all of the requested Naif data and can be a replacement for furnishing text kernels.
 

Static Public Member Functions

static double GroundAzimuth (double glat, double glon, double slat, double slon)
 Computes and returns the ground azimuth between the ground point and another point of interest, such as the subspacecraft point or the subsolar point.
 

Protected Types

enum  SpiceValueType { SpiceDoubleType , SpiceStringType , SpiceIntType , SpiceByteCodeType }
 NAIF value primitive type. More...
 

Protected Member Functions

void setTarget (Pvl label)
 Set the Target object for the camera model.
 
std::vector< double > sensorPositionBodyFixed () const
 Get the position of the sensor in the body fixed coordinate system at the currently set time.
 
std::vector< double > sensorPositionBodyFixed (double line, double sample) const
 Get the position of the sensor in the body fixed coordinate system at an image coordinate.
 
virtual void computeSolarLongitude (iTime et)
 Computes the solar longitude for the given ephemeris time.
 
void SetFocalLength (double v)
 Sets the focal length.
 
void SetFocalLength ()
 Reads the focal length from the instrument kernel.
 
void SetPixelPitch (double v)
 Sets the pixel pitch.
 
void SetPixelPitch ()
 Reads the Pixel Pitch from the instrument kernel.
 
void SetGeometricTilingHint (int startSize=128, int endSize=8)
 This method sets the best geometric tiling size for projecting from this camera model.
 
QVariant readValue (QString key, SpiceValueType type, int index=0)
 This should be used for reading ALL text naif kernel values.
 
void storeResult (QString name, SpiceValueType type, QVariant value)
 
QVariant getStoredResult (QString name, SpiceValueType type)
 
void storeValue (QString key, int index, SpiceValueType type, QVariant value)
 
QVariant readStoredValue (QString key, SpiceValueType type, int index)
 

Protected Attributes

QString m_instrumentId
 The InstrumentId as it appears on the cube.
 
QString m_instrumentNameLong
 Full instrument name.
 
QString m_instrumentNameShort
 Shortened instrument name.
 
QString m_spacecraftNameLong
 Full spacecraft name.
 
QString m_spacecraftNameShort
 Shortened spacecraft name.
 
double p_childSample
 Sample value for child.
 
double p_childLine
 Line value for child.
 
AlphaCubep_alphaCube
 A pointer to the AlphaCube.
 
bool p_pointComputed
 Flag showing if Sample/Line has been computed.
 
SpiceDouble m_lookB [3]
 Look direction in body fixed.
 
bool m_newLookB
 flag to indicate we need to recompute ra/dec
 
SpiceDouble m_uB [3]
 This contains the sun position (u) in the bodyfixed reference frame (B).
 
SpiceDouble m_BJ [3][3]
 This contains the transformation matrix from J2000 (J) to Body fixed (B).
 
Targetm_target
 Target of the observation.
 
iTimem_et
 Ephemeris time (read NAIF documentation for a detailed description)
 

Member Enumeration Documentation

◆ CameraType

enum Isis::Camera::CameraType
inherited

This enum defines the types of cameras supported in this class.

Enumerator
Framing 

Framing Camera.

PushFrame 

Push Frame Camera.

LineScan 

Line Scan Camera.

Radar 

Radar Camera.

Point 

Point Camera.

RollingShutter 

RollingShutter.

Csm 

Community Sensor Model Camera.

◆ SpiceValueType

enum Isis::Spice::SpiceValueType
protectedinherited

NAIF value primitive type.

Enumerator
SpiceDoubleType 

SpiceDouble type.

SpiceStringType 

SpiceString type.

SpiceIntType 

SpiceInt type.

SpiceByteCodeType 

SpiceByteCode type.

Constructor & Destructor Documentation

◆ CSMCamera()

Isis::CSMCamera::CSMCamera ( Cube & cube)

Constructor for an ISIS Camera model that uses a Community Sensor Model (CSM) for the principal transformations.

Parameters
cubeThe Cube containing image data and CSM Model information for the ISIS Camera Model.

References Isis::PvlObject::findKeyword(), Isis::Blob::getBuffer(), Isis::Blob::Label(), Isis::Cube::read(), and Isis::Blob::Size().

◆ ~CSMCamera()

Isis::CSMCamera::~CSMCamera ( )
inline

Destroys the CSMCamera object.

Member Function Documentation

◆ applyParameterCorrection()

void Isis::CSMCamera::applyParameterCorrection ( int index,
double correction )

Adjust the value of a parameter.

Parameters
indexThe index of the parameter to update
correctionValue to add to the parameter's current value

Referenced by Isis::CsmBundleObservation::applyParameterCorrections().

◆ Band()

int Isis::Camera::Band ( ) const
virtualinherited

◆ Bands()

int Isis::Camera::Bands ( ) const
inherited

Returns the number of bands in the image.

Returns
int Number of Bands

Referenced by Isis::LroWideAngleCamera::SetBand(), Isis::MarciCamera::SetBand(), and Isis::Camera::StartEndEphemerisTimes().

◆ BasicMapping()

void Isis::Camera::BasicMapping ( Pvl & pvl)
inherited

Writes the basic mapping group to the specified Pvl.

Parameters
pvlPvl to write mapping group to

References Isis::Spice::radii(), Isis::Spice::target(), and Isis::toString().

Referenced by Isis::GroundGrid::GroundGrid().

◆ basicRingMapping()

void Isis::Camera::basicRingMapping ( Pvl & pvl)
inherited

Writes the basic mapping group for ring plane to the specified Pvl.

Parameters
pvlPvl to write mapping group to

References _FILEINFO_, Isis::Spice::target(), Isis::toString(), and Isis::IException::User.

◆ bodyRotation()

SpiceRotation * Isis::CSMCamera::bodyRotation ( ) const
virtual

Get the SpiceRotation object the contains the orientation of the target body relative to J2000.

This is not supported for CSM sensors because the CSM API only supports the body fixed coordinate system and does not provide rotations to any others.

Returns
SpiceRotation* A pointer to the SpiceRotation object for the body orientation

Reimplemented from Isis::Spice.

References _FILEINFO_, and Isis::IException::Programmer.

◆ cacheEndTime()

iTime Isis::Spice::cacheEndTime ( ) const
virtualinherited

Accessor method for the cache end time.

Returns
iTime End time for the image.
Author
Steven Lambright

◆ CacheSize()

int Isis::Camera::CacheSize ( double startTime,
double endTime )
inherited

This method calculates the spice cache size.

This method finds the number of lines in the beta cube and adds 1, since we need at least 2 points for interpolation. This method must be called before a call to the Spice::createCache() method. It is called in the LoadCache() method.

Parameters
startTimeStarting ephemeris time to cache
endTimeEnding ephemeris time to cache
Returns
int The calculated spice cache size
Exceptions
iException::Programmer- "A cache has already been created."
See also
createCache()
LoadCache()
Author
2011-02-02 Jeannie Walldren

References Isis::AlphaCube::BetaLines(), and Isis::Camera::p_alphaCube.

Referenced by Isis::Camera::LoadCache().

◆ cacheStartTime()

iTime Isis::Spice::cacheStartTime ( ) const
virtualinherited

Accessor method for the cache start time.

Returns
iTime Start time for the image.
Author
Steven Lambright

◆ CelestialNorthClockAngle()

double Isis::CSMCamera::CelestialNorthClockAngle ( )
virtual

Computes the celestial north clock angle at the current line/sample or ra/dec.

The reference vector is a vecor from the current pixel pointed directly "upward". Celetial North is a vector from the current pixel poiting towards celetial north. The Celestial North Clock Angle is the angle between these two vectors on the image.

Returns
double The resultant Celestial North Clock Angle

References Declination(), Isis::Camera::Line(), Isis::PI, Isis::Camera::RaDecResolution(), RightAscension(), Isis::Camera::Sample(), SetImage(), and SetRightAscensionDeclination().

◆ CkFrameId()

virtual int Isis::CSMCamera::CkFrameId ( ) const
inlinevirtual

CK frame ID - - Instrument Code from spacit run on CK.

Returns
int The appropriate instrument code for the "Camera-matrix" Kernel Frame ID

Implements Isis::Camera.

◆ CkReferenceId()

virtual int Isis::CSMCamera::CkReferenceId ( ) const
inlinevirtual

CK Reference ID - J2000.

Returns
int The appropriate instrument code for the "Camera-matrix" Kernel Reference ID

Implements Isis::Camera.

◆ computeSolarLongitude()

void Isis::CSMCamera::computeSolarLongitude ( iTime et)
protectedvirtual

Computes the solar longitude for the given ephemeris time.

If the target is sky, the longitude is set to -999.0.

This is not supported for CSM models because we cannot get the sun position.

Parameters
etEphemeris time

Reimplemented from Isis::Spice.

References _FILEINFO_, and Isis::IException::Programmer.

◆ Coordinate()

void Isis::Sensor::Coordinate ( double p[3]) const
inherited

◆ createCache()

void Isis::Spice::createCache ( iTime startTime,
iTime endTime,
const int size,
double tol )
virtualinherited

This method creates an internal cache of spacecraft and sun positions over a specified time range.

The SPICE kernels are then immediately unloaded. This allows multiple instances of the Spice object to be created as the NAIF toolkit can clash if multiple sets of SPICE kernels are loaded. Note that the cache size is specified as an argument. Therefore, times requested via setTime() which are not directly loaded in the cache will be interpolated. If the instrument position is not cached and cacheSize is greater than 3, the tolerance is passed to the SpicePosition Memcache2HermiteCache() method.

Note: Before this method is called, the private variables m_cacheSize, m_startTime and m_endTime must be set. This is done in the Camera classes using the methods SetCacheSize() and SetStartEndEphemerisTime().

Parameters
startTimeStarting ephemeris time to cache
endTimeEnding ephemeris time to cache
sizeSize of the cache.
tolTolerance.
Exceptions
Isis::IException::Programmer- "Argument cacheSize must be greater than zero"
Isis::IException::Programmer- "Argument startTime must be less than or equal to endTime"
Isis::IException::User- "This instrument does not support time padding"

References _FILEINFO_, Isis::SpicePosition::cacheSize(), Isis::NaifStatus::CheckErrors(), Isis::Spice::computeSolarLongitude(), Isis::iTime::Et(), Isis::SpicePosition::GetSource(), Isis::SpiceRotation::GetSource(), Isis::SpicePosition::HasVelocity(), Isis::Spice::instrumentPosition(), Isis::SpicePosition::IsCached(), Isis::SpiceRotation::IsCached(), Isis::Spice::isUsingAle(), Isis::SpicePosition::LoadCache(), Isis::SpiceRotation::LoadCache(), Isis::Spice::m_et, Isis::SpicePosition::Memcache, Isis::SpiceRotation::Memcache, Isis::SpicePosition::Memcache2HermiteCache(), Isis::SpiceRotation::MinimizeCache(), Isis::IException::Programmer, Isis::IException::User, and Isis::SpiceRotation::Yes.

Referenced by Isis::CrismCamera::CrismCamera(), Isis::Camera::LoadCache(), and Isis::MiniRF::MiniRF().

◆ Declination()

double Isis::CSMCamera::Declination ( )
virtual

Computes the Declination of the currently set image coordinate.

Returns
double The Declination

Reimplemented from Isis::Sensor.

References Isis::Camera::p_childLine, Isis::Camera::p_childSample, and Isis::RAD2DEG.

Referenced by CelestialNorthClockAngle().

◆ DetectorMap()

◆ DetectorResolution()

double Isis::CSMCamera::DetectorResolution ( )
virtual

Compute the detector resolution in meters per pixel for the current set point.

CSM sensor models do not expose all of the necessary parameters to do the same calculation as ISIS sensor models, so this uses a more time consuming but more accurate method and thus is equivalent to the oblique detector resolution.

Returns
double The detector resolution in meters per pixel

Reimplemented from Isis::Camera.

References Isis::Sensor::HasSurfaceIntersection(), and Isis::Null.

Referenced by ObliqueDetectorResolution().

◆ DistortionMap()

◆ EmissionAngle()

double Isis::CSMCamera::EmissionAngle ( ) const
virtual

Compute the emission angle at the currently set ground point.

Returns
double The emission angle in degrees

Reimplemented from Isis::Sensor.

References sensorPositionBodyFixed(), and Isis::Spice::target().

◆ exposureDuration() [1/2]

double Isis::Camera::exposureDuration ( ) const
virtualinherited

Return the exposure duration for the pixel that the camera is set to.

Returns
double The exposure duration in seconds for the pixel that the camera is set to.

References Isis::CameraDetectorMap::exposureDuration(), Isis::Camera::p_childLine, and Isis::Camera::p_childSample.

Referenced by Isis::DawnFcCamera::DawnFcCamera(), Isis::HayabusaAmicaCamera::HayabusaAmicaCamera(), Isis::HayabusaNirsCamera::HayabusaNirsCamera(), Isis::HiresCamera::HiresCamera(), Isis::Hyb2OncCamera::Hyb2OncCamera(), Isis::IdealCamera::IdealCamera(), Isis::IssNACamera::IssNACamera(), Isis::IssWACamera::IssWACamera(), Isis::PixelFOV::latLonVertices(), Isis::LwirCamera::LwirCamera(), Isis::MdisCamera::MdisCamera(), Isis::MsiCamera::MsiCamera(), Isis::NewHorizonsLorriCamera::NewHorizonsLorriCamera(), Isis::NirCamera::NirCamera(), Isis::OsirisRexOcamsCamera::OsirisRexOcamsCamera(), Isis::ApolloMetricCamera::ShutterOpenCloseTimes(), Isis::IssNACamera::ShutterOpenCloseTimes(), Isis::IssWACamera::ShutterOpenCloseTimes(), Isis::HiresCamera::ShutterOpenCloseTimes(), Isis::LwirCamera::ShutterOpenCloseTimes(), Isis::NirCamera::ShutterOpenCloseTimes(), Isis::UvvisCamera::ShutterOpenCloseTimes(), Isis::ClipperWacFcCamera::ShutterOpenCloseTimes(), Isis::DawnFcCamera::ShutterOpenCloseTimes(), Isis::SsiCamera::ShutterOpenCloseTimes(), Isis::HayabusaAmicaCamera::ShutterOpenCloseTimes(), Isis::HayabusaNirsCamera::ShutterOpenCloseTimes(), Isis::Hyb2OncCamera::ShutterOpenCloseTimes(), Isis::JunoCamera::ShutterOpenCloseTimes(), Isis::LoHighCamera::ShutterOpenCloseTimes(), Isis::LoMediumCamera::ShutterOpenCloseTimes(), Isis::Mariner10Camera::ShutterOpenCloseTimes(), Isis::MdisCamera::ShutterOpenCloseTimes(), Isis::MexHrscSrcCamera::ShutterOpenCloseTimes(), Isis::MsiCamera::ShutterOpenCloseTimes(), Isis::NewHorizonsLorriCamera::ShutterOpenCloseTimes(), Isis::NewHorizonsMvicFrameCamera::ShutterOpenCloseTimes(), Isis::OsirisRexOcamsCamera::ShutterOpenCloseTimes(), Isis::RosettaOsirisCamera::ShutterOpenCloseTimes(), Isis::TgoCassisCamera::ShutterOpenCloseTimes(), Isis::VikingCamera::ShutterOpenCloseTimes(), Isis::VoyagerCamera::ShutterOpenCloseTimes(), Isis::FramingCamera::ShutterOpenCloseTimes(), Isis::SsiCamera::SsiCamera(), Isis::UvvisCamera::UvvisCamera(), Isis::VikingCamera::VikingCamera(), and Isis::VoyagerCamera::VoyagerCamera().

◆ exposureDuration() [2/2]

double Isis::Camera::exposureDuration ( const double sample,
const double line,
const int band = -1 ) const
virtualinherited

Return the exposure duration for the pixel at the given line, sample and band.

Parameters
sampleThe sample of the desired pixel.
lineThe line of the desired pixel.
bandThe band of the desired pixel. Defaults to 1.
Returns
double The exposure duration for the desired pixel in seconds.

References Isis::CameraDetectorMap::exposureDuration().

◆ FocalLength()

◆ FocalPlaneMap()

◆ GetCameraType()

virtual CameraType Isis::CSMCamera::GetCameraType ( ) const
inlinevirtual

The CSM camera needs a bogus type for now.

Returns
CameraType Camera::Point

Implements Isis::Camera.

References Isis::Camera::Csm.

◆ getClockTime()

iTime Isis::Spice::getClockTime ( QString clockValue,
int sclkCode = -1,
bool clockTicks = false )
virtualinherited

This converts the spacecraft clock ticks value (clockValue) to an iTime.

If the clock ticks value is provided directly, rather than the spacecraft clock string, set clockTicks=true.

Use this when possible because naif calls (such as scs2e_c) cannot be called when not using naif.

References Isis::NaifStatus::CheckErrors(), Isis::Spice::getStoredResult(), Isis::Spice::naifSclkCode(), Isis::Spice::SpiceDoubleType, Isis::Spice::storeResult(), and Isis::toString().

Referenced by Isis::Chandrayaan1M3Camera::Chandrayaan1M3Camera(), Isis::CTXCamera::CTXCamera(), Isis::DawnFcCamera::DawnFcCamera(), Isis::HayabusaAmicaCamera::HayabusaAmicaCamera(), Isis::HayabusaNirsCamera::HayabusaNirsCamera(), Isis::HiriseCamera::HiriseCamera(), Isis::Hyb2OncCamera::Hyb2OncCamera(), Isis::VimsGroundMap::Init(), Isis::VimsSkyMap::Init(), Isis::JunoCamera::JunoCamera(), Isis::KaguyaTcCamera::KaguyaTcCamera(), Isis::LroNarrowAngleCamera::LroNarrowAngleCamera(), Isis::LroWideAngleCamera::LroWideAngleCamera(), Isis::MarciCamera::MarciCamera(), Isis::MdisCamera::MdisCamera(), Isis::MocNarrowAngleCamera::MocNarrowAngleCamera(), Isis::MocWideAngleCamera::MocWideAngleCamera(), Isis::MsiCamera::MsiCamera(), Isis::NewHorizonsLeisaCamera::NewHorizonsLeisaCamera(), Isis::NewHorizonsLorriCamera::NewHorizonsLorriCamera(), Isis::NewHorizonsMvicFrameCamera::NewHorizonsMvicFrameCamera(), Isis::NewHorizonsMvicTdiCamera::NewHorizonsMvicTdiCamera(), Isis::OsirisRexOcamsCamera::OsirisRexOcamsCamera(), Isis::RosettaOsirisCamera::RosettaOsirisCamera(), Isis::ThemisIrCamera::ThemisIrCamera(), Isis::ThemisVisCamera::ThemisVisCamera(), Isis::VikingCamera::VikingCamera(), and Isis::VimsCamera::VimsCamera().

◆ getDouble()

SpiceDouble Isis::Spice::getDouble ( const QString & key,
int index = 0 )
inherited

This returns a value from the NAIF text pool.

It is a static convience method

Parameters
keyName of NAIF keyword to obtain from the pool
indexIf the keyword is an array, the element to obtain. Defaults to 0
Returns
SpiceDouble Spice double from NAIF text pool
Exceptions
Isis::iException::Io- "Can not find key in instrument kernels."

References Isis::Spice::readValue(), and Isis::Spice::SpiceDoubleType.

Referenced by Isis::LroWideAngleCameraDistortionMap::addFilter(), Isis::LroWideAngleCameraFocalPlaneMap::addFilter(), Isis::ApolloMetricCamera::ApolloMetricCamera(), Isis::ApolloPanoramicCamera::ApolloPanoramicCamera(), Isis::Chandrayaan1M3Camera::Chandrayaan1M3Camera(), Isis::ClipperPushBroomCamera::ClipperPushBroomCamera(), Isis::CrismCamera::CrismCamera(), Isis::CTXCamera::CTXCamera(), Isis::DawnFcCamera::DawnFcCamera(), Isis::DawnVirCamera::DawnVirCamera(), Isis::HayabusaAmicaCamera::HayabusaAmicaCamera(), Isis::HayabusaNirsCamera::HayabusaNirsCamera(), Isis::HiresCamera::HiresCamera(), Isis::HrscCamera::HrscCamera(), Isis::Hyb2OncCamera::Hyb2OncCamera(), Isis::RosettaOsirisCamera::initDistortion(), Isis::IssNACamera::IssNACamera(), Isis::IssWACamera::IssWACamera(), Isis::JunoCamera::JunoCamera(), Isis::KaguyaMiCamera::KaguyaMiCamera(), Isis::KaguyaTcCamera::KaguyaTcCamera(), Isis::KaguyaTcCameraDistortionMap::KaguyaTcCameraDistortionMap(), Isis::LroNarrowAngleCamera::LroNarrowAngleCamera(), Isis::LroWideAngleCamera::LroWideAngleCamera(), Isis::LwirCamera::LwirCamera(), Isis::MarciCamera::MarciCamera(), Isis::MarciDistortionMap::MarciDistortionMap(), Isis::Mariner10Camera::Mariner10Camera(), Isis::MdisCamera::MdisCamera(), Isis::MexHrscSrcCamera::MexHrscSrcCamera(), Isis::MsiCamera::MsiCamera(), Isis::NewHorizonsLorriCamera::NewHorizonsLorriCamera(), Isis::NewHorizonsMvicFrameCamera::NewHorizonsMvicFrameCamera(), Isis::NewHorizonsMvicTdiCamera::NewHorizonsMvicTdiCamera(), Isis::NirCamera::NirCamera(), Isis::OsirisRexOcamsCamera::OsirisRexOcamsCamera(), Isis::RosettaOsirisCamera::RosettaOsirisCamera(), Isis::RosettaVirtisCamera::RosettaVirtisCamera(), Isis::KaguyaMiCameraDistortionMap::SetDistortion(), Isis::LroNarrowAngleDistortionMap::SetDistortion(), Isis::TaylorCameraDistortionMap::SetDistortion(), Isis::Camera::SetFocalLength(), Isis::Camera::SetPixelPitch(), Isis::SsiCamera::SsiCamera(), Isis::TgoCassisCamera::TgoCassisCamera(), Isis::TgoCassisDistortionMap::TgoCassisDistortionMap(), and Isis::UvvisCamera::UvvisCamera().

◆ GetGeometricTilingHint()

void Isis::Camera::GetGeometricTilingHint ( int & startSize,
int & endSize )
inherited

This will get the geometric tiling hint; these values are typically used for ProcessRubberSheet::SetTiling(...).

Parameters
startSizeTiling start size
endSizeTiling end size

◆ getInteger()

SpiceInt Isis::Spice::getInteger ( const QString & key,
int index = 0 )
inherited

This returns a value from the NAIF text pool.

It is a static convience

Parameters
keyName of NAIF keyword to obtain from the pool
indexIf the keyword is an array, the element to obtain. Defaults to 0
Returns
SpiceInt Spice integer from NAIF text pool
Exceptions
Isis::iException::Io- "Can not find key in instrument kernels

References Isis::Spice::readValue(), and Isis::Spice::SpiceIntType.

Referenced by Isis::IssNACamera::IssNACamera(), Isis::IssWACamera::IssWACamera(), and Isis::LroWideAngleCamera::LroWideAngleCamera().

◆ GetLatitude()

Latitude Isis::Sensor::GetLatitude ( ) const
inherited

Returns a planetocentric latitude object at the surface intersection point in body fixed.

Returns
Latidude Universal latitude object.

References Isis::Spice::target().

Referenced by Isis::ControlNetFilter::PointLatLonFilter(), and Isis::Sensor::UniversalLatitude().

◆ GetLocalNormal()

void Isis::Camera::GetLocalNormal ( double normal[3])
inherited

This method will find the local normal at the current (sample, line) and set it to the passed in array.

Parameters
[out]normalThe local normal vector to be calculated.

References Isis::SurfacePoint::GetLatitude(), Isis::SurfacePoint::GetLongitude(), Isis::Sensor::GetSurfacePoint(), Isis::Camera::Line(), Isis::Sensor::LocalRadius(), Isis::Camera::p_pointComputed, Isis::Camera::Sample(), Isis::Camera::SetImage(), and Isis::Spice::target().

Referenced by Isis::Camera::LocalPhotometricAngles(), and Isis::Camera::Slope().

◆ GetLongitude()

Longitude Isis::Sensor::GetLongitude ( ) const
inherited

Returns a positive east, 0-360 domain longitude object at the surface intersection point in the body fixed coordinate system.

Returns
Longitude Universal longitude object.

References Isis::Spice::target().

Referenced by Isis::Sensor::UniversalLongitude().

◆ getModelState()

QString Isis::CSMCamera::getModelState ( ) const

Get the CSM Model state string to re-create the CSM Model.

Returns
QString The CSM Model state string

Referenced by Isis::BundleAdjust::modelState().

◆ getParameterCovariance()

double Isis::CSMCamera::getParameterCovariance ( int index1,
int index2 )

Get the covariance between two parameters.

Parameters
index1The index of the first parameter
index2The index of the second parameter

◆ getParameterIndices() [1/3]

std::vector< int > Isis::CSMCamera::getParameterIndices ( csm::param::Set paramSet) const

Get the indices of the parameters that belong to a set.

Parameters
paramSetThe set of indices to get
Returns
std::vector<int> Vector of the parameter indices

◆ getParameterIndices() [2/3]

std::vector< int > Isis::CSMCamera::getParameterIndices ( csm::param::Type paramType) const

Get the indices of all parameters of a specific type.

Parameters
paramTypeThe type of parameters to get the indices of
Returns
std::vector<int> Vector of the parameter indices

◆ getParameterIndices() [3/3]

std::vector< int > Isis::CSMCamera::getParameterIndices ( QStringList paramList) const

Get the indices of a list of parameters.

Parameters
paramTypeThe list of parameters to get the indices of
Returns
std::vector<int> Vector of the parameter indices in the same order as the input list

References _FILEINFO_, and Isis::IException::User.

◆ getParameterName()

QString Isis::CSMCamera::getParameterName ( int index)

Get the name of the parameter.

Parameters
indexThe index of parameter
Returns
QString name of the parameter at index

◆ getParameterUnits()

QString Isis::CSMCamera::getParameterUnits ( int index)

Get the units of the parameter at a particular index.

Parameters
indexThe index of parameter
Returns
QString units of the parameter at index

◆ getParameterValue()

double Isis::CSMCamera::getParameterValue ( int index)

Get the value of a parameter.

Parameters
indexThe index of the parameter
Returns
double value of the parameter at index

Referenced by Isis::CsmBundleObservation::bundleOutputCSV().

◆ getSensorPartials()

vector< double > Isis::CSMCamera::getSensorPartials ( int index,
SurfacePoint groundPoint )

◆ getStoredNaifKeywords()

PvlObject Isis::Spice::getStoredNaifKeywords ( ) const
inherited

This returns the PvlObject that stores all of the requested Naif data and can be a replacement for furnishing text kernels.

Referenced by Isis::Cube::attachSpiceFromIsd().

◆ getStoredResult()

QVariant Isis::Spice::getStoredResult ( QString name,
SpiceValueType type )
protectedinherited

◆ getString()

QString Isis::Spice::getString ( const QString & key,
int index = 0 )
inherited

This returns a value from the NAIF text pool.

It is a static convience method

Parameters
keyName of NAIF keyword to obtain from the pool
indexIf the keyword is an array, the element to obtain. Defaults to 0
Returns
QString Value from the NAIF text pool
Exceptions
Isis::IException::Io- "Can not find key in instrument kernels."

References Isis::Spice::readValue(), and Isis::Spice::SpiceStringType.

Referenced by Isis::LightTimeCorrectionState::checkAberrationCorrection(), Isis::LightTimeCorrectionState::checkLightTimeToSurfaceCorrect(), Isis::LightTimeCorrectionState::checkObserverTargetSwap(), Isis::MdisCamera::MdisCamera(), and Isis::NewHorizonsLorriCamera::NewHorizonsLorriCamera().

◆ GetSurfacePoint()

SurfacePoint Isis::Sensor::GetSurfacePoint ( ) const
virtualinherited

Returns the surface point (most efficient accessor).

Returns
SurfacePoint Coordinate for the surface intersection.

References Isis::Spice::target().

Referenced by Isis::Camera::GetLocalNormal(), Isis::IsisSensor::getState(), GroundPartials(), IncidenceAngle(), Isis::Camera::LocalPhotometricAngles(), PhaseAngle(), and SlantDistance().

◆ GroundAzimuth()

double Isis::Camera::GroundAzimuth ( double glat,
double glon,
double slat,
double slon )
staticinherited

Computes and returns the ground azimuth between the ground point and another point of interest, such as the subspacecraft point or the subsolar point.

The ground azimuth is the clockwise angle on the ground between a line drawn from the ground point to the North pole of the body and a line drawn from the selected point on the surface to some point of interest on the surface (such as the subsolar point or the subspacecraft point).

Note: This is different from the image azimuth algorithm used in ComputeAzimuth(). For ground azimuths, the initial ray of the angle is the vector from the selected ground point to the north pole. For image azimuths, the initial ray is the vector from the selected image location to the right, horizontally.

Parameters
glatThe latitude of the ground point
glonThe longitude of the ground point
slatThe latitude of the subspacecraft or subsolar point
slonThe longitude of the subspacecraft or subsolar point
Returns
double The azimuth in degrees

References Isis::PI.

◆ GroundMap()

CameraGroundMap * Isis::Camera::GroundMap ( )
inherited

◆ GroundPartials() [1/2]

vector< double > Isis::CSMCamera::GroundPartials ( )
virtual

Compute the partial derivatives of the sample, line with respect to the x, y, z coordinates of the ground point.

The resultant partials are line WRT x line WRT y line WRT z sample WRT x sample WRT y sample WRT z

Returns
std::vector<double> The partial derivatives of the sample, line with respect to the ground coordinate.

References Isis::Sensor::GetSurfacePoint(), and GroundPartials().

Referenced by GroundPartials().

◆ GroundPartials() [2/2]

vector< double > Isis::CSMCamera::GroundPartials ( SurfacePoint groundPoint)
virtual

Compute the partial derivatives of the sample, line with respect to the x, y, z coordinates of the ground point.

The resultant partials are line WRT x line WRT y line WRT z sample WRT x sample WRT y sample WRT z

Parameters
groundPointThe ground point to compute the partials at
Returns
std::vector<double> The partial derivatives of the sample, line with respect to the ground coordinate.

◆ GroundRange()

bool Isis::Camera::GroundRange ( double & minlat,
double & maxlat,
double & minlon,
double & maxlon,
Pvl & pvl )
inherited

Computes the Ground Range.

Parameters
minlatThe minimum latitude
maxlatThe maximum latitude
minlonThe minimum longitude
maxlonThe maximum longitude
pvlThe pvl file used for ground range calculations
Returns
bool Returns true if it crosses the longitude domain boundary and false if it does not

References Isis::Distance::Meters, Isis::PI, Isis::Spice::radii(), Isis::toDouble(), and Isis::PvlObject::Traverse.

Referenced by Isis::UniversalGroundMap::GroundRange(), and Isis::Camera::IntersectsLongitudeDomain().

◆ hasKernels()

bool Isis::Spice::hasKernels ( Pvl & lab)
inherited

Returns true if the kernel group has kernel files.

Parameters
labLabel containing Instrument and Kernels groups.
Returns
bool status of kernel files in the kernel group

References Isis::PvlContainer::hasKeyword(), Isis::PvlKeyword::size(), and Isis::PvlObject::Traverse.

◆ HasProjection()

bool Isis::Camera::HasProjection ( )
inherited

Checks to see if the camera object has a projection.

Returns
bool Returns true if it has a projection and false if it does not

Referenced by Isis::CubeViewport::CubeViewport().

◆ HasReferenceBand()

bool Isis::Camera::HasReferenceBand ( ) const
inherited

Checks to see if the Camera object has a reference band.

Returns
bool Returns true if it has a reference band, and false if it does not

Referenced by Isis::ThemisVisCamera::BandEphemerisTimeOffset(), and Isis::ThemisIrCamera::SetBand().

◆ HasSurfaceIntersection()

bool Isis::Sensor::HasSurfaceIntersection ( ) const
inherited

Returns if the last call to either SetLookDirection or SetUniversalGround had a valid intersection with the target.

If so then other methods such as Coordinate, UniversalLatitude, UniversalLongitude, etc can be used with confidence.

Returns
bool True if the look direction intersects with the target.

References Isis::Spice::target().

Referenced by Isis::Camera::DetectorResolution(), DetectorResolution(), LineResolution(), Isis::Camera::ObliqueDetectorResolution(), SampleResolution(), and Isis::VimsGroundMap::SetGround().

◆ HighestImageResolution()

double Isis::Camera::HighestImageResolution ( )
inherited

Returns the highest/best resolution in the entire image.

Returns
double The highest/best resolution in the entire image

Referenced by Isis::GroundGrid::GroundGrid().

◆ HighestObliqueImageResolution()

double Isis::Camera::HighestObliqueImageResolution ( )
inherited

Returns the highest/best oblique resolution in the entire image.

Returns
double The highest/best oblique resolution in the entire image

◆ IgnoreElevationModel()

void Isis::Sensor::IgnoreElevationModel ( bool ignore)
inherited

This allows you to ignore the cube elevation model and use the ellipse.

Parameters
ignoreIndicates whether the elevation model is ignored.

References Isis::Spice::target().

Referenced by Isis::ImagePolygon::Create(), and Isis::ImagePolygon::initCube().

◆ IgnoreProjection()

void Isis::Camera::IgnoreProjection ( bool ignore)
inherited

◆ IncidenceAngle()

double Isis::CSMCamera::IncidenceAngle ( ) const
virtual

Compute the incidence angle at the currently set ground point.

Returns
double The incidence angle in degrees

Reimplemented from Isis::Sensor.

References Isis::Sensor::GetSurfacePoint(), and Isis::Spice::target().

◆ InCube()

bool Isis::Camera::InCube ( )
inherited

This returns true if the current Sample() or Line() value is outside of the cube (meaning the point must have been extrapolated).

Returns
bool Point was extrapolated

References Isis::Camera::Line(), Isis::Camera::Lines(), Isis::Camera::Sample(), and Isis::Camera::Samples().

Referenced by Isis::UniversalGroundMap::SetGround(), Isis::UniversalGroundMap::SetGround(), Isis::UniversalGroundMap::SetUnboundGround(), and Isis::UniversalGroundMap::SetUniversalGround().

◆ instrumentBodyFixedPosition()

void Isis::CSMCamera::instrumentBodyFixedPosition ( double p[3]) const
virtual

Get the position of the sensor in the body fixed coordinate system at the currently set time.

Parameters
[out]pA double array that will be filled with the (X, Y, Z) position in kilometers.

Reimplemented from Isis::Spice.

References sensorPositionBodyFixed().

◆ instrumentBodyFixedVelocity()

void Isis::Spice::instrumentBodyFixedVelocity ( double v[3]) const
virtualinherited

Returns the spacecraft velocity in body-fixed frame km/sec units.

Parameters
v[]Spacecraft velocity

References _FILEINFO_, Isis::SpicePosition::Coordinate(), Isis::Spice::m_et, Isis::IException::Programmer, Isis::SpiceRotation::ReferenceVector(), and Isis::SpicePosition::Velocity().

◆ instrumentId()

QString Isis::Camera::instrumentId ( )
inherited

This method returns the InstrumentId as it appears in the cube.

Returns
QString Returns m_instrumentId

References Isis::Camera::m_instrumentId.

Referenced by Isis::GuiCamera::GuiCamera(), and Isis::RosettaVirtisCamera::RosettaVirtisCamera().

◆ instrumentNameLong()

QString Isis::Camera::instrumentNameLong ( ) const
virtualinherited

This method returns the full instrument name.

Returns
QString

Implements Isis::Sensor.

Reimplemented in Isis::IdealCamera.

References Isis::Camera::m_instrumentNameLong.

Referenced by Isis::GuiCamera::GuiCamera().

◆ instrumentNameShort()

QString Isis::Camera::instrumentNameShort ( ) const
virtualinherited

This method returns the shortened instrument name.

Returns
QString

Implements Isis::Sensor.

Reimplemented in Isis::IdealCamera.

References Isis::Camera::m_instrumentNameShort.

Referenced by Isis::GuiCamera::GuiCamera().

◆ instrumentPosition() [1/2]

SpicePosition * Isis::CSMCamera::instrumentPosition ( ) const
virtual

Get the SpicePosition object the contains the state information for the sensor in J2000.

This is not supported for CSM sensors because we can only query the sensor position and velocity at specific image coordinates or times. We cannot access the internal representation inside of the CSM model, if it even exists.

Returns
SpicePosition* A pointer to the SpicePosition object for the sensor

Reimplemented from Isis::Spice.

References _FILEINFO_, and Isis::IException::Programmer.

◆ instrumentPosition() [2/2]

void Isis::Spice::instrumentPosition ( double p[3]) const
inherited

Returns the spacecraft position in body-fixed frame km units.

Parameters
p[]Spacecraft position
See also
setTime()
Exceptions
Isis::iException::Programmer- "You must call SetTime first"

References Isis::Spice::instrumentBodyFixedPosition().

Referenced by Isis::Cube::attachSpiceFromIsd(), Isis::CameraGroundMap::GetdXYdPosition(), Isis::RadarGroundMap::GetdXYdPosition(), Isis::RadarGroundMap::GetXY(), Isis::CameraGroundMap::GetXY(), Isis::RadarGroundMap::SetFocalPlane(), and Isis::RadarGroundMap::SetGround().

◆ instrumentRotation()

SpiceRotation * Isis::CSMCamera::instrumentRotation ( ) const
virtual

Get the SpiceRotation object the contains the orientation of the sensor relative to J2000.

This is not supported for CSM sensors because the CSM API only supports the body fixed coordinate system and does not provide rotations to any others.

Returns
SpiceRotation* A pointer to the SpiceRotation object for the sensor orientation

Reimplemented from Isis::Spice.

References _FILEINFO_, and Isis::IException::Programmer.

◆ IntersectsLongitudeDomain()

bool Isis::Camera::IntersectsLongitudeDomain ( Pvl & pvl)
inherited

Checks whether the ground range intersects the longitude domain or not.

Parameters
pvlThe pvl file used to set the ground range
Returns
bool Returns true if the range intersects the longitude domain, and false if it does not

References Isis::Camera::GroundRange().

◆ IsBandIndependent()

bool Isis::Camera::IsBandIndependent ( )
virtualinherited

Virtual method that checks if the band is independent.

Returns
bool Returns true if the band is independent, and false if it is not

Reimplemented in Isis::LroWideAngleCamera, Isis::CrismCamera, Isis::MarciCamera, Isis::NewHorizonsLeisaCamera, Isis::ThemisIrCamera, and Isis::ThemisVisCamera.

Referenced by Isis::IsisSensor::getState(), and Isis::Camera::RaDecRange().

◆ isTimeSet()

bool Isis::Spice::isTimeSet ( )
inherited

Returns true if time has been initialized.

Author
2016-10-19 Kristin Berry
Returns
bool true if time has been set

References Isis::Spice::m_et.

Referenced by Isis::CameraDetectorMap::SetParent(), and Isis::RollingShutterCameraDetectorMap::SetParent().

◆ isUsingAle()

bool Isis::Spice::isUsingAle ( )
inherited

◆ Line()

◆ LineResolution()

double Isis::CSMCamera::LineResolution ( )
virtual

Compute the line resolution in meters per pixel for the current set point.

CSM sensor models do not expose all of the necessary parameters to do the same calculation as ISIS sensor models, so this uses a more time consuming but more accurate method and thus is equivalent to the oblique line resolution.

For time dependent sensor models, this may also be the line-to-line resolution and not the resolution within a line or framelet. This is determined by the CSM model's ground computeGroundPartials method.

Returns
double The line resolution in meters per pixel

Reimplemented from Isis::Camera.

References Isis::Sensor::HasSurfaceIntersection(), and Isis::Null.

Referenced by ObliqueLineResolution().

◆ Lines()

int Isis::Camera::Lines ( ) const
inherited

◆ LoadCache()

void Isis::Camera::LoadCache ( )
inherited

This loads the spice cache big enough for this image.

The default cache size is the number of lines in the cube if the ephemeris time changes in the image, one otherwise.

References Isis::AlphaCube::BetaLines(), Isis::AlphaCube::BetaSamples(), Isis::Camera::CacheSize(), Isis::Spice::createCache(), Isis::Camera::FocalLength(), Isis::Camera::p_alphaCube, Isis::Camera::PixelPitch(), Isis::Camera::PixelResolution(), Isis::Camera::SetBand(), Isis::Camera::SetImage(), Isis::Sensor::setTime(), Isis::Sensor::SpacecraftAltitude(), Isis::Camera::StartEndEphemerisTimes(), and Isis::Spice::target().

Referenced by Isis::ApolloMetricCamera::ApolloMetricCamera(), Isis::ApolloPanoramicCamera::ApolloPanoramicCamera(), Isis::Chandrayaan1M3Camera::Chandrayaan1M3Camera(), Isis::ClipperNacRollingShutterCamera::ClipperNacRollingShutterCamera(), Isis::ClipperPushBroomCamera::ClipperPushBroomCamera(), Isis::ClipperWacFcCamera::ClipperWacFcCamera(), Isis::CrismCamera::CrismCamera(), Isis::CTXCamera::CTXCamera(), Isis::DawnFcCamera::DawnFcCamera(), Isis::DawnVirCamera::DawnVirCamera(), Isis::HayabusaAmicaCamera::HayabusaAmicaCamera(), Isis::HayabusaNirsCamera::HayabusaNirsCamera(), Isis::HiresCamera::HiresCamera(), Isis::HiriseCamera::HiriseCamera(), Isis::HrscCamera::HrscCamera(), Isis::Hyb2OncCamera::Hyb2OncCamera(), Isis::IdealCamera::IdealCamera(), Isis::IssNACamera::IssNACamera(), Isis::IssWACamera::IssWACamera(), Isis::JunoCamera::JunoCamera(), Isis::KaguyaMiCamera::KaguyaMiCamera(), Isis::KaguyaTcCamera::KaguyaTcCamera(), Isis::LoHighCamera::LoHighCamera(), Isis::LoMediumCamera::LoMediumCamera(), Isis::LroNarrowAngleCamera::LroNarrowAngleCamera(), Isis::LroWideAngleCamera::LroWideAngleCamera(), Isis::LwirCamera::LwirCamera(), Isis::MarciCamera::MarciCamera(), Isis::Mariner10Camera::Mariner10Camera(), Isis::MdisCamera::MdisCamera(), Isis::MexHrscSrcCamera::MexHrscSrcCamera(), Isis::MocNarrowAngleCamera::MocNarrowAngleCamera(), Isis::MocWideAngleCamera::MocWideAngleCamera(), Isis::MsiCamera::MsiCamera(), Isis::NewHorizonsLeisaCamera::NewHorizonsLeisaCamera(), Isis::NewHorizonsLorriCamera::NewHorizonsLorriCamera(), Isis::NewHorizonsMvicFrameCamera::NewHorizonsMvicFrameCamera(), Isis::NewHorizonsMvicTdiCamera::NewHorizonsMvicTdiCamera(), Isis::NirCamera::NirCamera(), Isis::OsirisRexOcamsCamera::OsirisRexOcamsCamera(), Isis::RosettaOsirisCamera::RosettaOsirisCamera(), Isis::RosettaVirtisCamera::RosettaVirtisCamera(), Isis::SsiCamera::SsiCamera(), Isis::TgoCassisCamera::TgoCassisCamera(), Isis::ThemisIrCamera::ThemisIrCamera(), Isis::ThemisVisCamera::ThemisVisCamera(), Isis::UvvisCamera::UvvisCamera(), Isis::VikingCamera::VikingCamera(), Isis::VimsCamera::VimsCamera(), and Isis::VoyagerCamera::VoyagerCamera().

◆ LocalPhotometricAngles()

void Isis::Camera::LocalPhotometricAngles ( Angle & phase,
Angle & incidence,
Angle & emission,
bool & success )
inherited

Calculates LOCAL photometric angles using the DEM (not ellipsoid).

These calculations are more expensive computationally than Sensor's angle getter methods. Furthermore, this cost is mostly in calculating the local normal vector, which can be done only once for all angles using this method.

Parameters
phaseThe local phase angle to be calculated
incidenceThe local incidence angle to be calculated
emissionThe local emission angle to be calculated
successA boolean to keep track of whether normal is valid

References Isis::Camera::GetLocalNormal(), Isis::Sensor::GetSurfacePoint(), Isis::SurfacePoint::GetX(), Isis::SurfacePoint::GetY(), Isis::SurfacePoint::GetZ(), Isis::Spice::instrumentBodyFixedPosition(), Isis::Displacement::kilometers(), Isis::Spice::m_uB, and Isis::Angle::Radians.

Referenced by Isis::PhotometricFunction::compute(), and Isis::Camera::ObliqueDetectorResolution().

◆ LocalRadius() [1/3]

Distance Isis::Sensor::LocalRadius ( ) const
inherited

Returns the local radius at the intersection point.

This is either the radius on the ellipsoid, the radius from the surface model passed into the constructor, or the radius set with SetUniversalGround.

Returns
Distance The local radius at the surface intersection.

References Isis::Spice::target().

Referenced by Isis::QnetCubeDistanceFilter::filter(), Isis::Camera::GetLocalNormal(), Isis::ControlNetFilter::PointLatLonFilter(), Isis::CameraGroundMap::SetGround(), Isis::LineScanCameraGroundMap::SetGround(), Isis::PushFrameCameraGroundMap::SetGround(), Isis::RadarGroundMap::SetGround(), Isis::VimsGroundMap::SetGround(), Isis::Camera::SetGround(), SetGround(), and Isis::Sensor::SpacecraftAltitude().

◆ LocalRadius() [2/3]

Distance Isis::Sensor::LocalRadius ( double lat,
double lon )
inherited

Returns the local radius at the intersection point.

This is either the radius on the ellipsoid, the radius from the surface model passed into the constructor, or the radius set with SetUniversalGround.

Parameters
lat
lon
Returns
Distance The distance from the center of the planet to this lat,lon in meters.

References Isis::Angle::Degrees, and Isis::Spice::target().

◆ LocalRadius() [3/3]

Distance Isis::Sensor::LocalRadius ( Latitude lat,
Longitude lon )
inherited

Returns the local radius at the intersection point.

This is either the radius on the ellipsoid, the radius from the surface model passed into the constructor, or the radius set with SetUniversalGround.

Parameters
lat
lon
Returns
Distance The distance from the center of the planet to this lat,lon in meters.

References Isis::Spice::target().

◆ LocalSolarTime()

double Isis::Sensor::LocalSolarTime ( )
inherited

Return the local solar time in hours.

Returns
double Local solar time, in hours.

References Isis::Spice::subSolarPoint(), and Isis::Sensor::UniversalLongitude().

◆ LookDirection()

void Isis::Sensor::LookDirection ( double v[3]) const
inherited

Returns the look direction in the camera coordinate system.

Parameters
v[]The look vector.

References Isis::Spice::instrumentRotation(), and Isis::Sensor::lookDirectionJ2000().

◆ lookDirectionBodyFixed()

vector< double > Isis::Sensor::lookDirectionBodyFixed ( ) const
virtualinherited

Returns the look direction in the body fixed coordinate system.

Returns
vector<double> Look direction in body fixed coordinate system.

References Isis::Sensor::m_lookB.

Referenced by Isis::IsisSensor::getState(), Isis::IsisSensor::getState(), and Isis::Sensor::lookDirectionJ2000().

◆ lookDirectionJ2000()

vector< double > Isis::Sensor::lookDirectionJ2000 ( ) const
virtualinherited

Returns the look direction in the camera coordinate system.

Returns
vector<double> Look direction in J2000 cooridinate system.

References Isis::Spice::bodyRotation(), and Isis::Sensor::lookDirectionBodyFixed().

Referenced by Isis::IsisSensor::getState(), Isis::IsisSensor::getState(), and Isis::Sensor::LookDirection().

◆ LowestImageResolution()

double Isis::Camera::LowestImageResolution ( )
inherited

Returns the lowest/worst resolution in the entire image.

Returns
double The lowest/worst resolution in the image

◆ LowestObliqueImageResolution()

double Isis::Camera::LowestObliqueImageResolution ( )
inherited

Returns the lowest/worst oblique resolution in the entire image.

Returns
double The lowest/worst oblique resolution in the image

◆ naifBodyCode()

SpiceInt Isis::Spice::naifBodyCode ( ) const
inherited

This returns the NAIF body code of the target indicated in the labels.

Returns
SpiceInt NAIF body code

References Isis::Spice::m_target, and Isis::Target::naifBodyCode().

Referenced by Isis::Camera::SpkCenterId().

◆ naifBodyFrameCode()

SpiceInt Isis::Spice::naifBodyFrameCode ( ) const
inherited

This returns the NAIF body frame code.

It is read from the labels, if it exists. Otherwise, it's calculated by the init() method.

Returns
SpiceInt NAIF body frame code

◆ naifCkCode()

SpiceInt Isis::Spice::naifCkCode ( ) const
inherited

This returns the NAIF CK code to use when reading from CK kernels.

Returns
SpiceInt NAIF CK code

◆ naifIkCode()

SpiceInt Isis::Spice::naifIkCode ( ) const
inherited

This returns the NAIF IK code to use when reading from instrument kernels.

Returns
SpiceInt NAIF IK code

Referenced by Isis::ApolloMetricCamera::ApolloMetricCamera(), Isis::ApolloPanoramicCamera::ApolloPanoramicCamera(), Isis::Chandrayaan1M3Camera::Chandrayaan1M3Camera(), Isis::ClipperNacRollingShutterCamera::ClipperNacRollingShutterCamera(), Isis::ClipperPushBroomCamera::ClipperPushBroomCamera(), Isis::ClipperWacFcCamera::ClipperWacFcCamera(), Isis::CrismCamera::CrismCamera(), Isis::CTXCamera::CTXCamera(), Isis::DawnFcCamera::DawnFcCamera(), Isis::DawnVirCamera::DawnVirCamera(), Isis::HayabusaAmicaCamera::HayabusaAmicaCamera(), Isis::HayabusaNirsCamera::HayabusaNirsCamera(), Isis::HiresCamera::HiresCamera(), Isis::HiriseCamera::HiriseCamera(), Isis::HrscCamera::HrscCamera(), Isis::Hyb2OncCamera::Hyb2OncCamera(), Isis::IssNACamera::IssNACamera(), Isis::IssWACamera::IssWACamera(), Isis::JunoCamera::JunoCamera(), Isis::KaguyaMiCamera::KaguyaMiCamera(), Isis::KaguyaTcCamera::KaguyaTcCamera(), Isis::LoHighCamera::LoHighCamera(), Isis::LoMediumCamera::LoMediumCamera(), Isis::LroNarrowAngleCamera::LroNarrowAngleCamera(), Isis::LroWideAngleCamera::LroWideAngleCamera(), Isis::LwirCamera::LwirCamera(), Isis::MarciCamera::MarciCamera(), Isis::Mariner10Camera::Mariner10Camera(), Isis::MdisCamera::MdisCamera(), Isis::MexHrscSrcCamera::MexHrscSrcCamera(), Isis::MiniRF::MiniRF(), Isis::MocNarrowAngleCamera::MocNarrowAngleCamera(), Isis::MocWideAngleCamera::MocWideAngleCamera(), Isis::MsiCamera::MsiCamera(), Isis::NewHorizonsLeisaCamera::NewHorizonsLeisaCamera(), Isis::NewHorizonsLorriCamera::NewHorizonsLorriCamera(), Isis::NewHorizonsMvicFrameCamera::NewHorizonsMvicFrameCamera(), Isis::NewHorizonsMvicTdiCamera::NewHorizonsMvicTdiCamera(), Isis::NirCamera::NirCamera(), Isis::OsirisRexOcamsCamera::OsirisRexOcamsCamera(), Isis::RosettaOsirisCamera::RosettaOsirisCamera(), Isis::RosettaVirtisCamera::RosettaVirtisCamera(), Isis::Camera::SetFocalLength(), Isis::Camera::SetPixelPitch(), Isis::SsiCamera::SsiCamera(), Isis::TgoCassisCamera::TgoCassisCamera(), Isis::ThemisIrCamera::ThemisIrCamera(), Isis::ThemisVisCamera::ThemisVisCamera(), Isis::UvvisCamera::UvvisCamera(), Isis::VikingCamera::VikingCamera(), Isis::VimsCamera::VimsCamera(), and Isis::VoyagerCamera::VoyagerCamera().

◆ naifSclkCode()

SpiceInt Isis::Spice::naifSclkCode ( ) const
inherited

This returns the NAIF SCLK code to use when reading from instrument kernels.

Returns
SpiceInt NAIF SCLK code

Referenced by Isis::CrismCamera::CrismCamera(), and Isis::Spice::getClockTime().

◆ naifSpkCode()

SpiceInt Isis::Spice::naifSpkCode ( ) const
inherited

This returns the NAIF SPK code to use when reading from SPK kernels.

Returns
SpiceInt NAIF SPK code

Referenced by Isis::Camera::SpkTargetId().

◆ NorthAzimuth()

double Isis::Camera::NorthAzimuth ( )
inherited

Returns the North Azimuth.

Returns
double North Azimuth

References _FILEINFO_, Isis::IException::Programmer, Isis::Spice::target(), and Isis::Sensor::UniversalLatitude().

◆ ObliqueDetectorResolution()

double Isis::CSMCamera::ObliqueDetectorResolution ( bool useLocal = true)
virtual

Compute the oblique detector resolution in meters per pixel for the current set point.

CSM sensor models do not expose all of the necessary parameters to do the same calculation as ISIS sensor models, so obliqueness does not need to be accounted for. Thus, this is equivalent to the detector resolution.

Returns
double The oblique detector resolution in meters per pixel

Reimplemented from Isis::Camera.

References DetectorResolution().

◆ ObliqueLineResolution()

double Isis::CSMCamera::ObliqueLineResolution ( bool useLocal = true)
virtual

Compute the oblique line resolution in meters per pixel for the current set point.

CSM sensor models do not expose all of the necessary parameters to do the same calculation as ISIS sensor models, so obliqueness does not need to be accounted for. Thus, this is equivalent to the line resolution.

Returns
double The oblique line resolution in meters per pixel

Reimplemented from Isis::Camera.

References LineResolution().

◆ ObliquePixelResolution()

double Isis::Camera::ObliquePixelResolution ( bool useLocal = true)
virtualinherited

Returns the oblique pixel resolution at the current position in meters/pixel.

This provides a more accurate estimate of the pixel resolution at oblique angles.

Returns
double The pixel resolution

References Isis::Null, Isis::Camera::ObliqueLineResolution(), and Isis::Camera::ObliqueSampleResolution().

◆ ObliqueSampleResolution()

double Isis::CSMCamera::ObliqueSampleResolution ( bool useLocal = true)
virtual

Compute the oblique sample resolution in meters per pixel for the current set point.

CSM sensor models do not expose all of the necessary parameters to do the same calculation as ISIS sensor models, so obliqueness does not need to be accounted for. Thus, this is equivalent to the sample resolution.

Returns
double The oblique sample resolution in meters per pixel

Reimplemented from Isis::Camera.

References SampleResolution().

◆ OffNadirAngle()

double Isis::Camera::OffNadirAngle ( )
inherited

Return the off nadir angle in degrees.

Returns
double Off Nadir Angle

References Isis::Sensor::Coordinate(), Isis::Sensor::EmissionAngle(), Isis::Spice::instrumentPosition(), and Isis::RAD2DEG.

◆ parentLine()

double Isis::CSMCamera::parentLine ( ) const
virtual

Returns the currently set parent line for the camera model.

This is the line from the original image before any cropping, scaling, or other transformations.

Returns
double The currently set line

References Isis::AlphaCube::AlphaLine(), Isis::Camera::Line(), and Isis::Camera::p_alphaCube.

Referenced by sensorPositionBodyFixed(), and subSpacecraftPoint().

◆ ParentLines()

◆ parentSample()

double Isis::CSMCamera::parentSample ( ) const
virtual

Returns the currently set parent sample for the camera model.

This is the sample from the original image before any cropping, scaling, or other transformations.

Returns
double The currently set sample

References Isis::AlphaCube::AlphaSample(), Isis::Camera::p_alphaCube, and Isis::Camera::Sample().

Referenced by sensorPositionBodyFixed(), and subSpacecraftPoint().

◆ ParentSamples()

◆ PhaseAngle()

double Isis::CSMCamera::PhaseAngle ( ) const
virtual

Compute the phase angle at the currently set ground point.

Returns
double The phase angle in degrees

Reimplemented from Isis::Sensor.

References Isis::Sensor::GetSurfacePoint(), sensorPositionBodyFixed(), and Isis::Spice::target().

◆ PixelIfovOffsets()

QList< QPointF > Isis::CSMCamera::PixelIfovOffsets ( )
virtual

Returns the pixel ifov offsets from center of pixel.

The first vertex is the top left.

The CSM API does not support this type of internal information about the sensor.

Returns
QList<QPointF> The field of view offsets

Reimplemented from Isis::Camera.

References _FILEINFO_, and Isis::IException::User.

◆ PixelPitch()

◆ PixelResolution()

double Isis::Camera::PixelResolution ( )
virtualinherited

◆ RaDecRange()

bool Isis::Camera::RaDecRange ( double & minra,
double & maxra,
double & mindec,
double & maxdec )
inherited

Computes the RaDec range.

Parameters
minraMinimum right ascension value
maxraMaximum right ascension value
mindecMinimum declination value
maxdecMaximum declination value
Returns
bool Returns true if the range computation was successful and false if it was not

References Isis::Camera::Band(), Isis::Sensor::Declination(), Isis::Camera::IsBandIndependent(), Isis::Camera::Line(), Isis::Camera::p_pointComputed, Isis::Sensor::RightAscension(), Isis::Camera::Sample(), Isis::Camera::SetBand(), Isis::Camera::SetImage(), and Isis::Camera::SetRightAscensionDeclination().

◆ RaDecResolution()

double Isis::Camera::RaDecResolution ( )
inherited

◆ radii()

void Isis::Spice::radii ( Distance r[3]) const
inherited

Returns the radii of the body in km.

The radii are obtained from the appropriate SPICE kernel for the body specified by TargetName in the Instrument group of the labels.

Parameters
r[]Radii of the target in kilometers

References Isis::Spice::m_target, and Isis::Target::radii().

Referenced by Isis::Camera::BasicMapping(), Isis::Camera::GroundRange(), Isis::VimsGroundMap::Init(), Isis::MiniRF::MiniRF(), Isis::RadarGroundMap::SetFocalPlane(), setTarget(), Isis::Spice::subSolarPoint(), and Isis::Spice::subSpacecraftPoint().

◆ readStoredValue()

◆ readValue()

QVariant Isis::Spice::readValue ( QString key,
SpiceValueType type,
int index = 0 )
protectedinherited

This should be used for reading ALL text naif kernel values.

This will read it from Naif if we're using naif/not attached kernels. If we have attached kernels and a NaifKeywords label object we will grab it from there instead. This allows us to not furnish kernels after spiceinit.

Parameters
keyThe naif keyword,value name
typeThe naif value's primitive type
indexThe index into the naif keyword array to read

References _FILEINFO_, Isis::NaifStatus::CheckErrors(), Isis::IException::Io, Isis::Spice::readStoredValue(), Isis::Spice::SpiceDoubleType, Isis::Spice::SpiceIntType, Isis::Spice::SpiceStringType, Isis::Spice::storeValue(), and Isis::IException::Unknown.

Referenced by Isis::Spice::getDouble(), Isis::Spice::getInteger(), Isis::Spice::getString(), and Isis::IdealCamera::IdealCamera().

◆ ReferenceBand()

int Isis::Camera::ReferenceBand ( ) const
inherited

Returns the reference band.

Returns
int Reference Band

Referenced by Isis::ThemisVisCamera::BandEphemerisTimeOffset(), and Isis::ThemisIrCamera::SetBand().

◆ resolution()

double Isis::Camera::resolution ( )
virtualinherited

Returns the resolution of the camera.

Returns
double pixel resolution

Reimplemented from Isis::Sensor.

References Isis::Camera::PixelResolution().

◆ RightAscension()

double Isis::CSMCamera::RightAscension ( )
virtual

Computes the Right Ascension of the currently set image coordinate.

Returns
double The Right Ascension

Reimplemented from Isis::Sensor.

References Isis::Camera::p_childLine, Isis::Camera::p_childSample, Isis::PI, and Isis::RAD2DEG.

Referenced by CelestialNorthClockAngle().

◆ ringRange()

bool Isis::Camera::ringRange ( double & minRingRadius,
double & maxRingRadius,
double & minRingLongitude,
double & maxRingLongitude,
Pvl & pvl )
inherited

Analogous to the above Ground Range method.

Computes Range on the ring plane

Parameters
minRingRadiusThe minimum ring radius
maxRingRadiusThe maximum ring radius
minRingLongitudeThe minimum ring longitude
maxRingLongitudeThe maximum ring longitude
pvlThe pvl file used for ring range calculations
Returns
bool Returns true if it crosses the longitude domain boundary and false if it does not

References Isis::PvlObject::Traverse.

◆ Sample()

◆ SampleResolution()

double Isis::CSMCamera::SampleResolution ( )
virtual

Compute the sample resolution in meters per pixel for the current set point.

CSM sensor models do not expose all of the necessary parameters to do the same calculation as ISIS sensor models, so this uses a more time consuming but more accurate method and thus is equivalent to the oblique sample resolution.

Returns
double The sample resolution in meters per pixel

Reimplemented from Isis::Camera.

References Isis::Sensor::HasSurfaceIntersection(), and Isis::Null.

Referenced by ObliqueSampleResolution().

◆ Samples()

◆ sensorPositionBodyFixed() [1/2]

std::vector< double > Isis::CSMCamera::sensorPositionBodyFixed ( ) const
protected

Get the position of the sensor in the body fixed coordinate system at the currently set time.

Returns
std::vector<double> The (X, Y, Z) position in kilometers.

References parentLine(), parentSample(), and sensorPositionBodyFixed().

Referenced by EmissionAngle(), instrumentBodyFixedPosition(), PhaseAngle(), sensorPositionBodyFixed(), SlantDistance(), subSpacecraftPoint(), and targetCenterDistance().

◆ sensorPositionBodyFixed() [2/2]

std::vector< double > Isis::CSMCamera::sensorPositionBodyFixed ( double line,
double sample ) const
protected

Get the position of the sensor in the body fixed coordinate system at an image coordinate.

Parameters
lineThe line of the image coordinate
samplethe sample of the image coordinate
Returns
std::vector<double> The (X, Y, Z) position in kilometers.

◆ SetBand()

◆ SetDetectorMap()

void Isis::Camera::SetDetectorMap ( CameraDetectorMap * map)
inherited

Sets the Detector Map.

This object will take ownership of the detector map pointer.

Parameters
*mapPointer to a CameraDetectorMap object

Referenced by Isis::CameraDetectorMap::CameraDetectorMap().

◆ SetDistortionMap()

void Isis::Camera::SetDistortionMap ( CameraDistortionMap * map,
bool deleteExisting = true )
inherited

Sets the Distortion Map.

This object will take ownership of the distortion map pointer.

Parameters
*mapPointer to a CameraDistortionMap object

Referenced by Isis::CameraDistortionMap::CameraDistortionMap(), and Isis::TgoCassisCamera::TgoCassisCamera().

◆ SetFocalLength() [1/2]

void Isis::Camera::SetFocalLength ( )
protectedinherited

Reads the focal length from the instrument kernel.

References Isis::Spice::getDouble(), Isis::Spice::naifIkCode(), Isis::Camera::SetFocalLength(), and Isis::toString().

Referenced by Isis::ApolloMetricCamera::ApolloMetricCamera(), Isis::ApolloPanoramicCamera::ApolloPanoramicCamera(), Isis::Chandrayaan1M3Camera::Chandrayaan1M3Camera(), Isis::ClipperNacRollingShutterCamera::ClipperNacRollingShutterCamera(), Isis::ClipperPushBroomCamera::ClipperPushBroomCamera(), Isis::ClipperWacFcCamera::ClipperWacFcCamera(), Isis::CrismCamera::CrismCamera(), Isis::CTXCamera::CTXCamera(), Isis::DawnFcCamera::DawnFcCamera(), Isis::DawnVirCamera::DawnVirCamera(), Isis::HayabusaAmicaCamera::HayabusaAmicaCamera(), Isis::HayabusaNirsCamera::HayabusaNirsCamera(), Isis::HiresCamera::HiresCamera(), Isis::HiriseCamera::HiriseCamera(), Isis::HrscCamera::HrscCamera(), Isis::Hyb2OncCamera::Hyb2OncCamera(), Isis::IdealCamera::IdealCamera(), Isis::IssNACamera::IssNACamera(), Isis::IssWACamera::IssWACamera(), Isis::JunoCamera::JunoCamera(), Isis::KaguyaMiCamera::KaguyaMiCamera(), Isis::KaguyaTcCamera::KaguyaTcCamera(), Isis::LoHighCamera::LoHighCamera(), Isis::LoMediumCamera::LoMediumCamera(), Isis::LroNarrowAngleCamera::LroNarrowAngleCamera(), Isis::LroWideAngleCamera::LroWideAngleCamera(), Isis::LwirCamera::LwirCamera(), Isis::MarciCamera::MarciCamera(), Isis::Mariner10Camera::Mariner10Camera(), Isis::MdisCamera::MdisCamera(), Isis::MexHrscSrcCamera::MexHrscSrcCamera(), Isis::MiniRF::MiniRF(), Isis::MocNarrowAngleCamera::MocNarrowAngleCamera(), Isis::MocWideAngleCamera::MocWideAngleCamera(), Isis::MsiCamera::MsiCamera(), Isis::NewHorizonsLeisaCamera::NewHorizonsLeisaCamera(), Isis::NewHorizonsLorriCamera::NewHorizonsLorriCamera(), Isis::NewHorizonsMvicFrameCamera::NewHorizonsMvicFrameCamera(), Isis::NewHorizonsMvicTdiCamera::NewHorizonsMvicTdiCamera(), Isis::NirCamera::NirCamera(), Isis::OsirisRexOcamsCamera::OsirisRexOcamsCamera(), Isis::RosettaOsirisCamera::RosettaOsirisCamera(), Isis::RosettaVirtisCamera::RosettaVirtisCamera(), Isis::LroWideAngleCamera::SetBand(), Isis::Camera::SetFocalLength(), Isis::SsiCamera::SsiCamera(), Isis::TgoCassisCamera::TgoCassisCamera(), Isis::ThemisIrCamera::ThemisIrCamera(), Isis::ThemisVisCamera::ThemisVisCamera(), Isis::UvvisCamera::UvvisCamera(), Isis::VikingCamera::VikingCamera(), Isis::VimsCamera::VimsCamera(), and Isis::VoyagerCamera::VoyagerCamera().

◆ SetFocalLength() [2/2]

void Isis::Camera::SetFocalLength ( double v)
protectedinherited

Sets the focal length.

Parameters
vFocal Length

Referenced by Isis::RadarSlantRangeMap::SetFocalPlane(), and Isis::RadarGroundMap::SetGround().

◆ SetFocalPlaneMap()

void Isis::Camera::SetFocalPlaneMap ( CameraFocalPlaneMap * map)
inherited

Sets the Focal Plane Map.

This object will take ownership of the focal plane map pointer.

Parameters
*mapPointer to a CameraFocalPlaneMap object

Referenced by Isis::CameraFocalPlaneMap::CameraFocalPlaneMap().

◆ SetGeometricTilingHint()

void Isis::Camera::SetGeometricTilingHint ( int startSize = 128,
int endSize = 8 )
protectedinherited

This method sets the best geometric tiling size for projecting from this camera model.

This is used by cam2map/ProcessRubberSheet. When cubes are projected, an attempt is made to use linear equations to take large, square chunks of data at a time to cull the amount of SetUniversalGround(...) calls necessary to project a cube. If the chunk of data fails to be linear, then it will be split up into 4 corners and each of the new chunks (corners) are reconsidered up until endSize is reached - the endsize size will be considered, it is inclusive. The startSize must be a power of 2 greater than 2, and the endSize must be a power of 2 equal to or less than the start size but greater than 2. If both the startSize and endSize are set to 2 then no geometric tiling will be enabled.

Parameters
startSizeThe tile size to start with; default 128
endSizeThe tile size to give up at; default 8

References _FILEINFO_, and Isis::IException::Programmer.

Referenced by Isis::Camera::Camera(), Isis::LroWideAngleCamera::LroWideAngleCamera(), and Isis::MarciCamera::MarciCamera().

◆ SetGround() [1/3]

bool Isis::CSMCamera::SetGround ( const SurfacePoint & surfacePt)
virtual

Set the ground point for the Camera Model and then compute the corresponding image time, look vector, and image coordinate.

Parameters
surfacePtThe ground point
Returns
bool If the ground point was set successfully

Reimplemented from Isis::Camera.

References Isis::AlphaCube::BetaLine(), Isis::AlphaCube::BetaSample(), Isis::ShapeModel::clearSurfacePoint(), Isis::ShapeModel::hasIntersection(), Isis::ShapeModel::intersectSurface(), Isis::Spice::m_et, Isis::Sensor::m_lookB, Isis::Sensor::m_newLookB, Isis::Camera::p_alphaCube, Isis::Camera::p_childLine, Isis::Camera::p_childSample, Isis::Camera::p_pointComputed, Isis::ShapeModel::setHasIntersection(), and Isis::Spice::target().

◆ SetGround() [2/3]

bool Isis::Sensor::SetGround ( const SurfacePoint & surfacePt,
bool backCheck = true )
inherited

This overloaded method has the opposite function as SetLookDirection.

Instead of computing a point on the target, a point is set and the look direction is computed. Other methods such as lat/lon, phase, incidence, etc. can be used if this method returns a true.

Parameters
backCheckIf true this method will check the lat/lon point to see if it falls on the backside of the target (or beyond the horizon). If false this test will not occur. Defaults to true.
Returns
bool

References Isis::Spice::bodyRotation(), Isis::ShapeModel::clearSurfacePoint(), Isis::Sensor::Coordinate(), Isis::Spice::instrumentPosition(), Isis::ShapeModel::intersectSurface(), and Isis::Spice::target().

◆ SetGround() [3/3]

bool Isis::CSMCamera::SetGround ( Latitude latitude,
Longitude longitude )
virtual

Set the latitude and longitude for the Camera Model and then compute the corresponding image time, look vector, and image coordinate.

The ground point radius will be computed from the shape model.

Parameters
latitudeThe ground point latitude
longitudeThe ground point longitude
Returns
bool If the ground point was set successfully

Reimplemented from Isis::Camera.

References Isis::Angle::Degrees, Isis::Distance::isValid(), Isis::Distance::Kilometers, Isis::Sensor::LocalRadius(), Isis::ShapeModel::name(), SetGround(), and Isis::Spice::target().

Referenced by SetGround(), SetUniversalGround(), and SetUniversalGround().

◆ SetGroundMap()

void Isis::Camera::SetGroundMap ( CameraGroundMap * map)
inherited

Sets the Ground Map.

This object will take ownership of the ground map pointer.

Parameters
*mapPointer to a CameraGroundMap object

Referenced by Isis::CameraGroundMap::CameraGroundMap().

◆ SetImage() [1/2]

bool Isis::CSMCamera::SetImage ( const double sample,
const double line )
virtual

Set the image sample and line for the Camera Model and then compute the corresponding image time, look vector, and ground point.

Parameters
sampleThe image sample coordinate
lineThe image line coordinate
Returns
bool If the image coordinate was set successfully

Reimplemented from Isis::Camera.

References Isis::AlphaCube::AlphaLine(), Isis::AlphaCube::AlphaSample(), Isis::Spice::m_et, Isis::Camera::p_alphaCube, Isis::Camera::p_childLine, Isis::Camera::p_childSample, Isis::Camera::p_pointComputed, SetLookDirection(), and Isis::Spice::target().

Referenced by CelestialNorthClockAngle(), and SetRightAscensionDeclination().

◆ SetImage() [2/2]

bool Isis::Camera::SetImage ( const double sample,
const double line,
const double deltaT )
virtualinherited

Sets the sample/line values of the image to get the lat/lon values with a time offset of deltaT.

Warning: The deltaT parameter was added specifically for pixel2map to use for the Dawn VIR camera. It is used to adjust the pointing to its location at specific times like the times at the beginning, middle, and end of exposure for a specific pixel, when the correct deltaT can be determined to achieve these results.

Do not use this verstion of SetImage with a deltaT unless you understand exactly what this does.

Parameters
sampleSample coordinate of the cube.
lineLine coordinate of the cube.
deltaTseconds from the center exposure time
Returns
bool Returns True if the image was set successfully and False if it was not.

References Isis::AlphaCube::AlphaLine(), Isis::AlphaCube::AlphaSample(), Isis::ShapeModel::clearSurfacePoint(), Isis::CameraDetectorMap::DetectorLine(), Isis::CameraDetectorMap::DetectorSample(), Isis::CameraFocalPlaneMap::FocalPlaneX(), Isis::CameraFocalPlaneMap::FocalPlaneY(), Isis::Projection::IsSky(), Isis::Camera::p_alphaCube, Isis::Camera::p_childLine, Isis::Camera::p_childSample, Isis::Camera::p_pointComputed, Isis::CameraFocalPlaneMap::SetDetector(), Isis::CameraGroundMap::SetFocalPlane(), Isis::CameraDistortionMap::SetFocalPlane(), Isis::CameraDetectorMap::SetParent(), Isis::Spice::target(), Isis::CameraDistortionMap::UndistortedFocalPlaneX(), Isis::CameraDistortionMap::UndistortedFocalPlaneY(), and Isis::CameraDistortionMap::UndistortedFocalPlaneZ().

◆ SetLookDirection() [1/2]

bool Isis::Sensor::SetLookDirection ( const double v[3])
inherited

Sets the look direction of the spacecraft.

This routine will then attempt to intersect the look direction with the target. If successful you can utilize the methods which return the lat/lon, phase, incidence, etc. This routine returns false if the look direction does not intersect the target.

Parameters
v[]A look vector in camera coordinates. For example, (0,0,1) is usually the look direction out of the boresight of a camera.
Returns
bool Indicates whether the given look direction intersects the target.

References Isis::Spice::bodyRotation(), Isis::Sensor::Coordinate(), Isis::Spice::instrumentPosition(), Isis::Spice::instrumentRotation(), Isis::Sensor::m_lookB, Isis::Sensor::m_newLookB, and Isis::Spice::target().

Referenced by Isis::CameraGroundMap::SetFocalPlane(), Isis::CameraSkyMap::SetFocalPlane(), Isis::VimsGroundMap::SetFocalPlane(), Isis::VimsSkyMap::SetFocalPlane(), and Isis::Sensor::SetRightAscensionDeclination().

◆ SetLookDirection() [2/2]

bool Isis::CSMCamera::SetLookDirection ( const std::vector< double > lookB)
virtual

Sets the look direction of the spacecraft.

This routine will then attempt to intersect the look direction with the target. If successful you can utilize the methods which return the lat/lon, phase, incidence, etc. This routine returns false if the look direction does not intersect the target.

Parameters
v[]A look vector in camera coordinates. For example, (0,0,1) is usually the look direction out of the boresight of a camera.
Returns
bool Indicates whether the given look direction intersects the target.

References Isis::Sensor::m_lookB, Isis::Sensor::m_newLookB, and Isis::Spice::target().

Referenced by SetImage().

◆ SetPixelPitch() [1/2]

void Isis::Camera::SetPixelPitch ( )
protectedinherited

Reads the Pixel Pitch from the instrument kernel.

References Isis::Spice::getDouble(), Isis::Spice::naifIkCode(), Isis::Camera::SetPixelPitch(), and Isis::toString().

Referenced by Isis::ApolloMetricCamera::ApolloMetricCamera(), Isis::ApolloPanoramicCamera::ApolloPanoramicCamera(), Isis::Chandrayaan1M3Camera::Chandrayaan1M3Camera(), Isis::ClipperNacRollingShutterCamera::ClipperNacRollingShutterCamera(), Isis::ClipperPushBroomCamera::ClipperPushBroomCamera(), Isis::ClipperWacFcCamera::ClipperWacFcCamera(), Isis::CrismCamera::CrismCamera(), Isis::CTXCamera::CTXCamera(), Isis::DawnFcCamera::DawnFcCamera(), Isis::DawnVirCamera::DawnVirCamera(), Isis::HayabusaAmicaCamera::HayabusaAmicaCamera(), Isis::HayabusaNirsCamera::HayabusaNirsCamera(), Isis::HiresCamera::HiresCamera(), Isis::HiriseCamera::HiriseCamera(), Isis::HrscCamera::HrscCamera(), Isis::Hyb2OncCamera::Hyb2OncCamera(), Isis::IdealCamera::IdealCamera(), Isis::IssNACamera::IssNACamera(), Isis::IssWACamera::IssWACamera(), Isis::JunoCamera::JunoCamera(), Isis::KaguyaMiCamera::KaguyaMiCamera(), Isis::KaguyaTcCamera::KaguyaTcCamera(), Isis::LoHighCamera::LoHighCamera(), Isis::LoMediumCamera::LoMediumCamera(), Isis::LroNarrowAngleCamera::LroNarrowAngleCamera(), Isis::LroWideAngleCamera::LroWideAngleCamera(), Isis::LwirCamera::LwirCamera(), Isis::MarciCamera::MarciCamera(), Isis::Mariner10Camera::Mariner10Camera(), Isis::MdisCamera::MdisCamera(), Isis::MexHrscSrcCamera::MexHrscSrcCamera(), Isis::MiniRF::MiniRF(), Isis::MocNarrowAngleCamera::MocNarrowAngleCamera(), Isis::MocWideAngleCamera::MocWideAngleCamera(), Isis::MsiCamera::MsiCamera(), Isis::NewHorizonsLeisaCamera::NewHorizonsLeisaCamera(), Isis::NewHorizonsLorriCamera::NewHorizonsLorriCamera(), Isis::NewHorizonsMvicFrameCamera::NewHorizonsMvicFrameCamera(), Isis::NewHorizonsMvicTdiCamera::NewHorizonsMvicTdiCamera(), Isis::NirCamera::NirCamera(), Isis::OsirisRexOcamsCamera::OsirisRexOcamsCamera(), Isis::RosettaOsirisCamera::RosettaOsirisCamera(), Isis::RosettaVirtisCamera::RosettaVirtisCamera(), Isis::Camera::SetPixelPitch(), Isis::SsiCamera::SsiCamera(), Isis::TgoCassisCamera::TgoCassisCamera(), Isis::ThemisIrCamera::ThemisIrCamera(), Isis::ThemisVisCamera::ThemisVisCamera(), Isis::UvvisCamera::UvvisCamera(), Isis::VikingCamera::VikingCamera(), Isis::VimsCamera::VimsCamera(), and Isis::VoyagerCamera::VoyagerCamera().

◆ SetPixelPitch() [2/2]

void Isis::Camera::SetPixelPitch ( double v)
protectedinherited

Sets the pixel pitch.

Parameters
vPixel Pitch

◆ SetRightAscensionDeclination()

bool Isis::CSMCamera::SetRightAscensionDeclination ( const double ra,
const double dec )
virtual

Given the ra/dec compute the look direction.

Parameters
raRight ascension in degrees (sky longitude).
decDeclination in degrees (sky latitude).
Returns
bool True if successful.

Reimplemented from Isis::Camera.

References Isis::DEG2RAD, and SetImage().

Referenced by CelestialNorthClockAngle().

◆ SetSkyMap()

void Isis::Camera::SetSkyMap ( CameraSkyMap * map)
inherited

Sets the Sky Map.

This object will take ownership of the sky map pointer.

Parameters
*mapPointer to a CameraSkyMap object

Referenced by Isis::CameraSkyMap::CameraSkyMap(), and Isis::CSMSkyMap::CSMSkyMap().

◆ setTarget()

void Isis::CSMCamera::setTarget ( Pvl label)
protected

Set the Target object for the camera model.

Parameters
labelThe label containing information to create the Target from

References Isis::Spice::m_target, Isis::Distance::Meters, Isis::Spice::radii(), and Isis::Spice::target().

◆ setTime()

void Isis::CSMCamera::setTime ( const iTime & time)
virtual

Set the time and update the sensor position and orientation.

This is not supported for CSM cameras because the time is a function of the image coordinate and the two cannot be changed independently.

Parameters
timeThe time to set

Reimplemented from Isis::Spice.

References _FILEINFO_, and Isis::IException::Programmer.

◆ SetUniversalGround() [1/4]

bool Isis::CSMCamera::SetUniversalGround ( const double latitude,
const double longitude )
virtual

Set the latitude and longitude for the Camera Model and then compute the corresponding image time, look vector, and image coordinate.

The ground point radius will be computed from the shape model.

Parameters
latitudeThe ground point latitude in degrees
longitudeThe ground point longitude in positive East, 360 domain degrees
Returns
bool If the ground point was set successfully

Reimplemented from Isis::Camera.

References Isis::Angle::Degrees, and SetGround().

◆ SetUniversalGround() [2/4]

bool Isis::Sensor::SetUniversalGround ( const double latitude,
const double longitude,
bool backCheck = true )
inherited

This is the opposite routine for SetLookDirection.

Instead of computing a point on the target, a point is set and the look direction is computed. Other methods such as lat/lon, phase, incidence, etc. can be used if this method returns a true.

Parameters
latitudePlanetocentric latitude.
longitudePositive east longitude.
backCheckIf true this method will check the lat/lon point to see if it falls on the backside of the target (or beyond the horizon). If false this test will not occur. Defaults to true.
Returns
bool True if the look direction intersects the target.

References Isis::Spice::bodyRotation(), Isis::ShapeModel::clearSurfacePoint(), Isis::Sensor::Coordinate(), Isis::Angle::Degrees, Isis::Spice::instrumentPosition(), Isis::ShapeModel::intersectSurface(), and Isis::Spice::target().

◆ SetUniversalGround() [3/4]

bool Isis::Sensor::SetUniversalGround ( const double latitude,
const double longitude,
const double radius,
bool backCheck = true )
inherited

This overloaded method has the opposite function as SetLookDirection.

Instead of computing a point on the target, a point is set and the look direction is computed. Other methods such as lat/lon, phase, incidence, etc. can be used if this method returns a true.

Parameters
latitudePlanetocentric latitude in degrees.
longitudePositive east longitude in degrees.
radiusRadius in meters.
backCheckIf true this method will check the lat/lon point to see if it falls on the backside of the target (or beyond the horizon). If false this test will not occur. Defaults to true.
Returns
bool True if the look direction intersects the target.

References Isis::Spice::bodyRotation(), Isis::ShapeModel::clearSurfacePoint(), Isis::Sensor::Coordinate(), Isis::Angle::Degrees, Isis::Spice::instrumentPosition(), Isis::ShapeModel::intersectSurface(), Isis::Distance::Meters, and Isis::Spice::target().

◆ SetUniversalGround() [4/4]

bool Isis::CSMCamera::SetUniversalGround ( const double latitude,
const double longitude,
double radius )
virtual

Set the latitude, longitude, and radius for the Camera Model and then compute the corresponding image time, look vector, and image coordinate.

Parameters
latitudeThe ground point latitude in degrees
longitudeThe ground point longitude in positive East, 360 domain degrees
radiusThe ground point radius in meters
Returns
bool If the ground point was set successfully

Reimplemented from Isis::Camera.

References Isis::Angle::Degrees, Isis::Distance::Meters, and SetGround().

◆ SkyMap()

CameraSkyMap * Isis::Camera::SkyMap ( )
inherited

Returns a pointer to the CameraSkyMap object.

Returns
CameraSkyMap*

Referenced by Isis::LineScanCamera::SkyMap(), and Isis::VimsCamera::VimsCamera().

◆ SlantDistance()

double Isis::CSMCamera::SlantDistance ( ) const
virtual

Compute the slant distance from the sensor to the ground point at the currently set time.

Returns
double The distance from the sensor to the ground point in kilometers

Reimplemented from Isis::Sensor.

References Isis::Sensor::GetSurfacePoint(), and sensorPositionBodyFixed().

◆ Slope()

void Isis::Camera::Slope ( double & slope,
bool & success )
inherited

Calculates the slope at the current point by computing the angle between the local surface normal and the ellipsoid surface normal.

If there is a failure during the process, such as there not being an intersection, then success will be false and slope will not be modified.

Parameters
[out]slopeThe slope angle in degrees
[out]successIf the slope was successfully calculated

References Isis::Camera::GetLocalNormal(), Isis::RAD2DEG, and Isis::Spice::target().

◆ SolarDistance()

double Isis::CSMCamera::SolarDistance ( ) const
virtual

Computes the distance to the sun from the currently set ground point.

This is not supported for CSM models because we cannot get the sun position.

Returns
double The distance to the sun

Reimplemented from Isis::Sensor.

References _FILEINFO_, and Isis::IException::Programmer.

◆ solarLongitude()

Longitude Isis::Spice::solarLongitude ( )
virtualinherited

Returns the solar longitude.

Returns
double The Solar Longitude

References Isis::Spice::computeSolarLongitude(), Isis::Spice::m_et, and Isis::Spice::m_solarLongitude.

Referenced by Isis::Cube::attachSpiceFromIsd().

◆ SpacecraftAltitude()

double Isis::Sensor::SpacecraftAltitude ( )
inherited

Returns the distance from the spacecraft to the subspacecraft point in km.

It uses the ellipsoid, not the shape model.

Returns
double Spacecraft altitude.

References Isis::Spice::instrumentPosition(), Isis::Sensor::LocalRadius(), and Isis::Spice::subSpacecraftPoint().

Referenced by Isis::CrismCamera::CrismCamera(), Isis::Camera::LoadCache(), and Isis::MiniRF::MiniRF().

◆ SpacecraftAzimuth()

double Isis::Camera::SpacecraftAzimuth ( )
inherited

Return the Spacecraft Azimuth.

Returns
double Spacecraft Azimuth

References Isis::Spice::subSpacecraftPoint().

◆ spacecraftNameLong()

QString Isis::Camera::spacecraftNameLong ( ) const
virtualinherited

This method returns the full spacecraft name.

Returns
QString

Implements Isis::Sensor.

Reimplemented in Isis::IdealCamera.

References Isis::Camera::m_spacecraftNameLong.

Referenced by Isis::GuiCamera::GuiCamera().

◆ spacecraftNameShort()

QString Isis::Camera::spacecraftNameShort ( ) const
virtualinherited

This method returns the shortened spacecraft name.

Returns
QString

Implements Isis::Sensor.

Reimplemented in Isis::IdealCamera.

References Isis::Camera::m_spacecraftNameShort.

Referenced by Isis::GuiCamera::GuiCamera().

◆ SpacecraftSurfaceVector()

void Isis::Sensor::SpacecraftSurfaceVector ( double scSurfaceVector[3]) const
inherited

Sets the vector between the spacecraft and surface point in body-fixed.

Parameters
scSurfaceVectorThe direction vector from the observer to the surface intersection.
Author
2011-12-20 Tracie Sucharski

References Isis::Sensor::m_lookB.

◆ SpkCenterId()

virtual int Isis::CSMCamera::SpkCenterId ( ) const
inlinevirtual

SPK Center ID - 6 (Saturn)

Returns
int The appropriate instrument code for the Spacecraft Kernel Center ID

Reimplemented from Isis::Camera.

◆ SpkReferenceId()

virtual int Isis::CSMCamera::SpkReferenceId ( ) const
inlinevirtual

SPK Reference ID - J2000.

Returns
int The appropriate instrument code for the Spacecraft Kernel Reference ID

Implements Isis::Camera.

◆ SpkTargetId()

int Isis::Camera::SpkTargetId ( ) const
virtualinherited

Provides target code for instruments SPK NAIF kernel.

This virtual method may need to be implemented in each camera model providing the target NAIF ID code found in the mission SPK kernel. This is typically the spacecraft ID code.

This value can be easily determined by using the NAIF spacit application that sumarizes binary kernels on the SPK kernel used for a particular instrument on a spacecraft. spacit will additionally require a leap seconds kernel (LSK). For example, the output of the MESSENGER SPK camera supporting the MDIS camera below indicates it is indeed the MESSENGER spacecraft:

Segment ID : msgr_20050903_20061125_recon002.nio
Target Body : Body -236, MESSENGER
Center Body : Body 2, VENUS BARYCENTER
Reference frame: Frame 1, J2000
SPK Data Type : Type 1
Description : Modified Difference Array
UTC Start Time : 2006 OCT 16 19:25:41.111
UTC Stop Time : 2006 OCT 31 22:14:24.040
ET Start Time : 2006 OCT 16 19:26:46.293
ET Stop time : 2006 OCT 31 22:15:29.222
Creates sequential IDs.
Definition ID.h:27
virtual iTime time() const
Returns the ephemeris time in seconds which was used to obtain the spacecraft and sun positions.
Definition Spice.cpp:891
This class is used to create and store valid Isis targets.
Definition Target.h:63

The SpkTargetId value is found in the "Target Body" entry (-236).

For most cases, this is the NAIF SPK code returned by the naifSpkCode() method (in the Spice class). Some instrument camera models may need to override this method if this is not case.

Returns
int NAIF code for the SPK target for an instrument

Reimplemented in Isis::ApolloMetricCamera, Isis::IdealCamera, Isis::JunoCamera, Isis::MiniRF, Isis::MdisCamera, Isis::TgoCassisCamera, Isis::VikingCamera, and Isis::VoyagerCamera.

References Isis::Spice::naifSpkCode().

◆ StartEndEphemerisTimes()

pair< double, double > Isis::Camera::StartEndEphemerisTimes ( )
inherited

Calculates the start and end ephemeris times.

These times are found by looping through the bands and finding the ephemeris times for the upper left and bottom right pixels in the image. The start time (shutter open time) is the minimum value of those ephemeris times. The end time (shutter close time) is the maximum value of those ephemeris times. This method must be called before a call to the Spice::createCache() method. It is called in the LoadCache() method.

Returns
pair<double, double> A pair containing the start and end ephemeris times
Exceptions
iException::Programmer- "Unable to find time range for the spice kernels."
See also
createCache()
LoadCache()
Author
2011-02-02 Jeannie Walldren

References _FILEINFO_, Isis::Camera::Bands(), Isis::AlphaCube::BetaLines(), Isis::AlphaCube::BetaSamples(), Isis::Camera::p_alphaCube, Isis::IException::Programmer, Isis::Camera::SetBand(), Isis::Camera::SetImage(), and Isis::Spice::time().

Referenced by Isis::Camera::LoadCache().

◆ storeResult()

void Isis::Spice::storeResult ( QString name,
SpiceValueType type,
QVariant value )
protectedinherited

◆ storeValue()

◆ subSolarPoint()

void Isis::CSMCamera::subSolarPoint ( double & lat,
double & lon )
virtual

Returns the sub-solar latitude/longitude in universal coordinates (0-360 positive east, ocentric).

This is not supported for CSM sensors because we cannot get the position of the sun, only the illumination direction

Parameters
latSub-solar latitude
lonSub-solar longitude

Reimplemented from Isis::Spice.

References _FILEINFO_, and Isis::IException::Programmer.

◆ subSpacecraftPoint() [1/2]

void Isis::CSMCamera::subSpacecraftPoint ( double & lat,
double & lon )
virtual

Get the latitude and longitude of the sub-spacecraft point at the currently set time.

Parameters
[out]latWill be filled with the latitude in degrees
[out]lonWill be filled with the longitude in positive East, 360 domain degrees

Reimplemented from Isis::Spice.

References parentLine(), parentSample(), and subSpacecraftPoint().

Referenced by subSpacecraftPoint().

◆ subSpacecraftPoint() [2/2]

void Isis::CSMCamera::subSpacecraftPoint ( double & lat,
double & lon,
double line,
double sample )
virtual

Get the latitude and longitude of the sub-spacecraft point at the an image coordinate.

Parameters
[out]latWill be filled with the latitude in degrees
[out]lonWill be filled with the longitude in positive East, 360 domain degrees
lineThe line of the image coordinate
samplethe sample of the image coordinate

References Isis::Angle::degrees(), Isis::SurfacePoint::GetLatitude(), Isis::SurfacePoint::GetLongitude(), Isis::Displacement::Kilometers, and sensorPositionBodyFixed().

◆ SunAzimuth()

double Isis::Camera::SunAzimuth ( )
inherited

Returns the Sun Azimuth.

Returns
double Sun Azimuth

References Isis::Spice::subSolarPoint().

◆ sunPosition() [1/2]

SpicePosition * Isis::CSMCamera::sunPosition ( ) const
virtual

Get the SpicePosition object that contains the state information for the sun in J2000.

This is not supported for CSM sensors because we cannot get the position of the sun, only the illumination direction.

Returns
SpicePosition* A pointer to the SpicePosition object for the Sun

Reimplemented from Isis::Spice.

References _FILEINFO_, and Isis::IException::Programmer.

◆ sunPosition() [2/2]

void Isis::CSMCamera::sunPosition ( double p[3]) const
virtual

Get the body fixed position of the sun in kilometers.

This is not supported for CSM sensors because we cannot get the position of the sun, only the illumination direction.

Parameters
[out]pThe position of the sun

Reimplemented from Isis::Spice.

References _FILEINFO_, and Isis::IException::Programmer.

◆ sunToBodyDist()

double Isis::Spice::sunToBodyDist ( ) const
virtualinherited

◆ target()

◆ targetCenterDistance()

double Isis::CSMCamera::targetCenterDistance ( ) const
virtual

Calculates and returns the distance from the spacecraft to the target center at the currently set time.

Returns
double Distance to the center of the target from the spacecraft in kilometers.

Reimplemented from Isis::Spice.

References sensorPositionBodyFixed().

◆ targetName()

QString Isis::Spice::targetName ( ) const
inherited

Returns the QString name of the target.

Returns
QString

References Isis::Spice::m_target, and Isis::Target::name().

◆ time()

iTime Isis::Spice::time ( ) const
virtualinherited

Returns the ephemeris time in seconds which was used to obtain the spacecraft and sun positions.

Returns
iTime the currently set ephemeris time
Exceptions
IException::Programmer"Unable to retrieve the time Spice::setTime must be called first."

References _FILEINFO_, Isis::Spice::m_et, and Isis::IException::Programmer.

Referenced by Isis::LineScanCameraGroundMap::FindFocalPlane(), Isis::IsisSensor::getState(), Isis::IsisSensor::getState(), Isis::HiresCamera::HiresCamera(), Isis::KaguyaTcCamera::KaguyaTcCamera(), Isis::LoHighCamera::LoHighCamera(), Isis::LoMediumCamera::LoMediumCamera(), Isis::LwirCamera::LwirCamera(), Isis::NewHorizonsMvicFrameCamera::SetBand(), Isis::ApolloPanoramicDetectorMap::SetDetector(), Isis::LineScanCameraDetectorMap::SetDetector(), Isis::RadarPulseMap::SetDetector(), Isis::VariableLineScanCameraDetectorMap::SetDetector(), Isis::RadarSlantRangeMap::SetFocalPlane(), Isis::CameraDetectorMap::SetParent(), Isis::RollingShutterCameraDetectorMap::SetParent(), Isis::Sensor::setTime(), Isis::RadarSlantRangeMap::SetUndistortedFocalPlane(), Isis::ApolloMetricCamera::ShutterOpenCloseTimes(), Isis::IssNACamera::ShutterOpenCloseTimes(), Isis::IssWACamera::ShutterOpenCloseTimes(), Isis::HiresCamera::ShutterOpenCloseTimes(), Isis::LwirCamera::ShutterOpenCloseTimes(), Isis::NirCamera::ShutterOpenCloseTimes(), Isis::UvvisCamera::ShutterOpenCloseTimes(), Isis::ClipperWacFcCamera::ShutterOpenCloseTimes(), Isis::DawnFcCamera::ShutterOpenCloseTimes(), Isis::SsiCamera::ShutterOpenCloseTimes(), Isis::HayabusaAmicaCamera::ShutterOpenCloseTimes(), Isis::HayabusaNirsCamera::ShutterOpenCloseTimes(), Isis::Hyb2OncCamera::ShutterOpenCloseTimes(), Isis::JunoCamera::ShutterOpenCloseTimes(), Isis::LoHighCamera::ShutterOpenCloseTimes(), Isis::LoMediumCamera::ShutterOpenCloseTimes(), Isis::Mariner10Camera::ShutterOpenCloseTimes(), Isis::MdisCamera::ShutterOpenCloseTimes(), Isis::MexHrscSrcCamera::ShutterOpenCloseTimes(), Isis::MsiCamera::ShutterOpenCloseTimes(), Isis::NewHorizonsLorriCamera::ShutterOpenCloseTimes(), Isis::NewHorizonsMvicFrameCamera::ShutterOpenCloseTimes(), Isis::OsirisRexOcamsCamera::ShutterOpenCloseTimes(), Isis::RosettaOsirisCamera::ShutterOpenCloseTimes(), Isis::TgoCassisCamera::ShutterOpenCloseTimes(), Isis::VikingCamera::ShutterOpenCloseTimes(), Isis::VoyagerCamera::ShutterOpenCloseTimes(), Isis::FramingCamera::ShutterOpenCloseTimes(), Isis::Camera::StartEndEphemerisTimes(), and Isis::UvvisCamera::UvvisCamera().

◆ UniversalLatitude()

double Isis::Sensor::UniversalLatitude ( ) const
virtualinherited

Returns the planetocentric latitude, in degrees, at the surface intersection point in the body fixed coordinate system.

Returns
double Universal latitude, in degrees.

References Isis::Angle::degrees(), and Isis::Sensor::GetLatitude().

Referenced by Isis::QnetCubeDistanceFilter::filter(), Isis::Camera::NorthAzimuth(), Isis::ControlNetFilter::PointLatLonFilter(), Isis::Camera::SetRightAscensionDeclination(), and Isis::UniversalGroundMap::UniversalLatitude().

◆ UniversalLongitude()

double Isis::Sensor::UniversalLongitude ( ) const
virtualinherited

Returns the positive east, 0-360 domain longitude, in degrees, at the surface intersection point in the body fixed coordinate system.

Returns
double Universal longitude, in degrees.

References Isis::Angle::degrees(), and Isis::Sensor::GetLongitude().

Referenced by Isis::Sensor::LocalSolarTime(), Isis::ControlNetFilter::PointLatLonFilter(), Isis::Camera::SetRightAscensionDeclination(), and Isis::UniversalGroundMap::UniversalLongitude().

Member Data Documentation

◆ m_BJ

SpiceDouble Isis::Spice::m_BJ[3][3]
protectedinherited

This contains the transformation matrix from J2000 (J) to Body fixed (B).

Recall that the transpose of this matrix JB will convert from body-fixed to J2000. It is left in protected space so that conversions between double and SpiceDouble do not have to occur in inheriting classes.

◆ m_et

◆ m_instrumentId

QString Isis::Camera::m_instrumentId
protectedinherited

The InstrumentId as it appears on the cube.

Referenced by Isis::Camera::Camera(), and Isis::Camera::instrumentId().

◆ m_instrumentNameLong

QString Isis::Camera::m_instrumentNameLong
protectedinherited

Full instrument name.

Referenced by Isis::ApolloMetricCamera::ApolloMetricCamera(), Isis::ApolloPanoramicCamera::ApolloPanoramicCamera(), Isis::Camera::Camera(), Isis::Chandrayaan1M3Camera::Chandrayaan1M3Camera(), Isis::ClipperNacRollingShutterCamera::ClipperNacRollingShutterCamera(), Isis::ClipperPushBroomCamera::ClipperPushBroomCamera(), Isis::ClipperWacFcCamera::ClipperWacFcCamera(), Isis::CrismCamera::CrismCamera(), Isis::CTXCamera::CTXCamera(), Isis::DawnFcCamera::DawnFcCamera(), Isis::DawnVirCamera::DawnVirCamera(), Isis::HayabusaAmicaCamera::HayabusaAmicaCamera(), Isis::HayabusaNirsCamera::HayabusaNirsCamera(), Isis::HiresCamera::HiresCamera(), Isis::HiriseCamera::HiriseCamera(), Isis::HrscCamera::HrscCamera(), Isis::Hyb2OncCamera::Hyb2OncCamera(), Isis::Camera::instrumentNameLong(), Isis::IssNACamera::IssNACamera(), Isis::IssWACamera::IssWACamera(), Isis::JunoCamera::JunoCamera(), Isis::KaguyaMiCamera::KaguyaMiCamera(), Isis::KaguyaTcCamera::KaguyaTcCamera(), Isis::LoHighCamera::LoHighCamera(), Isis::LoMediumCamera::LoMediumCamera(), Isis::LroNarrowAngleCamera::LroNarrowAngleCamera(), Isis::LroWideAngleCamera::LroWideAngleCamera(), Isis::LwirCamera::LwirCamera(), Isis::MarciCamera::MarciCamera(), Isis::Mariner10Camera::Mariner10Camera(), Isis::MdisCamera::MdisCamera(), Isis::MexHrscSrcCamera::MexHrscSrcCamera(), Isis::MiniRF::MiniRF(), Isis::MocNarrowAngleCamera::MocNarrowAngleCamera(), Isis::MocWideAngleCamera::MocWideAngleCamera(), Isis::MsiCamera::MsiCamera(), Isis::NewHorizonsLeisaCamera::NewHorizonsLeisaCamera(), Isis::NewHorizonsLorriCamera::NewHorizonsLorriCamera(), Isis::NewHorizonsMvicFrameCamera::NewHorizonsMvicFrameCamera(), Isis::NewHorizonsMvicTdiCamera::NewHorizonsMvicTdiCamera(), Isis::NirCamera::NirCamera(), Isis::OsirisRexOcamsCamera::OsirisRexOcamsCamera(), Isis::RosettaOsirisCamera::RosettaOsirisCamera(), Isis::RosettaVirtisCamera::RosettaVirtisCamera(), Isis::SsiCamera::SsiCamera(), Isis::TgoCassisCamera::TgoCassisCamera(), Isis::ThemisIrCamera::ThemisIrCamera(), Isis::ThemisVisCamera::ThemisVisCamera(), Isis::UvvisCamera::UvvisCamera(), Isis::VikingCamera::VikingCamera(), Isis::VimsCamera::VimsCamera(), and Isis::VoyagerCamera::VoyagerCamera().

◆ m_instrumentNameShort

QString Isis::Camera::m_instrumentNameShort
protectedinherited

Shortened instrument name.

Referenced by Isis::ApolloMetricCamera::ApolloMetricCamera(), Isis::ApolloPanoramicCamera::ApolloPanoramicCamera(), Isis::Camera::Camera(), Isis::Chandrayaan1M3Camera::Chandrayaan1M3Camera(), Isis::ClipperNacRollingShutterCamera::ClipperNacRollingShutterCamera(), Isis::ClipperPushBroomCamera::ClipperPushBroomCamera(), Isis::ClipperWacFcCamera::ClipperWacFcCamera(), Isis::CrismCamera::CrismCamera(), Isis::CTXCamera::CTXCamera(), Isis::DawnFcCamera::DawnFcCamera(), Isis::DawnVirCamera::DawnVirCamera(), Isis::HayabusaAmicaCamera::HayabusaAmicaCamera(), Isis::HayabusaNirsCamera::HayabusaNirsCamera(), Isis::HiresCamera::HiresCamera(), Isis::HiriseCamera::HiriseCamera(), Isis::HrscCamera::HrscCamera(), Isis::Hyb2OncCamera::Hyb2OncCamera(), Isis::Camera::instrumentNameShort(), Isis::IssNACamera::IssNACamera(), Isis::IssWACamera::IssWACamera(), Isis::JunoCamera::JunoCamera(), Isis::KaguyaMiCamera::KaguyaMiCamera(), Isis::KaguyaTcCamera::KaguyaTcCamera(), Isis::LoHighCamera::LoHighCamera(), Isis::LoMediumCamera::LoMediumCamera(), Isis::LroNarrowAngleCamera::LroNarrowAngleCamera(), Isis::LroWideAngleCamera::LroWideAngleCamera(), Isis::LwirCamera::LwirCamera(), Isis::MarciCamera::MarciCamera(), Isis::Mariner10Camera::Mariner10Camera(), Isis::MdisCamera::MdisCamera(), Isis::MexHrscSrcCamera::MexHrscSrcCamera(), Isis::MiniRF::MiniRF(), Isis::MocNarrowAngleCamera::MocNarrowAngleCamera(), Isis::MocWideAngleCamera::MocWideAngleCamera(), Isis::MsiCamera::MsiCamera(), Isis::NewHorizonsLeisaCamera::NewHorizonsLeisaCamera(), Isis::NewHorizonsLorriCamera::NewHorizonsLorriCamera(), Isis::NewHorizonsMvicFrameCamera::NewHorizonsMvicFrameCamera(), Isis::NewHorizonsMvicTdiCamera::NewHorizonsMvicTdiCamera(), Isis::NirCamera::NirCamera(), Isis::OsirisRexOcamsCamera::OsirisRexOcamsCamera(), Isis::RosettaOsirisCamera::RosettaOsirisCamera(), Isis::RosettaVirtisCamera::RosettaVirtisCamera(), Isis::SsiCamera::SsiCamera(), Isis::TgoCassisCamera::TgoCassisCamera(), Isis::ThemisIrCamera::ThemisIrCamera(), Isis::ThemisVisCamera::ThemisVisCamera(), Isis::UvvisCamera::UvvisCamera(), Isis::VikingCamera::VikingCamera(), Isis::VimsCamera::VimsCamera(), and Isis::VoyagerCamera::VoyagerCamera().

◆ m_lookB

SpiceDouble Isis::Sensor::m_lookB[3]
protectedinherited

◆ m_newLookB

bool Isis::Sensor::m_newLookB
protectedinherited

◆ m_spacecraftNameLong

QString Isis::Camera::m_spacecraftNameLong
protectedinherited

Full spacecraft name.

Referenced by Isis::ApolloMetricCamera::ApolloMetricCamera(), Isis::ApolloPanoramicCamera::ApolloPanoramicCamera(), Isis::Camera::Camera(), Isis::Chandrayaan1M3Camera::Chandrayaan1M3Camera(), Isis::ClipperNacRollingShutterCamera::ClipperNacRollingShutterCamera(), Isis::ClipperPushBroomCamera::ClipperPushBroomCamera(), Isis::ClipperWacFcCamera::ClipperWacFcCamera(), Isis::CrismCamera::CrismCamera(), Isis::CTXCamera::CTXCamera(), Isis::DawnFcCamera::DawnFcCamera(), Isis::DawnVirCamera::DawnVirCamera(), Isis::HayabusaAmicaCamera::HayabusaAmicaCamera(), Isis::HayabusaNirsCamera::HayabusaNirsCamera(), Isis::HiresCamera::HiresCamera(), Isis::HiriseCamera::HiriseCamera(), Isis::HrscCamera::HrscCamera(), Isis::Hyb2OncCamera::Hyb2OncCamera(), Isis::IssNACamera::IssNACamera(), Isis::IssWACamera::IssWACamera(), Isis::JunoCamera::JunoCamera(), Isis::KaguyaMiCamera::KaguyaMiCamera(), Isis::KaguyaTcCamera::KaguyaTcCamera(), Isis::LoHighCamera::LoHighCamera(), Isis::LoMediumCamera::LoMediumCamera(), Isis::LroNarrowAngleCamera::LroNarrowAngleCamera(), Isis::LroWideAngleCamera::LroWideAngleCamera(), Isis::LwirCamera::LwirCamera(), Isis::MarciCamera::MarciCamera(), Isis::Mariner10Camera::Mariner10Camera(), Isis::MdisCamera::MdisCamera(), Isis::MexHrscSrcCamera::MexHrscSrcCamera(), Isis::MiniRF::MiniRF(), Isis::MocNarrowAngleCamera::MocNarrowAngleCamera(), Isis::MocWideAngleCamera::MocWideAngleCamera(), Isis::MsiCamera::MsiCamera(), Isis::NewHorizonsLeisaCamera::NewHorizonsLeisaCamera(), Isis::NewHorizonsLorriCamera::NewHorizonsLorriCamera(), Isis::NewHorizonsMvicFrameCamera::NewHorizonsMvicFrameCamera(), Isis::NewHorizonsMvicTdiCamera::NewHorizonsMvicTdiCamera(), Isis::NirCamera::NirCamera(), Isis::OsirisRexOcamsCamera::OsirisRexOcamsCamera(), Isis::RosettaOsirisCamera::RosettaOsirisCamera(), Isis::RosettaVirtisCamera::RosettaVirtisCamera(), Isis::Camera::spacecraftNameLong(), Isis::SsiCamera::SsiCamera(), Isis::TgoCassisCamera::TgoCassisCamera(), Isis::ThemisIrCamera::ThemisIrCamera(), Isis::ThemisVisCamera::ThemisVisCamera(), Isis::UvvisCamera::UvvisCamera(), Isis::VikingCamera::VikingCamera(), Isis::VimsCamera::VimsCamera(), and Isis::VoyagerCamera::VoyagerCamera().

◆ m_spacecraftNameShort

QString Isis::Camera::m_spacecraftNameShort
protectedinherited

Shortened spacecraft name.

Referenced by Isis::ApolloMetricCamera::ApolloMetricCamera(), Isis::ApolloPanoramicCamera::ApolloPanoramicCamera(), Isis::Camera::Camera(), Isis::Chandrayaan1M3Camera::Chandrayaan1M3Camera(), Isis::ClipperNacRollingShutterCamera::ClipperNacRollingShutterCamera(), Isis::ClipperPushBroomCamera::ClipperPushBroomCamera(), Isis::ClipperWacFcCamera::ClipperWacFcCamera(), Isis::CrismCamera::CrismCamera(), Isis::CTXCamera::CTXCamera(), Isis::DawnFcCamera::DawnFcCamera(), Isis::DawnVirCamera::DawnVirCamera(), Isis::HayabusaAmicaCamera::HayabusaAmicaCamera(), Isis::HayabusaNirsCamera::HayabusaNirsCamera(), Isis::HiresCamera::HiresCamera(), Isis::HiriseCamera::HiriseCamera(), Isis::HrscCamera::HrscCamera(), Isis::Hyb2OncCamera::Hyb2OncCamera(), Isis::IssNACamera::IssNACamera(), Isis::IssWACamera::IssWACamera(), Isis::JunoCamera::JunoCamera(), Isis::KaguyaMiCamera::KaguyaMiCamera(), Isis::KaguyaTcCamera::KaguyaTcCamera(), Isis::LoHighCamera::LoHighCamera(), Isis::LoMediumCamera::LoMediumCamera(), Isis::LroNarrowAngleCamera::LroNarrowAngleCamera(), Isis::LroWideAngleCamera::LroWideAngleCamera(), Isis::LwirCamera::LwirCamera(), Isis::MarciCamera::MarciCamera(), Isis::Mariner10Camera::Mariner10Camera(), Isis::MdisCamera::MdisCamera(), Isis::MexHrscSrcCamera::MexHrscSrcCamera(), Isis::MiniRF::MiniRF(), Isis::MocNarrowAngleCamera::MocNarrowAngleCamera(), Isis::MocWideAngleCamera::MocWideAngleCamera(), Isis::MsiCamera::MsiCamera(), Isis::NewHorizonsLeisaCamera::NewHorizonsLeisaCamera(), Isis::NewHorizonsLorriCamera::NewHorizonsLorriCamera(), Isis::NewHorizonsMvicFrameCamera::NewHorizonsMvicFrameCamera(), Isis::NewHorizonsMvicTdiCamera::NewHorizonsMvicTdiCamera(), Isis::NirCamera::NirCamera(), Isis::OsirisRexOcamsCamera::OsirisRexOcamsCamera(), Isis::RosettaOsirisCamera::RosettaOsirisCamera(), Isis::RosettaVirtisCamera::RosettaVirtisCamera(), Isis::Camera::spacecraftNameShort(), Isis::SsiCamera::SsiCamera(), Isis::TgoCassisCamera::TgoCassisCamera(), Isis::ThemisIrCamera::ThemisIrCamera(), Isis::ThemisVisCamera::ThemisVisCamera(), Isis::UvvisCamera::UvvisCamera(), Isis::VikingCamera::VikingCamera(), Isis::VimsCamera::VimsCamera(), and Isis::VoyagerCamera::VoyagerCamera().

◆ m_target

◆ m_uB

SpiceDouble Isis::Spice::m_uB[3]
protectedinherited

This contains the sun position (u) in the bodyfixed reference frame (B).

It is left protected so that conversions between double and SpiceDouble do not have to occur in inheriting classes. Units are km

Referenced by Isis::Sensor::IncidenceAngle(), Isis::Camera::LocalPhotometricAngles(), Isis::Sensor::PhaseAngle(), Isis::Spice::setTime(), Isis::Spice::subSolarPoint(), and Isis::Spice::sunPosition().

◆ p_alphaCube

◆ p_childLine

◆ p_childSample

◆ p_pointComputed


The documentation for this class was generated from the following files: