Package org.locationtech.proj4j.proj
Class TransverseMercatorProjection
java.lang.Object
org.locationtech.proj4j.proj.Projection
org.locationtech.proj4j.proj.CylindricalProjection
org.locationtech.proj4j.proj.TransverseMercatorProjection
- All Implemented Interfaces:
Serializable
,Cloneable
Transverse Mercator Projection algorithm is taken from the USGS PROJ package.
- See Also:
-
Field Summary
FieldsModifier and TypeFieldDescriptionprivate double[]
private double
private static final double
private static final double
private static final double
private static final double
private static final double
private static final double
private static final double
private static final double
protected boolean
Indicates whether a Southern Hemisphere UTM zoneprivate double
private int
Fields inherited from class org.locationtech.proj4j.proj.Projection
a, alpha, DTR, e, ellipsoid, EPS10, es, falseEasting, falseNorthing, fromMetres, geocentric, lonc, maxLatitude, maxLongitude, minLatitude, minLongitude, name, one_es, projectionLatitude, projectionLatitude1, projectionLatitude2, projectionLongitude, rone_es, RTD, scaleFactor, spherical, totalScale, trueScaleLatitude, unit
-
Constructor Summary
ConstructorsConstructorDescriptionTransverseMercatorProjection
(Ellipsoid ellipsoid, double lon_0, double lat_0, double k, double x_0, double y_0) Set up a projection suitable for State Plane Coordinates. -
Method Summary
Modifier and TypeMethodDescriptionclone()
static int
getRowFromNearestParallel
(double latitude) boolean
static int
getZoneFromNearestMeridian
(double longitude) boolean
Tests whether this projection has an inverse.void
Initialize the projection.boolean
Tests whether under this projection lines of latitude and longitude form a rectangular gridproject
(double lplam, double lpphi, ProjCoordinate xy) Computes the projection of a given point (i.e.projectInverse
(double x, double y, ProjCoordinate out) Computes the inverse projection of a given point (i.e.void
setSouthernHemisphere
(boolean isSouth) void
setUTMZone
(int zone) toString()
Methods inherited from class org.locationtech.proj4j.proj.Projection
equals, getAlpha, getAxisOrder, getEllipsoid, getEPSGCode, getEquatorRadius, getFalseEasting, getFalseNorthing, getFromMetres, getHeightOfOrbit, getLonC, getMaxLatitude, getMaxLatitudeDegrees, getMaxLongitude, getMaxLongitudeDegrees, getMinLatitude, getMinLatitudeDegrees, getMinLongitude, getMinLongitudeDegrees, getName, getPrimeMeridian, getPROJ4Description, getProjectionLatitude, getProjectionLatitude1, getProjectionLatitude1Degrees, getProjectionLatitude2, getProjectionLatitude2Degrees, getProjectionLatitudeDegrees, getProjectionLongitude, getProjectionLongitudeDegrees, getScaleFactor, getTrueScaleLatitude, getTrueScaleLatitudeDegrees, getUnits, hashCode, inside, inverseProject, inverseProjectRadians, isConformal, isEqualArea, isGeographic, normalizeLongitude, normalizeLongitudeRadians, parallelsAreParallel, project, projectRadians, setAlpha, setAlphaDegrees, setAxisOrder, setEllipsoid, setFalseEasting, setFalseNorthing, setFromMetres, setGamma, setGammaDegrees, setHeightOfOrbit, setLonC, setLonCDegrees, setMaxLatitude, setMaxLongitude, setMaxLongitudeDegrees, setMinLatitude, setMinLongitude, setMinLongitudeDegrees, setName, setNoUoff, setPrimeMeridian, setProjectionLatitude, setProjectionLatitude1, setProjectionLatitude1Degrees, setProjectionLatitude2, setProjectionLatitude2Degrees, setProjectionLatitudeDegrees, setProjectionLongitude, setProjectionLongitudeDegrees, setRadius, setScaleFactor, setTrueScaleLatitude, setTrueScaleLatitudeDegrees, setUnits
-
Field Details
-
FC1
private static final double FC1- See Also:
-
FC2
private static final double FC2- See Also:
-
FC3
private static final double FC3- See Also:
-
FC4
private static final double FC4- See Also:
-
FC5
private static final double FC5- See Also:
-
FC6
private static final double FC6- See Also:
-
FC7
private static final double FC7- See Also:
-
FC8
private static final double FC8- See Also:
-
isSouth
protected boolean isSouthIndicates whether a Southern Hemisphere UTM zone -
utmZone
private int utmZone -
esp
private double esp -
ml0
private double ml0 -
en
private double[] en
-
-
Constructor Details
-
TransverseMercatorProjection
public TransverseMercatorProjection() -
TransverseMercatorProjection
public TransverseMercatorProjection(Ellipsoid ellipsoid, double lon_0, double lat_0, double k, double x_0, double y_0) Set up a projection suitable for State Plane Coordinates.
-
-
Method Details
-
setSouthernHemisphere
public void setSouthernHemisphere(boolean isSouth) - Overrides:
setSouthernHemisphere
in classProjection
-
getSouthernHemisphere
public boolean getSouthernHemisphere()- Overrides:
getSouthernHemisphere
in classProjection
-
clone
- Overrides:
clone
in classProjection
-
isRectilinear
public boolean isRectilinear()Description copied from class:Projection
Tests whether under this projection lines of latitude and longitude form a rectangular grid- Overrides:
isRectilinear
in classCylindricalProjection
-
initialize
public void initialize()Description copied from class:Projection
Initialize the projection. This should be called after setting parameters and before using the projection. This is for performance reasons as initialization may be expensive.- Overrides:
initialize
in classProjection
-
getRowFromNearestParallel
public static int getRowFromNearestParallel(double latitude) -
getZoneFromNearestMeridian
public static int getZoneFromNearestMeridian(double longitude) -
setUTMZone
public void setUTMZone(int zone) -
project
Description copied from class:Projection
Computes the projection of a given point (i.e. from geographics to projection space). This should be overridden for all projections.- Overrides:
project
in classProjection
- Parameters:
lplam
- the geographic x ordinate (in radians)lpphi
- the geographic y ordinatee (in radians)xy
- the projected coordinate (in coordinate system units)- Returns:
- the target coordinate
-
projectInverse
Description copied from class:Projection
Computes the inverse projection of a given point (i.e. from projection space to geographics). This should be overridden for all projections.- Overrides:
projectInverse
in classProjection
- Parameters:
x
- the projected x ordinate (in coordinate system units)y
- the projected y ordinate (in coordinate system units)out
- the inverse-projected geographic coordinate (in radians)- Returns:
- the target coordinate
-
hasInverse
public boolean hasInverse()Description copied from class:Projection
Tests whether this projection has an inverse. If this method returns true then theProjection.inverseProject(ProjCoordinate, ProjCoordinate)
andProjection.inverseProjectRadians(ProjCoordinate, ProjCoordinate)
methods will return meaningful results.- Overrides:
hasInverse
in classProjection
- Returns:
- true if this projection has an inverse
-
toString
- Overrides:
toString
in classCylindricalProjection
-