Class NewZealandMapGrid
Object
Formattable
AbstractMathTransform
MapProjection
NewZealandMapGrid
- All Implemented Interfaces:
Serializable
,MathTransform
,MathTransform2D
The NZMG (New Zealand Map Grid) projection.
This is an implementation of algorithm published by Land Information New Zealand. The algorithm is documented here.
Implementation note
This class make extensive use of Complex
type which may be costly unless the compiler can inline on the
stack. We assume that Jave 6 and above can do this optimization.
- Since:
- 2.2
- Author:
- Justin Deoliveira, Martin Desruisseaux
- See Also:
-
Nested Class Summary
Nested ClassesModifier and TypeClassDescriptionstatic class
The math transform provider for New Zealand Map Grid (EPSG code 27200).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
ConstructorsModifierConstructorDescriptionprotected
Constructs a new map projection with default parameter values.protected
NewZealandMapGrid
(ParameterValueGroup parameters) Constructs a new map projection from the supplied parameters. -
Method Summary
Modifier and TypeMethodDescriptionReturns the parameter descriptors for this map 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, equals, getParameterValues, getSourceDimensions, getTargetDimensions, getToleranceForAssertions, hashCode, 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 Details
-
NewZealandMapGrid
protected NewZealandMapGrid()Constructs a new map projection with default parameter values. -
NewZealandMapGrid
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 Details
-
getParameterDescriptors
Returns the parameter descriptors for this map projection. This is used for a providing a default implementation ofMapProjection.getParameterValues()
, as well as arguments checking.- Specified by:
getParameterDescriptors
in classMapProjection
- Returns:
- The parameter descriptors for this math transform, or
null
. - See Also:
-
transformNormalized
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.
-