|
|||||||||
PREV CLASS NEXT CLASS | FRAMES NO FRAMES | ||||||||
SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD |
java.lang.Objectedu.wisc.ssec.mcidas.AREAnav
public abstract class 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);
......................
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 |
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 |
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. |
boolean |
equals(java.lang.Object obj)
Determines whether or not the Object in question is
the same as this AREAnav . |
double |
getLineOffset()
Get the line offset for flipped coordinates |
double[][] |
imageCoordToAreaCoord(double[][] linele)
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 |
abstract double[][] |
toLinEle(double[][] latlon)
toLinEle converts lat/long to satellite line/element |
Methods inherited from class java.lang.Object |
---|
clone, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait |
Field Detail |
---|
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 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)
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.)
public abstract double[][] toLinEle(double[][] latlon)
latlon[][]
- array of lat/long pairs. Where latlon[indexLat][]
are latitudes and latlon[indexLon][] are longitudes.
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.magElment
- is the (element) 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.magElment
- is the (element) 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 systempublic 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[][] imageCoordToAreaCoord(double[][] linele)
linele
- input line/element array Image coordinates
public static AREAnav makeAreaNav(int[] navBlock) throws McIDASException
navBlock
- block to use
McIDASException
public static AREAnav makeAreaNav(int[] navBlock, int[] auxBlock) throws McIDASException
McIDASException
public boolean equals(java.lang.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.
equals
in class java.lang.Object
obj
- the AREAnav in question
|
|||||||||
PREV CLASS NEXT CLASS | FRAMES NO FRAMES | ||||||||
SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD |