Package ucar.unidata.geoloc.projection
Class TransverseMercator
- java.lang.Object
-
- ucar.unidata.geoloc.ProjectionImpl
-
- ucar.unidata.geoloc.projection.TransverseMercator
-
- All Implemented Interfaces:
Serializable,Projection
public class TransverseMercator extends ProjectionImpl
Transverse Mercator projection, spherical earth. Projection plane is a cylinder tangent to the earth at tangentLon. See John Snyder, Map Projections used by the USGS, Bulletin 1532, 2nd edition (1983), p 53- See Also:
- Serialized Form
-
-
Field Summary
-
Fields inherited from class ucar.unidata.geoloc.ProjectionImpl
atts, defaultMapArea, EARTH_RADIUS, INDEX_LAT, INDEX_LON, INDEX_X, INDEX_Y, isLatLon, name, PI, PI_OVER_2, PI_OVER_4, TOLERANCE
-
-
Constructor Summary
Constructors Constructor Description TransverseMercator()Constructor with default parameteresTransverseMercator(double lat0, double tangentLon, double scale)Construct a TransverseMercator Projection.TransverseMercator(double lat0, double tangentLon, double scale, double east, double north)Construct a TransverseMercator Projection.TransverseMercator(double lat0, double tangentLon, double scale, double east, double north, double radius)Construct a TransverseMercator Projection.
-
Method Summary
All Methods Instance Methods Concrete Methods Deprecated Methods Modifier and Type Method Description ProjectionImplconstructCopy()copy constructor - avoid clone !!booleancrossSeam(ProjectionPoint pt1, ProjectionPoint pt2)Does the line between these two points cross the projection "seam".booleanequals(Object o)Returns true if this represents the same Projection as proj.doublegetEarthRadius()doublegetFalseEasting()Get the false easting, in units of km.doublegetFalseNorthing()Get the false northing, in units of kmdoublegetOriginLat()Get the origin latitude in degreesStringgetProjectionTypeLabel()Get the label to be used in the gui for this type of projectiondoublegetScale()Get the scaledoublegetTangentLon()Get the tangent longitude in degreesinthashCode()double[][]latLonToProj(double[][] from, double[][] to, int latIndex, int lonIndex)Convert lat/lon coordinates to projection coordinates.float[][]latLonToProj(float[][] from, float[][] to, int latIndex, int lonIndex)Convert lat/lon coordinates to projection coordinates.ProjectionPointlatLonToProj(LatLonPoint latLon, ProjectionPointImpl result)Convert a LatLonPoint to projection coordinatesStringparamsToString()Get the parameters as a Stringdouble[][]projToLatLon(double[][] from, double[][] to)Convert lat/lon coordinates to projection coordinates.float[][]projToLatLon(float[][] from, float[][] to)Convert lat/lon coordinates to projection coordinates.LatLonPointprojToLatLon(ProjectionPoint world, LatLonPointImpl result)Convert projection coordinates to a LatLonPoint Note: a new object is not created on each call for the return value.voidsetFalseEasting(double falseEasting)Deprecated.voidsetFalseNorthing(double falseNorthing)Deprecated.voidsetOriginLat(double lat)Deprecated.voidsetScale(double scale)Deprecated.voidsetTangentLon(double lon)Deprecated.StringtoString()Get a String representation of this projection.-
Methods inherited from class ucar.unidata.geoloc.ProjectionImpl
addParameter, addParameter, addParameter, findProjectionParameter, getClassName, getDefaultMapArea, getDefaultMapAreaLL, getHeader, getName, getProjectionParameters, isLatLon, latLonToProj, latLonToProj, latLonToProj, latLonToProj, latLonToProj, latLonToProj, latLonToProj, latLonToProjBB, projToLatLon, projToLatLon, projToLatLon, projToLatLonBB, projToLatLonBBold, setDefaultMapArea, setName
-
Methods inherited from class java.lang.Object
clone, finalize, getClass, notify, notifyAll, wait, wait, wait
-
Methods inherited from interface ucar.unidata.geoloc.Projection
latLonToProj, projToLatLon
-
-
-
-
Constructor Detail
-
TransverseMercator
public TransverseMercator()
Constructor with default parameteres
-
TransverseMercator
public TransverseMercator(double lat0, double tangentLon, double scale)Construct a TransverseMercator Projection.- Parameters:
lat0- origin of projection coord system is at (lat0, tangentLon)tangentLon- longitude that the cylinder is tangent at ("central meridian")scale- scale factor along the central meridian
-
TransverseMercator
public TransverseMercator(double lat0, double tangentLon, double scale, double east, double north)Construct a TransverseMercator Projection.- Parameters:
lat0- origin of projection coord system is at (lat0, tangentLon)tangentLon- longitude that the cylinder is tangent at ("central meridian")scale- scale factor along the central meridianeast- false easting in kmnorth- false northing in km
-
TransverseMercator
public TransverseMercator(double lat0, double tangentLon, double scale, double east, double north, double radius)Construct a TransverseMercator Projection.- Parameters:
lat0- origin of projection coord system is at (lat0, tangentLon)tangentLon- longitude that the cylinder is tangent at ("central meridian")scale- scale factor along the central meridianeast- false easting in units of kmnorth- false northing in units of kmradius- earth radius in km
-
-
Method Detail
-
constructCopy
public ProjectionImpl constructCopy()
Description copied from class:ProjectionImplcopy constructor - avoid clone !!- Specified by:
constructCopyin classProjectionImpl- Returns:
- a copy of this Projection. TODO return Projection in ver6
-
getScale
public double getScale()
Get the scale- Returns:
- the scale
-
getTangentLon
public double getTangentLon()
Get the tangent longitude in degrees- Returns:
- the origin longitude in degrees.
-
getOriginLat
public double getOriginLat()
Get the origin latitude in degrees- Returns:
- the origin latitude in degrees.
-
getFalseEasting
public double getFalseEasting()
Get the false easting, in units of km.- Returns:
- the false easting.
-
getFalseNorthing
public double getFalseNorthing()
Get the false northing, in units of km- Returns:
- the false northing.
-
getEarthRadius
public double getEarthRadius()
-
setScale
@Deprecated public void setScale(double scale)
Deprecated.Set the scale- Parameters:
scale- the scale
-
setOriginLat
@Deprecated public void setOriginLat(double lat)
Deprecated.Set the origin latitude- Parameters:
lat- the origin latitude
-
setTangentLon
@Deprecated public void setTangentLon(double lon)
Deprecated.Set the tangent longitude- Parameters:
lon- the tangent longitude
-
setFalseEasting
@Deprecated public void setFalseEasting(double falseEasting)
Deprecated.Set the false_easting, in km. natural_x_coordinate + false_easting = x coordinate- Parameters:
falseEasting- x offset
-
setFalseNorthing
@Deprecated public void setFalseNorthing(double falseNorthing)
Deprecated.Set the false northing, in km. natural_y_coordinate + false_northing = y coordinate- Parameters:
falseNorthing- y offset
-
getProjectionTypeLabel
public String getProjectionTypeLabel()
Get the label to be used in the gui for this type of projection- Overrides:
getProjectionTypeLabelin classProjectionImpl- Returns:
- Type label
-
paramsToString
public String paramsToString()
Get the parameters as a String- Specified by:
paramsToStringin interfaceProjection- Specified by:
paramsToStringin classProjectionImpl- Returns:
- the parameters as a String
-
toString
public String toString()
Description copied from class:ProjectionImplGet a String representation of this projection.- Overrides:
toStringin classProjectionImpl- Returns:
- the name of the projection. This is what gets displayed when you add the projection object to a UI widget (e.g. label, combobox)
-
crossSeam
public boolean crossSeam(ProjectionPoint pt1, ProjectionPoint pt2)
Does the line between these two points cross the projection "seam".- Specified by:
crossSeamin interfaceProjection- Specified by:
crossSeamin classProjectionImpl- Parameters:
pt1- the line goes between these two pointspt2- the line goes between these two points- Returns:
- false if there is no seam
-
equals
public boolean equals(Object o)
Description copied from class:ProjectionImplReturns true if this represents the same Projection as proj.- Specified by:
equalsin interfaceProjection- Specified by:
equalsin classProjectionImpl- Parameters:
o- projection in question- Returns:
- true if this represents the same Projection as proj.
-
latLonToProj
public ProjectionPoint latLonToProj(LatLonPoint latLon, ProjectionPointImpl result)
Convert a LatLonPoint to projection coordinates- Specified by:
latLonToProjin interfaceProjection- Specified by:
latLonToProjin classProjectionImpl- Parameters:
latLon- convert from these lat, lon coordinatesresult- the object to write to- Returns:
- the given result
-
projToLatLon
public 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.- Specified by:
projToLatLonin interfaceProjection- Specified by:
projToLatLonin classProjectionImpl- Parameters:
world- convert from these projection coordinatesresult- the object to write to- Returns:
- LatLonPoint convert to these lat/lon coordinates
-
latLonToProj
public float[][] latLonToProj(float[][] from, float[][] to, int latIndex, int lonIndex)Convert lat/lon coordinates to projection coordinates.- Overrides:
latLonToProjin classProjectionImpl- Parameters:
from- array of lat/lon coordinates: from[2][n], where from[0][i], from[1][i] is the (lat,lon) coordinate of the ith pointto- resulting array of projection coordinates, where to[0][i], to[1][i] is the (x,y) coordinate of the ith pointlatIndex- index of latitude in "from"lonIndex- index of longitude in "from"- Returns:
- the "to" array.
-
projToLatLon
public float[][] projToLatLon(float[][] from, float[][] to)Convert lat/lon coordinates to projection coordinates.- Overrides:
projToLatLonin classProjectionImpl- Parameters:
from- array of lat/lon coordinates: from[2][n], where (from[0][i], from[1][i]) is the (lat,lon) coordinate of the ith pointto- resulting array of projection coordinates: to[2][n] where (to[0][i], to[1][i]) is the (x,y) coordinate of the ith point- Returns:
- the "to" array
-
latLonToProj
public double[][] latLonToProj(double[][] from, double[][] to, int latIndex, int lonIndex)Convert lat/lon coordinates to projection coordinates.- Overrides:
latLonToProjin classProjectionImpl- Parameters:
from- array of lat/lon coordinates: from[2][n], where from[0][i], from[1][i] is the (lat,lon) coordinate of the ith pointto- resulting array of projection coordinates, where to[0][i], to[1][i] is the (x,y) coordinate of the ith pointlatIndex- index of latitude in "from"lonIndex- index of longitude in "from"- Returns:
- the "to" array.
-
projToLatLon
public double[][] projToLatLon(double[][] from, double[][] to)Convert lat/lon coordinates to projection coordinates.- Overrides:
projToLatLonin classProjectionImpl- Parameters:
from- array of lat/lon coordinates: from[2][n], where (from[0][i], from[1][i]) is the (lat,lon) coordinate of the ith pointto- resulting array of projection coordinates: to[2][n] where (to[0][i], to[1][i]) is the (x,y) coordinate of the ith point- Returns:
- the "to" array
-
-