Isis Developer Reference
Isis::IsisSensor Class Reference

Implementation of SensorUtilities::Sensor backed by an ISIS camera model. More...

#include <IsisSensor.h>

Inheritance diagram for Isis::IsisSensor:
Inheritance graph
Collaboration diagram for Isis::IsisSensor:
Collaboration graph

Public Member Functions

 IsisSensor (Camera *cam)
 Create an IsisSensor wrapping an ISIS Camera object.
 
virtual SensorUtilities::ObserverState getState (const SensorUtilities::ImagePt &imagePoint)
 Get the sensor state at an image coordinate.
 
virtual SensorUtilities::ObserverState getState (const SensorUtilities::GroundPt3D &groundPt)
 Get the sensor state as it observes a ground point.
 

Detailed Description

Implementation of SensorUtilities::Sensor backed by an ISIS camera model.

This includes a full shape model and sun, but they are not used except when getting the state from a ground point, the ground point is mapped back onto the surface model prior to back-projection.

Constructor & Destructor Documentation

◆ IsisSensor()

Isis::IsisSensor::IsisSensor ( Camera * cam)

Create an IsisSensor wrapping an ISIS Camera object.

Member Function Documentation

◆ getState() [1/2]

SensorUtilities::ObserverState Isis::IsisSensor::getState ( const SensorUtilities::GroundPt3D & groundPt)
virtual

Get the sensor state as it observes a ground point.

The ground points is mapped back onto the surface model used by the ISIS Camera prior to back projecting it into the image. So, it is possible this will not perfectly invert with getState(ImagePt) depending on how what surface model you then intersect it with.

References Isis::Camera::Band(), Isis::Sensor::GetSurfacePoint(), Isis::Spice::instrumentBodyFixedPosition(), Isis::Camera::Line(), Isis::Sensor::lookDirectionBodyFixed(), Isis::Sensor::lookDirectionJ2000(), Isis::Distance::Meters, Isis::Angle::Radians, Isis::Camera::Sample(), Isis::Camera::SetBand(), Isis::Camera::SetGround(), Isis::Camera::SetImage(), and Isis::Spice::time().

◆ getState() [2/2]

SensorUtilities::ObserverState Isis::IsisSensor::getState ( const SensorUtilities::ImagePt & imagePoint)
virtual

Get the sensor state at an image coordinate.

If the image coordinate matches the image coordinate that the ISIS Camera is already set to, then it will not compute a new intersection. Note that SensorUtilities::ImagePt are 0-based and ISIS image coordiantes are 0.5-based. The input is expected to use the SensorUtilities convention to conform to the interface. This function handles the conversion to and from ISIS image coordinates.

References Isis::Camera::Band(), Isis::Spice::instrumentBodyFixedPosition(), Isis::Camera::IsBandIndependent(), Isis::Camera::Line(), Isis::Sensor::lookDirectionBodyFixed(), Isis::Sensor::lookDirectionJ2000(), Isis::Camera::Sample(), Isis::Camera::SetBand(), Isis::Camera::SetImage(), and Isis::Spice::time().


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