|
||||||||||
PREV CLASS NEXT CLASS | FRAMES NO FRAMES | |||||||||
SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD |
java.lang.Objectucar.unidata.geoloc.ProjectionImpl
ucar.unidata.geoloc.projection.UtmProjection
public class UtmProjection
Universal Transverse Mercator. Ellipsoidal earth.
Origin of coordinate system is reletive to the point where the central meridian and the equator cross. This point has x,y value = (500, 0) km for north hemisphere. and (500, 10,0000) km for south hemisphere. Increasing values always go north and east. The central meridian = (zone * 6 - 183) degrees, where zone in [1,60].
Field Summary |
---|
Fields inherited from class ucar.unidata.geoloc.ProjectionImpl |
---|
ATTR_NAME, atts, defaultMapArea, EARTH_RADIUS, INDEX_LAT, INDEX_LON, INDEX_X, INDEX_Y, isLatLon, name, PI, PI_OVER_2, PI_OVER_4, TOLERANCE |
Constructor Summary | |
---|---|
UtmProjection()
Constructor with default parameters |
|
UtmProjection(double a,
double f,
int zone,
boolean isNorth)
Construct a Universal Transverse Mercator Projection. |
|
UtmProjection(int zone,
boolean isNorth)
Constructor with default WGS 84 ellipsoid. |
Method Summary | |
---|---|
ProjectionImpl |
constructCopy()
copy constructor - avoid clone !! |
boolean |
crossSeam(ProjectionPoint pt1,
ProjectionPoint pt2)
Does the line between these two points cross the projection "seam". |
boolean |
equals(Object proj)
Returns true if this represents the same Projection as proj. |
double |
getCentralMeridian()
|
String |
getProjectionTypeLabel()
Get the label to be used in the gui for this type of projection |
int |
getZone()
Get the zone number = [1,60] |
boolean |
isNorth()
Get whether in North or South Hemisphere. |
double[][] |
latLonToProj(double[][] from,
double[][] to,
int latIndex,
int lonIndex)
_more_ |
float[][] |
latLonToProj(float[][] from,
float[][] to,
int latIndex,
int lonIndex)
_more_ |
ProjectionPoint |
latLonToProj(LatLonPoint latLon,
ProjectionPointImpl result)
Convert a LatLonPoint to projection coordinates |
static void |
main(String[] arg)
|
String |
paramsToString()
Get the parameters as a String |
double[][] |
projToLatLon(double[][] from,
double[][] to)
_more_ |
float[][] |
projToLatLon(float[][] from,
float[][] to)
Convert projection coordinates to lat/lon coordinate. |
LatLonPoint |
projToLatLon(ProjectionPoint world,
LatLonPointImpl result)
Convert projection coordinates to a LatLonPoint Note: a new object is not created on each call for the return value. |
void |
setNorth(boolean newNorth)
Set whether in North or South Hemisphere. |
void |
setZone(int newZone)
Set the zone number = [1,60] |
Methods inherited from class ucar.unidata.geoloc.ProjectionImpl |
---|
addParameter, addParameter, addParameter, clone, getClassName, getDefaultMapArea, getDefaultMapAreaLL, getHeader, getLatLonBoundingBox, getName, getProjectionParameters, isLatLon, latLonToProj, latLonToProj, latLonToProj, latLonToProj, latLonToProj, latLonToProj, latLonToProj, latLonToProj, latLonToProjBB, projToLatLon, projToLatLon, projToLatLon, projToLatLon, projToLatLonBB, setDefaultMapArea, setName, toString |
Methods inherited from class java.lang.Object |
---|
finalize, getClass, hashCode, notify, notifyAll, wait, wait, wait |
Constructor Detail |
---|
public UtmProjection()
public UtmProjection(int zone, boolean isNorth)
zone
- the UTM zone number (1-60)isNorth
- true if the UTM coordinate is in the northern hemispherepublic UtmProjection(double a, double f, int zone, boolean isNorth)
a
- the semi-major axis (meters) for the ellipsoidf
- the inverse flattening for the ellipsoidzone
- the UTM zone number (1-60)isNorth
- true if the UTM coordinate is in the northern hemisphereMethod Detail |
---|
public ProjectionImpl constructCopy()
constructCopy
in class ProjectionImpl
public int getZone()
public void setZone(int newZone)
newZone
- _more_public boolean isNorth()
public void setNorth(boolean newNorth)
newNorth
- _more_public String getProjectionTypeLabel()
getProjectionTypeLabel
in class ProjectionImpl
public double getCentralMeridian()
public String paramsToString()
paramsToString
in interface Projection
paramsToString
in class ProjectionImpl
public boolean crossSeam(ProjectionPoint pt1, ProjectionPoint pt2)
crossSeam
in interface Projection
crossSeam
in class ProjectionImpl
pt1
- the line goes between these two pointspt2
- the line goes between these two points
public boolean equals(Object proj)
equals
in interface Projection
equals
in class ProjectionImpl
proj
- projection in question
public ProjectionPoint latLonToProj(LatLonPoint latLon, ProjectionPointImpl result)
latLonToProj
in interface Projection
latLonToProj
in class ProjectionImpl
latLon
- convert from these lat, lon coordinatesresult
- the object to write to
public double[][] latLonToProj(double[][] from, double[][] to, int latIndex, int lonIndex)
latLonToProj
in class ProjectionImpl
from
- _more_to
- _more_latIndex
- _more_lonIndex
- _more_
public float[][] latLonToProj(float[][] from, float[][] to, int latIndex, int lonIndex)
latLonToProj
in class ProjectionImpl
from
- _more_to
- _more_latIndex
- _more_lonIndex
- _more_
public LatLonPoint projToLatLon(ProjectionPoint world, LatLonPointImpl result)
projToLatLon
in interface Projection
projToLatLon
in class ProjectionImpl
world
- convert from these projection coordinatesresult
- the object to write to
public float[][] projToLatLon(float[][] from, float[][] to)
projToLatLon
in class ProjectionImpl
from
- array of projection coordinates: from[2][n], where
(from[0][i], from[1][i]) is the (x, y) coordinate
of the ith pointto
- resulting array of lat/lon coordinates: to[2][n] where
(to[0][i], to[1][i]) is the (lat, lon) coordinate of
the ith point
public double[][] projToLatLon(double[][] from, double[][] to)
projToLatLon
in class ProjectionImpl
from
- _more_to
- _more_
public static void main(String[] arg)
|
||||||||||
PREV CLASS NEXT CLASS | FRAMES NO FRAMES | |||||||||
SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD |