|
||||||||||
| PREV CLASS NEXT CLASS | FRAMES NO FRAMES | |||||||||
| SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD | |||||||||
java.lang.Objectedu.wisc.ssec.mcidas.AREAnav
The AREAnav is the superclass for AREA file navigation modules. When used with AreaFile class, set up like this:
AreaFile af;
try {
af = new AreaFile("/home/user/mcidas/data/AREA0001");
} catch (AreaFileException e) {
System.out.println(e);
return;
}
int[] dir;
try { dir=af.getDir();
} catch (AreaFileException e){
System.out.println(e);
return;
}
int[] nav;
try { nav=af.getNav();
} catch (AreaFileException e){
System.out.println(e);
return;
}
try {
AREAnav ng = new XXXXnav(nav); // XXXXnav is the specific implementation
} catch (IllegalArgumentException excp) {
System.out.println(excp);
return;
}
ng.setImageStart(dir[5], dir[6]);
ng.setRes(dir[11], dir[12]);
ng.setStart(0,0);
ng.setMag(1,1);
......................
By convention, latitudes are positive North (negative South), and
longitudes are positive East (negative West).
| Field Summary | |
static double |
DEGREES_TO_RADIANS
Constant for degrees to radians conversion |
static int |
DMSP
Code value in AREA files used to designate DMSP navigation |
static int |
GMSX
Code value in AREA files used to designate GMSX (GMS) navigation |
static int |
GOES
Code value in AREA files used to designate GOES (GOES D-H) navigation |
static int |
GVAR
Code value in AREA files used to designate GVAR (GOES I-M) navigation |
int |
indexEle
"Element" index in line/element array |
int |
indexLat
"Latitude" index in latitude/longitude array |
int |
indexLine
"Line" index in line/element array |
int |
indexLon
"Longitude" index in latitude/longitude array |
static int |
LALO
Code value in AREA files used to designate Lat/Lon |
static int |
LAMB
Code value in AREA files used to designate LAMB (lambert conformal) navigation |
static int |
LL
Code value for specifying Latitude/Longitude transformations |
static int |
MERC
Code value in AREA files used to designate MERC (mercator) navigation |
static int |
MOLL
Code value in AREA files used to designate MOLL (Mollweide) navigation |
static int |
MSAT
Code value in AREA files used to designate MSAT (Meteosat) navigation |
static int |
MSG
Code value in AREA files used to designate MSG navigation |
static int |
MSGT
Code value in AREA files used to designate MSGT navigation |
static int |
POES
Code value in AREA files used to designate POES navigation |
static int |
PS
Code value in AREA files used to designate PS (polar stereographic) navigation |
static double |
RADIANS_TO_DEGREES
Constant for radians to degrees conversion |
static int |
RADR
Code value in AREA files used to designate RADR (radar) navigation |
static int |
RECT
Code value in AREA files used to designate RECT (rectilinear) navigation |
(package private) static long |
serialVersionUID
|
static int |
TANC
Code value in AREA files used to designate TANC (tangent cone) navigation |
static int |
XY
Code value for specifying Cartesian (X/Y) transformations |
| Constructor Summary | |
AREAnav()
|
|
| Method Summary | |
double[][] |
areaCoordToImageCoord(double[][] linele)
Converts line/element array values from AREA (file) to Image coordinates. |
double[][] |
areaCoordToImageCoord(double[][] linele,
double[][] newvals)
Converts line/element array values from AREA (file) to Image coordinates. |
float[][] |
areaCoordToImageCoord(float[][] linele)
Converts line/element array values from AREA (file) to Image coordinates. |
float[][] |
areaCoordToImageCoord(float[][] linele,
float[][] newvals)
Converts line/element array values from AREA (file) to Image coordinates. |
static float[][] |
doubleToFloat(double[][] value)
|
boolean |
equals(Object obj)
Determines whether or not the Object in question is
the same as this AREAnav. |
static double[][] |
floatToDouble(float[][] value)
|
double |
getLineOffset()
Get the line offset for flipped coordinates |
double[][] |
imageCoordToAreaCoord(double[][] linele)
Converts line/element array values from Image to AREA (File) coordinates. |
double[][] |
imageCoordToAreaCoord(double[][] linele,
double[][] newvals)
Converts line/element array values from Image to AREA (File) coordinates. |
float[][] |
imageCoordToAreaCoord(float[][] linele)
Converts line/element array values from Image to AREA (File) coordinates. |
float[][] |
imageCoordToAreaCoord(float[][] linele,
float[][] newvals)
Converts line/element array values from Image to AREA (File) coordinates. |
boolean |
isFlippedLineCoordinates()
Determine if navigation is using flipped coordinates |
static AREAnav |
makeAreaNav(int[] navBlock)
Return an AREAnav based on the input nav block. |
static AREAnav |
makeAreaNav(int[] navBlock,
int[] auxBlock)
|
void |
setFlipLineCoordinates(int line)
specify whether the line coordinates are inverted and the line offset. |
void |
setImageStart(int startImageLine,
int startImageElement)
define the coordinate in the [0][0] position of the image. |
void |
setMag(float magLine,
float magElement)
define the magnification factor (in case an image was blown up when displayed). |
void |
setMag(int magLine,
int magElement)
define the magnification factor (in case an image was blown up when displayed). |
void |
setRes(float resLine,
float resElement)
Define the resolution of the image. |
void |
setRes(int resLine,
int resElement)
Define the resolution of the image. |
void |
setStart(int startLine,
int startElement)
define the starting line and element of another coordinate system -- usually a TV (note that the TV coordinates start at (1,1). |
abstract double[][] |
toLatLon(double[][] linele)
converts from satellite coordinates to latitude/longitude |
float[][] |
toLatLon(float[][] linele)
converts from satellite coordinates to latitude/longitude. |
abstract double[][] |
toLinEle(double[][] latlon)
toLinEle converts lat/long to satellite line/element |
float[][] |
toLinEle(float[][] latlon)
toLinEle converts lat/long to satellite line/element This implementation converts the input array to doubles and calls the double signature of toLineEle(double[][]). |
String |
toString()
Return a String representation of this nav module |
| Methods inherited from class java.lang.Object |
clone, finalize, getClass, hashCode, notify, notifyAll, wait, wait, wait |
| Field Detail |
static final long serialVersionUID
public static final double RADIANS_TO_DEGREES
public static final double DEGREES_TO_RADIANS
public static final int DMSP
public static final int GMSX
public static final int GOES
public static final int GVAR
public static final int MOLL
public static final int MSAT
public static final int MSGT
public static final int MSG
public static final int POES
public static final int RADR
public static final int RECT
public static final int PS
public static final int MERC
public static final int TANC
public static final int LAMB
public static final int LALO
public static final int LL
public static final int XY
public final int indexLine
public final int indexEle
public final int indexLat
public final int indexLon
| Constructor Detail |
public AREAnav()
| Method Detail |
public abstract double[][] toLatLon(double[][] linele)
public abstract double[][] toLinEle(double[][] latlon)
public float[][] toLatLon(float[][] linele)
toLatLon(double[][]).
Subclasses should implement a real float version for better
performance.
public float[][] toLinEle(float[][] latlon)
toLineEle(double[][]).
Subclasses should implement a real float version for better
performance.
public void setRes(int resLine,
int resElement)
resLine - is the resolution in the 'line' direction.
This value is always > 0.resElement - is the resolution in the 'element'
direction. The value is always >0.
public void setRes(float resLine,
float resElement)
resLine - is the resolution in the 'line' direction.
This value is always > 0.resElement - is the resolution in the 'element'
direction. The value is always >0.
public void setMag(int magLine,
int magElement)
magLine - is the (line) magnification factor that might have
been used when the image was displayed.
public void setMag(float magLine,
float magElement)
magLine - is the (line) magnification factor that might have
been used when the image was displayed.
public void setStart(int startLine,
int startElement)
startLine - the starting line number in another
coordinate systemstartElement - the starting element number in another
coordinate system
public void setImageStart(int startImageLine,
int startImageElement)
startImageLine - redefines the starting image line number
(may be different than the signal indicated)startImageElement - redefines the starting image element number
(may be different than the signal indicated)public void setFlipLineCoordinates(int line)
line - ending line numberpublic boolean isFlippedLineCoordinates()
public double getLineOffset()
public double[][] areaCoordToImageCoord(double[][] linele)
linele - input line/element array in AREA coordinates
public double[][] areaCoordToImageCoord(double[][] linele,
double[][] newvals)
linele - input line/element array in AREA coordinatesnewvals - return array - create a new array if null
public double[][] imageCoordToAreaCoord(double[][] linele)
linele - input line/element array Image coordinates
public double[][] imageCoordToAreaCoord(double[][] linele,
double[][] newvals)
linele - input line/element array Image coordinatesnewvals - return array - create a new array if null
public float[][] areaCoordToImageCoord(float[][] linele)
linele - input line/element array in AREA coordinates
public float[][] areaCoordToImageCoord(float[][] linele,
float[][] newvals)
linele - input line/element array in AREA coordinatesnewvals - return array - create a new array if null
public float[][] imageCoordToAreaCoord(float[][] linele)
linele - input line/element array Image coordinates
public float[][] imageCoordToAreaCoord(float[][] linele,
float[][] newvals)
linele - input line/element array Image coordinatesnewvals - return array - create a new array if null
public static AREAnav makeAreaNav(int[] navBlock)
throws McIDASException
navBlock - block to use
McIDASException
public static AREAnav makeAreaNav(int[] navBlock,
int[] auxBlock)
throws McIDASException
McIDASExceptionpublic boolean equals(Object obj)
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.
obj - the AREAnav in questionpublic String toString()
String representation of this nav module
public static double[][] floatToDouble(float[][] value)
public static float[][] doubleToFloat(double[][] value)
|
||||||||||
| PREV CLASS NEXT CLASS | FRAMES NO FRAMES | |||||||||
| SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD | |||||||||