Class LambertConformal
- Object
-
- Formattable
-
- AbstractMathTransform
-
- MapProjection
-
- LambertConformal
-
- All Implemented Interfaces:
Serializable
,MathTransform
,MathTransform2D
- Direct Known Subclasses:
LambertConformal1SP
,LambertConformal2SP
,LambertConformalBelgium
public abstract class LambertConformal extends MapProjection
Lambert Conical Conformal Projection. Areas and shapes are deformed as one moves away from standard parallels. The angles are true in a limited area. This projection is used for the charts of North America.This implementation provides transforms for three cases of the lambert conic conformal projection:
Lambert_Conformal_Conic_1SP
(EPSG code 9801)Lambert_Conformal_Conic_2SP
(EPSG code 9802)Lambert_Conic_Conformal_2SP_Belgium
(EPSG code 9803)Lambert_Conformal_Conic
- An alias for the ESRI 2SP case that includes a scale_factor parameter
For the 1SP case the latitude of origin is used as the standard parallel (SP). To use 1SP with a latitude of origin different from the SP, use the 2SP and set the SP1 to the single SP. The
standard_parallel_2"
parameter is optional and will be given the same value as"standard_parallel_1"
if not set (creating a 1 standard parallel projection).References:
- John P. Snyder (Map Projections - A Working Manual,
U.S. Geological Survey Professional Paper 1395, 1987) - "Coordinate Conversions and Transformations including Formulas",
EPSG Guidence Note Number 7, Version 19.
- Since:
- 2.1
- Author:
- André Gosselin, Martin Desruisseaux (PMO, IRD), Rueben Schulz
- See Also:
- Lambert conformal conic projection on MathWorld, lambert_conic_conformal_1sp, lambert_conic_conformal_2sp, lambert_conic_conformal_2sp_belgium, Serialized Form
-
-
Nested Class Summary
-
Nested classes/interfaces inherited from class MapProjection
MapProjection.AbstractProvider
-
-
Field Summary
-
Fields inherited from class MapProjection
centralMeridian, en0, en1, en2, en3, en4, excentricity, excentricitySquared, falseEasting, falseNorthing, globalScale, invertible, isSpherical, latitudeOfOrigin, LOGGER, scaleFactor, semiMajor, semiMinor, SKIP_SANITY_CHECKS
-
Fields inherited from class Formattable
SINGLE_LINE
-
-
Constructor Summary
Constructors Modifier Constructor Description protected
LambertConformal(ParameterValueGroup parameters)
Constructs a new map projection from the supplied parameters.
-
Method Summary
All Methods Instance Methods Concrete Methods Modifier and Type Method Description boolean
equals(Object object)
Compares the specified object with this map projection for equality.ParameterValueGroup
getParameterValues()
Returns the parameter values for this map projection.int
hashCode()
Returns a hash value for this projection.protected Point2D
inverseTransformNormalized(double x, double y, Point2D ptDst)
Transforms the specified (x,y) coordinates and stores the result inptDst
.protected Point2D
transformNormalized(double x, double y, Point2D ptDst)
Transforms the specified (λ,φ) coordinates (units in radians) and stores the result inptDst
(linear distance on a unit sphere).-
Methods inherited from class MapProjection
checkReciprocal, getParameterDescriptors, getSourceDimensions, getTargetDimensions, getToleranceForAssertions, inv_mlfn, inverse, mlfn, orthodromicDistance, resetWarnings, transform, transform, transform
-
Methods inherited from class AbstractMathTransform
createTransformedShape, derivative, derivative, ensureNonNull, formatWKT, getName, isIdentity, needCopy, normalizeAngle, rollLongitude, transform, transform, transform
-
Methods inherited from class Formattable
cleanupThreadLocals, toString, toWKT, toWKT, toWKT, toWKT
-
Methods inherited from interface MathTransform
derivative, isIdentity, toWKT, transform, transform, transform
-
Methods inherited from interface MathTransform2D
createTransformedShape, derivative
-
-
-
-
Constructor Detail
-
LambertConformal
protected LambertConformal(ParameterValueGroup parameters) throws ParameterNotFoundException
Constructs a new map projection from the supplied parameters.- Parameters:
parameters
- The parameter values in standard units.- Throws:
ParameterNotFoundException
- if a mandatory parameter is missing.
-
-
Method Detail
-
getParameterValues
public ParameterValueGroup getParameterValues()
Returns the parameter values for this map projection.- Overrides:
getParameterValues
in classMapProjection
- Returns:
- A copy of the parameter values for this map projection.
- See Also:
Operation.getParameterValues()
-
transformNormalized
protected Point2D transformNormalized(double x, double y, Point2D ptDst) throws ProjectionException
Transforms the specified (λ,φ) coordinates (units in radians) and stores the result inptDst
(linear distance on a unit sphere).- Specified by:
transformNormalized
in classMapProjection
- Parameters:
x
- The longitude of the coordinate, in radians.y
- The latitude of the coordinate, in radians.ptDst
- the specified coordinate point that stores the result of transformingptSrc
, ornull
. Ordinates will be in a dimensionless unit, as a linear distance on a unit sphere or ellipse.- Returns:
- the coordinate point after transforming (
lambda
,phi
) and storing the result inptDst
. - Throws:
ProjectionException
- if the point can't be transformed.
-
inverseTransformNormalized
protected Point2D inverseTransformNormalized(double x, double y, Point2D ptDst) throws ProjectionException
Transforms the specified (x,y) coordinates and stores the result inptDst
.- Specified by:
inverseTransformNormalized
in classMapProjection
- Parameters:
x
- The easting of the coordinate, linear distance on a unit sphere or ellipse.y
- The northing of the coordinate, linear distance on a unit sphere or ellipse.ptDst
- the specified coordinate point that stores the result of transformingptSrc
, ornull
. Ordinates will be in radians.- Returns:
- the coordinate point after transforming
x
,y
and storing the result inptDst
. - Throws:
ProjectionException
- if the point can't be transformed.
-
hashCode
public int hashCode()
Returns a hash value for this projection.- Overrides:
hashCode
in classMapProjection
-
equals
public boolean equals(Object object)
Compares the specified object with this map projection for equality.- Overrides:
equals
in classMapProjection
- Parameters:
object
- The object to compare with this transform.- Returns:
true
if the given object is a transform of the same class and if, given identical source position, the transformed position would be the equals.
-
-