org.geotools.referencing.operation.projection
Class NewZealandMapGrid

Object
  extended by Formattable
      extended by AbstractMathTransform
          extended by MapProjection
              extended by NewZealandMapGrid
All Implemented Interfaces:
Serializable, MathTransform, MathTransform2D

public class NewZealandMapGrid
extends MapProjection

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:
Serialized Form
Module:

Nested Class Summary
static class NewZealandMapGrid.Provider
          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, excentricity, excentricitySquared, falseEasting, falseNorthing, globalScale, isSpherical, latitudeOfOrigin, LOGGER, scaleFactor, semiMajor, semiMinor
 
Fields inherited from class Formattable
SINGLE_LINE
 
Constructor Summary
protected NewZealandMapGrid()
          Constructs a new map projection with default parameter values.
protected NewZealandMapGrid(ParameterValueGroup parameters)
          Constructs a new map projection from the supplied parameters.
 
Method Summary
 ParameterDescriptorGroup getParameterDescriptors()
          Returns 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 in ptDst.
protected  Point2D transformNormalized(double x, double y, Point2D ptDst)
          Transforms the specified (λ,φ) coordinates (units in radians) and stores the result in ptDst (linear distance on a unit sphere).
 
Methods inherited from class MapProjection
equals, getParameterValues, getSourceDimensions, getTargetDimensions, getToleranceForAssertions, hashCode, inverse, resetWarnings, transform, transform, transform
 
Methods inherited from class AbstractMathTransform
createTransformedShape, derivative, derivative, ensureNonNull, formatWKT, getName, isIdentity, needCopy, rollLongitude, transform, transform, transform
 
Methods inherited from class Formattable
toString, toWKT, toWKT, toWKT
 
Methods inherited from class Object
clone, finalize, getClass, notify, notifyAll, wait, wait, wait
 
Methods inherited from interface MathTransform2D
createTransformedShape, derivative
 
Methods inherited from interface MathTransform
derivative, isIdentity, toWKT, transform
 

Constructor Detail

NewZealandMapGrid

protected NewZealandMapGrid()
Constructs a new map projection with default parameter values.


NewZealandMapGrid

protected NewZealandMapGrid(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

getParameterDescriptors

public ParameterDescriptorGroup getParameterDescriptors()
Returns the parameter descriptors for this map projection. This is used for a providing a default implementation of MapProjection.getParameterValues(), as well as arguments checking.

Specified by:
getParameterDescriptors in class MapProjection
Returns:
The parameter descriptors for this math transform, or null.
See Also:
OperationMethod.getParameters()

transformNormalized

protected Point2D transformNormalized(double x,
                                      double y,
                                      Point2D ptDst)
                               throws ProjectionException
Transforms the specified (λ,φ) coordinates (units in radians) and stores the result in ptDst (linear distance on a unit sphere).

Specified by:
transformNormalized in class MapProjection
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 transforming ptSrc, or null. 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 in ptDst.
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 in ptDst.

Specified by:
inverseTransformNormalized in class MapProjection
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 transforming ptSrc, or null. Ordinates will be in radians.
Returns:
the coordinate point after transforming x, y and storing the result in ptDst.
Throws:
ProjectionException - if the point can't be transformed.


Copyright © 1996-2009 Geotools. All Rights Reserved.