![]()  | 
  
    Isis Developer Reference
    
   | 
 
Convert between undistorted focal plane coordinate (slant range) and ground coordinates. More...
#include <RadarGroundMap.h>


Public Types | |
| enum | PartialType {  WRT_Latitude , WRT_Longitude , WRT_Radius , WRT_MajorAxis , WRT_MinorAxis , WRT_PolarAxis }  | 
| Radius axes types to use when computing partials.  More... | |
Public Member Functions | |
| RadarGroundMap (Camera *parent, Radar::LookDirection ldir, double waveLength) | |
| virtual | ~RadarGroundMap () | 
| Destructor.  More... | |
| virtual bool | SetFocalPlane (const double ux, const double uy, const double uz) | 
| Compute ground position from slant range.  More... | |
| virtual bool | SetGround (const Latitude &lat, const Longitude &lon) | 
| Compute undistorted focal plane coordinate from ground position.  More... | |
| virtual bool | SetGround (const SurfacePoint &surfacePoint) | 
| Compute undistorted focal plane coordinate from ground position that includes a local radius.  More... | |
| virtual bool | GetXY (const SurfacePoint &spoint, double *cudx, double *cudy, bool test=false) | 
| Compute undistorted focal plane coordinate from ground position using current Spice from SetImage call.  More... | |
| virtual bool | GetdXYdPosition (const SpicePosition::PartialType varType, int coefIndex, double *cudx, double *cudy) | 
| Compute derivative w/r to position of focal plane coordinate from ground position using current Spice from SetImage call.  More... | |
| virtual bool | GetdXYdPoint (std::vector< double > d_lookB, double *dx, double *dy) | 
| Compute derivative of focal plane coordinate w/r to ground point from ground position using current Spice from SetImage call.  More... | |
| void | SetRangeSigma (double rangeSigma) | 
| Set the range sigma.  More... | |
| double | RangeSigma () | 
| Return the range sigma.  More... | |
| void | SetDopplerSigma (double dopplerSigma) | 
| Set the doppler sigma.  More... | |
| double | YScale () | 
| Return the doppler sigma.  More... | |
| double | WaveLength () | 
| Return the wavelength.  More... | |
| virtual bool | GetXY (const double lat, const double lon, const double radius, double *cudx, double *cudy) | 
| Compute undistorted focal plane coordinate from ground position using current Spice from SetImage call.  More... | |
| virtual bool | GetdXYdOrientation (const SpiceRotation::PartialType varType, int coefIndex, double *cudx, double *cudy) | 
| Compute derivative of focal plane coordinate w/r to instrument using current state from SetImage call.  More... | |
| virtual bool | GetdXYdTOrientation (const SpiceRotation::PartialType varType, int coefIndex, double *cudx, double *cudy) | 
| Compute derivative of focal plane coordinate w/r to target body using current state.  More... | |
| std::vector< double > | PointPartial (SurfacePoint spoint, PartialType wrt) | 
| Compute derivative with respect to indicated variable of conversion function from lat/lon/rad to rectangular coord.  More... | |
| std::vector< double > | EllipsoidPartial (SurfacePoint spoint, PartialType raxis) | 
| Compute derivative of focal plane coordinate w/r to one of the ellipsoidal radii (a, b, or c)  More... | |
| std::vector< double > | MeanRadiusPartial (SurfacePoint spoint, Distance meanRadius) | 
| Compute derivative of focal plane coordinate w/r to mean of the ellipsoidal radii (a, b, c)  More... | |
| double | DQuotient (std::vector< double > &look, std::vector< double > &dlook, int index) | 
| Convenience method for quotient rule applied to look vector.  More... | |
| double | FocalPlaneX () const | 
| double | FocalPlaneY () const | 
Protected Attributes | |
| double | p_focalPlaneX | 
| Camera's x focal plane coordinate.  More... | |
| double | p_focalPlaneY | 
| Camera's y focal plane coordinate.  More... | |
Convert between undistorted focal plane coordinate (slant range) and ground coordinates.
This class is used to convert between undistorted focal plane coordinate (the slant range) and ground coordinates lat/lon. This class handles the case of Radar instruments.
      
  | 
  inherited | 
