edu.wisc.ssec.mcidas
Class RADRnav

java.lang.Object
  extended by edu.wisc.ssec.mcidas.AREAnav
      extended by edu.wisc.ssec.mcidas.RADRnav
All Implemented Interfaces:
Serializable

public final class RADRnav
extends AREAnav

Navigation class for Radar (RADR) type nav. This code was modified from the original FORTRAN code (nvxradr.dlm) on the McIDAS system. It only supports latitude/longitude to line/element transformations (LL) and vice/versa. Transform to 'XYZ' not implemented.

Author:
Don Murray
See Also:
McIDAS Programmer's Manual, Serialized Form

Field Summary
 
Fields inherited from class edu.wisc.ssec.mcidas.AREAnav
ABIS, DEGREES_TO_RADIANS, DMSP, GEOS, GMSX, GOES, GVAR, indexEle, indexLat, indexLine, indexLon, KALP, LALO, LAMB, LL, MERC, MOLL, MSAT, MSG, MSGT, POES, PS, RADIANS_TO_DEGREES, RADR, RECT, SIN, TANC, XY
 
Constructor Summary
RADRnav(int[] iparms)
          Set up for the real math work.
 
Method Summary
 boolean equals(Object o)
          Determines whether or not the Object in question is the same as this AREAnav.
 double[][] toLatLon(double[][] linele)
          converts from satellite coordinates to latitude/longitude
 float[][] toLatLon(float[][] linele)
          converts from satellite coordinates to latitude/longitude
 double[][] toLinEle(double[][] latlon)
          toLinEle converts lat/long to satellite line/element
 float[][] toLinEle(float[][] latlon)
          toLinEle converts lat/long to satellite line/element
 
Methods inherited from class edu.wisc.ssec.mcidas.AREAnav
areaCoordToImageCoord, areaCoordToImageCoord, areaCoordToImageCoord, areaCoordToImageCoord, canApproximateWithSpline, doubleToFloat, floatToDouble, getLineOffset, getSubpoint, imageCoordToAreaCoord, imageCoordToAreaCoord, imageCoordToAreaCoord, imageCoordToAreaCoord, isFlippedLineCoordinates, makeAreaNav, makeAreaNav, setFlipLineCoordinates, setImageStart, setMag, setMag, setRes, setRes, setStart, toString
 
Methods inherited from class java.lang.Object
clone, finalize, getClass, hashCode, notify, notifyAll, wait, wait, wait
 

Constructor Detail

RADRnav

public RADRnav(int[] iparms)
        throws IllegalArgumentException
Set up for the real math work. Must pass in the int array of the RADR nav 'codicil'.

Parameters:
iparms - the nav block from the image file
Throws:
IllegalArgumentException - if the nav block is not a RADR type.
Method Detail

toLatLon

public double[][] toLatLon(double[][] linele)
converts from satellite coordinates to latitude/longitude

Specified by:
toLatLon in class AREAnav
Parameters:
linele - array of line/element pairs. Where linele[indexLine][] is a 'line' and linele[indexEle][] is an element. These are in 'file' coordinates (not "image" coordinates.)
Returns:
latlon[][] array of lat/long pairs. Output array is latlon[indexLat][] of latitudes and latlon[indexLon][] of longitudes.

toLinEle

public double[][] toLinEle(double[][] latlon)
toLinEle converts lat/long to satellite line/element

Specified by:
toLinEle in class AREAnav
Parameters:
latlon - array of lat/long pairs. Where latlon[indexLat][] are latitudes and latlon[indexLon][] are longitudes.
Returns:
linele[][] array of line/element pairs. Where linele[indexLine][] is a line and linele[indexEle][] is an element. These are in 'file' coordinates (not "image" coordinates);

toLatLon

public float[][] toLatLon(float[][] linele)
converts from satellite coordinates to latitude/longitude

Overrides:
toLatLon in class AREAnav
Parameters:
linele - array of line/element pairs. Where linele[indexLine][] is a 'line' and linele[indexEle][] is an element. These are in 'file' coordinates (not "image" coordinates.)
Returns:
latlon[][] array of lat/long pairs. Output array is latlon[indexLat][] of latitudes and latlon[indexLon][] of longitudes.

toLinEle

public float[][] toLinEle(float[][] latlon)
toLinEle converts lat/long to satellite line/element

Overrides:
toLinEle in class AREAnav
Parameters:
latlon - array of lat/long pairs. Where latlon[indexLat][] are latitudes and latlon[indexLon][] are longitudes.
Returns:
linele[][] array of line/element pairs. Where linele[indexLine][] is a line and linele[indexEle][] is an element. These are in 'file' coordinates (not "image" coordinates);

equals

public boolean equals(Object o)
Description copied from class: AREAnav
Determines whether or not the Object in question is the same as this AREAnav. Right now, this returns false until we can figure out when two navigations are equal. Subclasses could override if desired.

Overrides:
equals in class AREAnav
Parameters:
o - the AREAnav in question