Package org.geotools.referencing.operation.projection

Basic implementations of map projections.

See:
          Description

Class Summary
AlbersEqualArea Albers Equal Area Projection (EPSG code 9822).
AlbersEqualArea.Provider The MathTransformProvider for an Albers Equal Area projection.
EquidistantCylindrical Equidistant cylindrical projection (EPSG code 9823).
EquidistantCylindrical.Provider The MathTransformProvider for an Equidistant Cylindrical projection.
LambertConformal Lambert Conical Conformal Projection.
LambertConformal1SP Lambert Conical Conformal 1SP Projection.
LambertConformal1SP.Provider The MathTransformProvider for a Lambert Conformal 1SP projection.
LambertConformal2SP Lambert Conical Conformal 2SP Projection.
LambertConformal2SP.Provider The MathTransformProvider for a Lambert Conformal 2SP projection.
LambertConformalBelgium Lambert Conical Conformal 2SP Belgium Projection.
LambertConformalBelgium.Provider The MathTransformProvider for a Lambert Conformal 2SP Belgium Belgium projection.
LambertConformalESRI Lambert Conical Conformal Projection using ESRI parameters.
LambertConformalESRI.Provider The MathTransformProvider for a Lambert Conformal ESRI projection.
MapProjection Base class for transformation services between ellipsoidal and cartographic projections.
MapProjection.AbstractProvider The base provider for MapProjections.
Mercator Mercator Cylindrical Projection.
Mercator1SP Mercator Cylindrical 1SP Projection.
Mercator1SP.Provider The MathTransformProvider for a Mercator 1SP projection.
Mercator2SP Mercator Cylindrical 2SP Projection.
Mercator2SP.Provider The MathTransformProvider for a Mercator 2SP projection.
NewZealandMapGrid Implementation of the NZMG (New Zealand Map Grid) projection.
NewZealandMapGrid.Provider The MathTransformProvider for New Zealand Map Grid.
ObliqueMercator Oblique Mercator Projection.
ObliqueMercator.Provider The MathTransformProvider for an ObliqueMercator projection.
ObliqueMercator.Provider_Hotine The MathTransformProvider for a Hotine ObliqueMercator projection.
ObliqueMercator.Provider_Hotine_TwoPoint The MathTransformProvider for a Hotine ObliqueMercator projection, specified with two points on the central line (instead of a central point and azimuth).
ObliqueMercator.Provider_TwoPoint The MathTransformProvider for a ObliqueMercator projection, specified with two points on the central line (instead of a central point and azimuth).
Orthographic Orthographic Projection.
Orthographic.Provider The MathTransformProvider for a Orthographic projection.
OrthographicEquatorial The equatorial case of the Orthographic projection.
OrthographicOblique The oblique case of the Orthographic projection.
OrthographicPolar The polar case of the Orthographic projection.
PlateCarree Plate Carree (or Equirectangular) projection.
PlateCarree.Provider The MathTransformProvider for an Plate Carree projection.
Stereographic Stereographic Projection.
Stereographic.Provider_North_Pole The MathTransformProvider for a Stereographic North Polar projection.
Stereographic.Provider_Oblique The MathTransformProvider for a Stereographic Oblique projection.
Stereographic.Provider_Polar_A The MathTransformProvider for a Stereographic Polar projection.
Stereographic.Provider_Polar_B The MathTransformProvider for a Stereographic Polar (Variant B) projection.
Stereographic.Provider_South_Pole The MathTransformProvider for a Stereographic North Polar projection.
Stereographic.Provider_USGS The MathTransformProvider for a Stereographic (USGS equations) projection.
StereographicEquatorial The USGS equatorial case of the stereographic projection.
StereographicOblique The USGS oblique/equatorial case of the stereographic projection.
StereographicPolar The polar case of the stereographic projection.
TransverseMercator Transverse Mercator Projection (EPSG code 9807).
TransverseMercator.Provider The MathTransformProvider for a TransverseMercator projection.
TransverseMercator.Provider_SouthOrientated The MathTransformProvider for a South Orientated TransverseMercator projection (EPSG code 9808).
 

Exception Summary
PointOutsideEnvelopeException Thrown by MapProjection when a map projection failed because the point is outside the envelope of validity.
ProjectionException Thrown by MapProjection when a map projection failed.
 

Package org.geotools.referencing.operation.projection Description

Basic implementations of map projections. This package is mostly for internal purpose and should usually not be used directly. Consider using MathTransformFactory instead.

Axis units and orientation

Many geographic coordinate reference systems use axis in (latitude,longitude) order, but not all. Axis order, orientation and units are CRS-dependent. For example some CRS use longitude values increasing toward East, while some others use longitude values increasing toward West. The axis order must be specified in all CRS, and any method working with them should take their axis order and units in account.

However, map projections defined in this package are transformation steps, not final CRS. All projections defined in this package must complies with the OGC 01-009 specification. This specification said (quoting section 10.6 at page 34):

Cartographic projection transforms are used by projected coordinate reference systems to map geographic coordinates (e.g. Longitude and Latitude) into (X,Y) coordinates. These (X,Y) coordinates can be imagined to lie on a plane, such as a paper map or a screen. All cartographic projection transforms will have the following properties:

Although all cartographic projection transforms must have the properties listed above, many projected coordinate reference systems have different properties. For example, in Europe some projected coordinate reference systems use grads instead of degrees, and often the base geographic coordinate reference system is (Latitude, Longitude) instead of (Longitude, Latitude). This means that the cartographic projected transform is often used as a single step in a series of transforms, where the other steps change units and swap ordinates.

The Geotools implementation extends this rule to axis directions as well, i.e. (X,Y) coordinates must be (East, North) orientated. This rule implies a non-intuitive behavior for the Transverse Mercator South Orientated projection, which still projects coordinates with Y values increasing toward North. The real axis flip is performed by the rest of the CRS framework upon coordinate system axis inspection. In order to get a real South orientated projection, the cartographic transform must be concatenated with an affine transform. This is done automatically if the projected CRS is created with the Geotools's createProjectedCRS convenience method with a South orientated coordinate system in argument.

In order to reduce the risk of confusion, this package never defines south orientated MapProjection implementations. The providers always create south-orientated projections as a concatenation of their north-orientated variants with an affine transform. This approach removes all ambiguity when reading a transform in Well Known Text (WKT) format, since only the north-orientated variant is used and the affine transform coefficients tell exactly which axis flips are applied.



Copyright © GeoTools. All Rights Reserved.