deegree 2.3 (2010/04/09 10:10 build-4-official)

org.deegree.crs.projections.cylindric
Class TransverseMercator

java.lang.Object
  extended by org.deegree.crs.Identifiable
      extended by org.deegree.crs.projections.Projection
          extended by org.deegree.crs.projections.cylindric.CylindricalProjection
              extended by org.deegree.crs.projections.cylindric.TransverseMercator
All Implemented Interfaces:
Serializable

public class TransverseMercator
extends CylindricalProjection

The TransverseMercator projection has following properties:

Version:
$Revision: 18195 $, $Date: 2009-06-18 17:55:39 +0200 (Do, 18. Jun 2009) $
Author:
Rutger Bezema, last edited by: $Author: mschneider $
See Also:
Serialized Form

Constructor Summary
TransverseMercator(boolean northernHemisphere, GeographicCRS geographicCRS, double falseNorthing, double falseEasting, javax.vecmath.Point2d naturalOrigin, Unit units, double scale)
          Sets the id to EPSG:9807
TransverseMercator(boolean northernHemisphere, GeographicCRS geographicCRS, double falseNorthing, double falseEasting, javax.vecmath.Point2d naturalOrigin, Unit units, double scale, Identifiable id)
           
TransverseMercator(GeographicCRS geographicCRS, double falseNorthing, double falseEasting, javax.vecmath.Point2d naturalOrigin, Unit units)
          A northern hemisphere conformal transverse mercator projection with a scale of one.
TransverseMercator(GeographicCRS geographicCRS, double falseNorthing, double falseEasting, javax.vecmath.Point2d naturalOrigin, Unit units, Identifiable id)
          A northern hemisphere conformal transverse mercator projection with a scale of one.
TransverseMercator(int zone, boolean northernHemisphere, GeographicCRS geographicCRS, Unit units)
          Sets the false-easting to 50000, false-northing to 0 or 10000000 (depending on the hemisphere), the projection-longitude is calculated from the zone and the projection-latitude is set to 0.
TransverseMercator(int zone, boolean northernHemisphere, GeographicCRS geographicCRS, Unit units, Identifiable id)
          Sets the false-easting to 50000, false-northing to 0 or 10000000 (depending on the hemisphere), the projection-longitude is calculated from the zone and the projection-latitude is set to 0.
 
Method Summary
 javax.vecmath.Point2d doInverseProjection(double x, double y)
          Do an inverse projection from projected (map) coordinates to geographic coordinates.
 javax.vecmath.Point2d doProjection(double lambda, double phi)
          The actual transform method doing a projection from geographic coordinates to map coordinates.
 boolean getHemisphere()
           
 String getImplementationName()
           
 int getRowFromNearestParallel(double latitude)
           
 int getZoneFromNearestMeridian(double longitude)
          the utm zone from a given meridian
 
Methods inherited from class org.deegree.crs.projections.Projection
equals, getCosphi0, getDatum, getEccentricity, getEllipsoid, getFalseEasting, getFalseNorthing, getGeographicCRS, getNaturalOrigin, getPrimeMeridian, getProjectionLatitude, getProjectionLongitude, getScale, getScaleFactor, getSemiMajorAxis, getSemiMinorAxis, getSinphi0, getSquaredEccentricity, getUnits, hashCode, isConformal, isEqualArea, isSpherical, setFalseEasting, setScale, toString
 
Methods inherited from class org.deegree.crs.Identifiable
checkForNullObject, checkForNullObject, checkForNullObject, getAreaOfUse, getAreaOfUseBBox, getAreasOfUse, getDescription, getDescriptions, getIdAndName, getIdentifier, getIdentifiers, getName, getNames, getVersion, getVersions, hasID
 
Methods inherited from class java.lang.Object
clone, finalize, getClass, notify, notifyAll, wait, wait, wait
 

Constructor Detail

TransverseMercator

public TransverseMercator(boolean northernHemisphere,
                          GeographicCRS geographicCRS,
                          double falseNorthing,
                          double falseEasting,
                          javax.vecmath.Point2d naturalOrigin,
                          Unit units,
                          double scale,
                          Identifiable id)
Parameters:
northernHemisphere - true if on the northern hemisphere false otherwise.
geographicCRS -
falseNorthing -
falseEasting -
naturalOrigin -
units -
scale -
id - an identifiable instance containing information about this projection

TransverseMercator

public TransverseMercator(boolean northernHemisphere,
                          GeographicCRS geographicCRS,
                          double falseNorthing,
                          double falseEasting,
                          javax.vecmath.Point2d naturalOrigin,
                          Unit units,
                          double scale)
Sets the id to EPSG:9807

Parameters:
northernHemisphere - true if on the northern hemisphere false otherwise.
geographicCRS -
falseNorthing -
falseEasting -
naturalOrigin -
units -
scale -

TransverseMercator

public TransverseMercator(int zone,
                          boolean northernHemisphere,
                          GeographicCRS geographicCRS,
                          Unit units,
                          Identifiable id)
Sets the false-easting to 50000, false-northing to 0 or 10000000 (depending on the hemisphere), the projection-longitude is calculated from the zone and the projection-latitude is set to 0. The scale will be 0.9996.

Parameters:
zone - to add
northernHemisphere - true if the projection is on the northern hemisphere
geographicCRS -
units -
id - an identifiable instance containing information about this projection

TransverseMercator

public TransverseMercator(int zone,
                          boolean northernHemisphere,
                          GeographicCRS geographicCRS,
                          Unit units)
Sets the false-easting to 50000, false-northing to 0 or 10000000 (depending on the hemisphere), the projection-longitude is calculated from the zone and the projection-latitude is set to 0. The scale will be 0.9996.

Parameters:
zone - to add
northernHemisphere - true if the projection is on the northern hemisphere
geographicCRS -
units -

TransverseMercator

public TransverseMercator(GeographicCRS geographicCRS,
                          double falseNorthing,
                          double falseEasting,
                          javax.vecmath.Point2d naturalOrigin,
                          Unit units)
A northern hemisphere conformal transverse mercator projection with a scale of one. Using the given datum.

Parameters:
geographicCRS -
falseNorthing -
falseEasting -
naturalOrigin -
units -

TransverseMercator

public TransverseMercator(GeographicCRS geographicCRS,
                          double falseNorthing,
                          double falseEasting,
                          javax.vecmath.Point2d naturalOrigin,
                          Unit units,
                          Identifiable id)
A northern hemisphere conformal transverse mercator projection with a scale of one. Using the given datum.

Parameters:
geographicCRS -
falseNorthing -
falseEasting -
naturalOrigin -
units -
id - an identifiable instance containing information about this projection
Method Detail

doInverseProjection

public javax.vecmath.Point2d doInverseProjection(double x,
                                                 double y)
                                          throws ProjectionException
Description copied from class: Projection
Do an inverse projection from projected (map) coordinates to geographic coordinates.

Specified by:
doInverseProjection in class Projection
Parameters:
x - coordinate on the map
y - coordinate on the map
Returns:
the projected Point with x = lambda and y = phi;
Throws:
ProjectionException - if the given x and y coordinates could not be inverted to lambda and phi.

doProjection

public javax.vecmath.Point2d doProjection(double lambda,
                                          double phi)
                                   throws ProjectionException
Description copied from class: Projection
The actual transform method doing a projection from geographic coordinates to map coordinates.

Specified by:
doProjection in class Projection
Parameters:
lambda - the longitude
phi - the latitude
Returns:
the projected Point or Point(Double.NAN, Double.NAN) if an error occurred.
Throws:
ProjectionException - if the given lamba and phi coordinates could not be projected to x and y.

getRowFromNearestParallel

public int getRowFromNearestParallel(double latitude)
Parameters:
latitude - to get the nearest paralles to.
Returns:
the nearest parallel in radians of given latitude

getZoneFromNearestMeridian

public int getZoneFromNearestMeridian(double longitude)
the utm zone from a given meridian

Parameters:
longitude - in radians
Returns:
the utm zone.

getImplementationName

public String getImplementationName()
Specified by:
getImplementationName in class Projection
Returns:
A deegree specific name which will be used for the export of a projection.

getHemisphere

public final boolean getHemisphere()
Returns:
the true if defined on the northern hemisphere.

deegree 2.3 (2010/04/09 10:10 build-4-official)

an open source project founded by lat/lon, Bonn, Germany.
For more information visit: http://www.deegree.org