| Isis::RadarGroundMap::RadarGroundMap | ( | Camera * | parent, | 
| Radar::LookDirection | ldir, | ||
| double | waveLength | ||
| ) | 
References Isis::Camera::Lines().
      
  | 
  inlinevirtual | 
Destructor.
      
  | 
  inherited | 
Convenience method for quotient rule applied to look vector.
This method will compute the derivative of the following function (coordinate x or y) / (coordinate z)
| look | look vector in camera frame | 
| dlook | derivative of look vector in camera frame | 
| index | vector value to differentiate | 
Referenced by Isis::CameraGroundMap::GetdXYdOrientation(), Isis::CameraGroundMap::GetdXYdPoint(), Isis::CameraGroundMap::GetdXYdPosition(), and Isis::CameraGroundMap::GetdXYdTOrientation().
      
  | 
  inherited | 
Compute derivative of focal plane coordinate w/r to one of the ellipsoidal radii (a, b, or c)
This method will compute the derivative of the undistorted focal plane coordinate for a ground position with respect to the a (major axis), b (minor axis), or c (polar axis) radius, using the current Spice settings (time and kernels) without resetting the current point values for lat/lon/radius/x/y.
| spoint | Surface point whose derivative is to be evalutated | 
| raxis | Radius axis enumerated partial type (definitions in this header) | 
| IException::Programmer | "Invalid partial type for this method" | 
References _FILEINFO_, Isis::SurfacePoint::GetLatitude(), Isis::SurfacePoint::GetLongitude(), Isis::IException::Programmer, Isis::Angle::radians(), Isis::CameraGroundMap::WRT_MajorAxis, Isis::CameraGroundMap::WRT_MinorAxis, and Isis::CameraGroundMap::WRT_PolarAxis.
Referenced by Isis::IsisBundleObservation::computeTargetPartials().
      
  | 
  inlineinherited | 
References Isis::CameraGroundMap::p_focalPlaneX.
      
  | 
  inlineinherited | 
References Isis::CameraGroundMap::p_focalPlaneY.
      
  | 
  virtualinherited | 
Compute derivative of focal plane coordinate w/r to instrument using current state from SetImage call.
This method will compute the derivative of the undistorted focal plane coordinate for a ground position with respect to the instrument orientation, using the current Spice settings (time and kernels) without resetting the current point values for lat/lon/radius/x/y.
| varType | enumerated partial type (definitions in SpicePosition) | 
| coefIndex | coefficient index of fit polynomial | 
| *dx | out] pointer to partial derivative of undistorted focal plane x | 
| *dy | [out] pointer to partial derivative of undistorted focal plane y | 
References Isis::Camera::DistortionMap(), Isis::CameraGroundMap::DQuotient(), Isis::Spice::instrumentRotation(), Isis::CameraGroundMap::p_camera, Isis::SpiceRotation::ReferenceVector(), Isis::SpiceRotation::ToReferencePartial(), and Isis::CameraDistortionMap::UndistortedFocalPlaneZ().
Referenced by Isis::IsisBundleObservation::computeImagePartials().
      
  | 
  virtual | 
Compute derivative of focal plane coordinate w/r to ground point from ground position using current Spice from SetImage call.
This method will compute the derivative of the undistorted focal plane coordinate for a ground position with respect to lat, lon, or radius, using the current Spice settings (time and kernels) without resetting the current point values for lat/lon/radius/x/y.
| varType | enumerated partial type (definitions in SpicePosition) | 
| coefIndex | coefficient index of fit polynomial | 
| *dx | pointer to partial derivative of undistorted focal plane x | 
| *dy | pointer to partial derivative of undistorted focal plane y | 
Reimplemented from Isis::CameraGroundMap.
      
  | 
  virtual | 
Compute derivative w/r to position of focal plane coordinate from ground position using current Spice from SetImage call.
This method will compute the derivative of the undistorted focal plane coordinate for a ground position with respect to a spacecraft position coordinate, using the current Spice settings (time and kernels) without resetting the current point values for lat/lon/radius/x/y.
| varType | enumerated partial type (definitions in SpicePosition) | 
| coefIndex | coefficient index of fit polynomial | 
| *dx | pointer to partial derivative of undistorted focal plane x | 
| *dy | pointer to partial derivative of undistorted focal plane y | 
Reimplemented from Isis::CameraGroundMap.
References Isis::Spice::bodyRotation(), Isis::SpicePosition::CoordinatePartial(), Isis::Spice::instrumentPosition(), Isis::SpiceRotation::ReferenceVector(), and Isis::SpicePosition::VelocityPartial().
      
  | 
  virtualinherited | 
Compute derivative of focal plane coordinate w/r to target body using current state.
This method will compute the derivative of the undistorted focal plane coordinate for a ground position with respect to the target body orientation, using the current Spice settings (time and kernels) without resetting the current point values for lat/lon/radius/x/y.
| varType | enumerated partial type (definitions in SpicePosition) | 
| coefIndex | coefficient index of fit polynomial | 
| *dx | [out] pointer to partial derivative of undistorted focal plane x | 
| *dy | [out] pointer to partial derivative of undistorted focal plane y | 
References Isis::Spice::bodyRotation(), Isis::Camera::DistortionMap(), Isis::CameraGroundMap::DQuotient(), Isis::Spice::instrumentRotation(), Isis::CameraGroundMap::p_camera, Isis::SpiceRotation::ReferenceVector(), Isis::SpiceRotation::toJ2000Partial(), and Isis::CameraDistortionMap::UndistortedFocalPlaneZ().
Referenced by Isis::IsisBundleObservation::computeTargetPartials().
      
  | 
  virtualinherited | 
Compute undistorted focal plane coordinate from ground position using current Spice from SetImage call.
This method will compute the undistorted focal plane coordinate for a ground position, using the current Spice settings (time and kernels) without resetting the current point values for lat/lon/radius/m_pB/x/y. The class value for m_lookJ is set by this method.
| lat | Latitude in degrees | 
| lon | Longitude in degrees | 
| radius | Radius in meters | 
| cudx | [out] Pointer to computed undistored x focal plane coordinate | 
| cudy | [out] Pointer to computed undistored y focal plane coordinate | 
References Isis::Angle::Degrees, Isis::CameraGroundMap::GetXY(), and Isis::Distance::Meters.
      
  | 
  virtual | 
Compute undistorted focal plane coordinate from ground position using current Spice from SetImage call.
This method will compute the undistorted focal plane coordinate for a ground position, using the current Spice settings (time and kernels) without resetting the current point values for lat/lon/radius/x/y and related radar parameter p_slantRange.
| spoint | 
Reimplemented from Isis::CameraGroundMap.
References _FILEINFO_, Isis::Spice::bodyRotation(), Isis::SpicePosition::Coordinate(), Isis::SurfacePoint::GetX(), Isis::SurfacePoint::GetY(), Isis::SurfacePoint::GetZ(), Isis::Spice::instrumentPosition(), Isis::Displacement::kilometers(), Isis::IException::Programmer, Isis::SpiceRotation::ReferenceVector(), and Isis::SpicePosition::Velocity().
      
  | 
  inherited | 
Compute derivative of focal plane coordinate w/r to mean of the ellipsoidal radii (a, b, c)
This method will compute the derivative of the undistorted focal plane coordinate for a ground position with respect to the mean of the a (major axis), b (minor axis), and c (polar axis) radius, using the current Spice settings (time and kernels) without resetting the current point values for lat/lon/radius/x/y.
| spoint | Surface point whose derivative is to be evalutated | 
| meanRadius | Computed mean of radii | 
References Isis::SurfacePoint::GetX(), Isis::SurfacePoint::GetY(), Isis::SurfacePoint::GetZ(), Isis::Displacement::kilometers(), and Isis::Distance::kilometers().
Referenced by Isis::IsisBundleObservation::computeTargetPartials().
      
  | 
  inherited | 
Compute derivative with respect to indicated variable of conversion function from lat/lon/rad to rectangular coord.
| spoint | Surface point (ground position) | 
| wrt | take derivative with respect to this value | 
References Isis::SurfacePoint::GetLatitude(), Isis::SurfacePoint::GetLocalRadius(), Isis::SurfacePoint::GetLongitude(), Isis::Distance::kilometers(), Isis::Angle::radians(), Isis::CameraGroundMap::WRT_Latitude, and Isis::CameraGroundMap::WRT_Longitude.
      
  | 
  inline | 
Return the range sigma.
      
  | 
  inline | 
Set the doppler sigma.
Referenced by Isis::MiniRF::MiniRF().
      
  | 
  virtual | 
Compute ground position from slant range.
| ux | Slant range distance in meters scaled to focal plane | 
| uy | Doppler shift (always 0.0) | 
| uz | Not used | 
Reimplemented from Isis::CameraGroundMap.
References Isis::Spice::bodyRotation(), Isis::SpicePosition::Coordinate(), Isis::Spice::instrumentPosition(), Isis::Spice::instrumentRotation(), Isis::SpiceRotation::J2000Vector(), Isis::Distance::kilometers(), Isis::PI, Isis::Spice::radii(), Isis::SpiceRotation::ReferenceVector(), and Isis::SpicePosition::Velocity().
Compute undistorted focal plane coordinate from ground position.
| lat | planetocentric latitude in degrees | 
| lon | planetocentric longitude in degrees | 
Reimplemented from Isis::CameraGroundMap.
References Isis::Distance::isValid(), Isis::Sensor::LocalRadius(), and SetGround().
Referenced by SetGround().
      
  | 
  virtual | 
Compute undistorted focal plane coordinate from ground position that includes a local radius.
| lat | planetocentric latitude in degrees | 
| lon | planetocentric longitude in degrees | 
| radius | local radius in meters | 
Reimplemented from Isis::CameraGroundMap.
References Isis::Spice::bodyRotation(), Isis::SpicePosition::Coordinate(), Isis::Spice::instrumentPosition(), Isis::Spice::instrumentRotation(), Isis::SpiceRotation::J2000Vector(), Isis::Radar::Left, Isis::CameraGroundMap::p_focalPlaneX, Isis::CameraGroundMap::p_focalPlaneY, Isis::SpiceRotation::ReferenceVector(), Isis::Radar::Right, Isis::Camera::SetFocalLength(), Isis::ShapeModel::setSurfacePoint(), Isis::Target::shape(), Isis::Spice::target(), Isis::SurfacePoint::ToNaifArray(), Isis::SurfacePoint::Valid(), and Isis::SpicePosition::Velocity().
      
  | 
  inline | 
Set the range sigma.
Referenced by Isis::MiniRF::MiniRF().
      
  | 
  inline | 
Return the wavelength.
      
  | 
  inline | 
Return the doppler sigma.
      
  | 
  protectedinherited | 
Camera's x focal plane coordinate.
Referenced by Isis::LineScanCameraGroundMap::FindFocalPlane(), Isis::CameraGroundMap::FocalPlaneX(), Isis::VimsGroundMap::SetGround(), and SetGround().
      
  | 
  protectedinherited | 
Camera's y focal plane coordinate.
Referenced by Isis::LineScanCameraGroundMap::FindFocalPlane(), Isis::CameraGroundMap::FocalPlaneY(), Isis::VimsGroundMap::SetGround(), and SetGround().