edu.wisc.ssec.mcidas
Class MSATnav

java.lang.Object
  extended byedu.wisc.ssec.mcidas.AREAnav
      extended byedu.wisc.ssec.mcidas.MSATnav
All Implemented Interfaces:
Serializable

public final class MSATnav
extends AREAnav

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

See Also:
McIDAS Programmer's Manual, Serialized Form

Field Summary
(package private)  double a
           
(package private)  double deltax
           
(package private)  double deltay
           
(package private)  double EARTH_RADIUS
           
(package private)  double h
           
(package private)  int[] ioff
           
(package private)  int itype
           
(package private)  double lpsi2
           
(package private)  double NOMORB
           
(package private)  double rflon
           
(package private)  double rp
           
(package private)  double sublon
           
 
Fields inherited from class edu.wisc.ssec.mcidas.AREAnav
DEGREES_TO_RADIANS, DMSP, GMSX, GOES, GVAR, indexEle, indexLat, indexLine, indexLon, LALO, LAMB, LL, MERC, MOLL, MSAT, MSG, MSGT, POES, PS, RADIANS_TO_DEGREES, RADR, RECT, serialVersionUID, TANC, XY
 
Constructor Summary
MSATnav(int[] iparms)
          Set up for the real math work.
 
Method Summary
 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, doubleToFloat, equals, floatToDouble, getLineOffset, 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
 

Field Detail

NOMORB

final double NOMORB
See Also:
Constant Field Values

EARTH_RADIUS

final double EARTH_RADIUS
See Also:
Constant Field Values

itype

int itype

h

double h

a

double a

rp

double rp

lpsi2

double lpsi2

deltax

double deltax

deltay

double deltay

rflon

double rflon

sublon

double sublon

ioff

int[] ioff
Constructor Detail

MSATnav

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

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

toLatLon

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

Specified by:
toLatLon in class AREAnav
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
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
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
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);