Package org.locationtech.proj4j.proj
Class ExtendedTransverseMercatorProjection
- java.lang.Object
-
- org.locationtech.proj4j.proj.Projection
-
- org.locationtech.proj4j.proj.CylindricalProjection
-
- org.locationtech.proj4j.proj.ExtendedTransverseMercatorProjection
-
- All Implemented Interfaces:
java.io.Serializable
,java.lang.Cloneable
public class ExtendedTransverseMercatorProjection extends CylindricalProjection
- See Also:
- Proj.4 issue 316, proj_etmerc.c, Serialized Form
-
-
Field Summary
Fields Modifier and Type Field Description (package private) double[]
cbg
(package private) double[]
cgb
(package private) double[]
gtu
private static double
HUGE_VAL
protected boolean
isSouth
Indicates whether a Southern Hemisphere UTM zoneprivate static int
PROJ_ETMERC_ORDER
(package private) double
Qn
private static long
serialVersionUID
(package private) double[]
utg
(package private) double
Zb
-
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
Constructors Constructor Description ExtendedTransverseMercatorProjection()
ExtendedTransverseMercatorProjection(Ellipsoid ellipsoid, double lon_0, double lat_0, double k, double x_0, double y_0)
-
Method Summary
All Methods Static Methods Instance Methods Concrete Methods Modifier and Type Method Description (package private) static double
asinhy(double x)
(package private) static double
clens(double[] a, int size, double arg_r)
(package private) static double
clenS(double[] a, int size, double arg_r, double arg_i, double[] R, double[] I)
java.lang.Object
clone()
(package private) static double
gatg(double[] p1, int len_p1, double B)
boolean
getSouthernHemisphere()
boolean
hasInverse()
Tests whether this projection has an inverse.void
initialize()
Initialize the projection.boolean
isRectilinear()
Tests whether under this projection lines of latitude and longitude form a rectangular grid(package private) static double
log1py(double x)
ProjCoordinate
project(double lplam, double lpphi, ProjCoordinate xy)
Computes the projection of a given point (i.e.ProjCoordinate
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)
java.lang.String
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 Detail
-
serialVersionUID
private static final long serialVersionUID
- See Also:
- Constant Field Values
-
Qn
double Qn
-
Zb
double Zb
-
cgb
double[] cgb
-
cbg
double[] cbg
-
utg
double[] utg
-
gtu
double[] gtu
-
isSouth
protected boolean isSouth
Indicates whether a Southern Hemisphere UTM zone
-
PROJ_ETMERC_ORDER
private static final int PROJ_ETMERC_ORDER
- See Also:
- Constant Field Values
-
HUGE_VAL
private static final double HUGE_VAL
- See Also:
- Constant Field Values
-
-
Constructor Detail
-
ExtendedTransverseMercatorProjection
public ExtendedTransverseMercatorProjection()
-
ExtendedTransverseMercatorProjection
public ExtendedTransverseMercatorProjection(Ellipsoid ellipsoid, double lon_0, double lat_0, double k, double x_0, double y_0)
-
-
Method Detail
-
setSouthernHemisphere
public void setSouthernHemisphere(boolean isSouth)
- Overrides:
setSouthernHemisphere
in classProjection
-
getSouthernHemisphere
public boolean getSouthernHemisphere()
- Overrides:
getSouthernHemisphere
in classProjection
-
log1py
static double log1py(double x)
-
asinhy
static double asinhy(double x)
-
gatg
static double gatg(double[] p1, int len_p1, double B)
-
clenS
static double clenS(double[] a, int size, double arg_r, double arg_i, double[] R, double[] I)
-
clens
static double clens(double[] a, int size, double arg_r)
-
project
public ProjCoordinate project(double lplam, double lpphi, ProjCoordinate xy)
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
public ProjCoordinate projectInverse(double x, double y, ProjCoordinate out)
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
-
setUTMZone
public void setUTMZone(int zone)
-
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
-
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
-
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
-
clone
public java.lang.Object clone()
- Overrides:
clone
in classProjection
-
toString
public java.lang.String toString()
- Overrides:
toString
in classCylindricalProjection
-
-