org.geotoolkit.referencing.operation.transform
Class GeocentricAffineTransform

Object
  extended by FormattableObject
      extended by AbstractMathTransform
          extended by ProjectiveTransform
              extended by GeocentricAffineTransform
All Implemented Interfaces:
Serializable, Formattable, LinearTransform, Parameterized, LenientComparable, MathTransform

@Immutable
public class GeocentricAffineTransform
extends ProjectiveTransform

An affine transform applied on geocentric coordinates. This transform is a step in a datum shift transformation chain. It is typically used for geocentric translation, but a rotation can also be applied.

This transform is used for the following operations:

EPSG name EPSG code
Geocentric translations 9603
Position Vector 7-param. transformation 9606
Coordinate Frame rotation 9607

See any of the following providers for a list of programmatic parameters:

The conversion between geographic and geocentric coordinates is usually not part of this transform. However the Geotk implementation accepts the following extensions:

Since:
2.2
Version:
3.18
Author:
Martin Desruisseaux (IRD, Geomatys)
See Also:
Serialized Form
Module:
referencing/geotk-referencing (download)    View source code for this class

Nested Class Summary
 
Nested classes/interfaces inherited from class AbstractMathTransform
AbstractMathTransform.Inverse
 
Field Summary
 
Fields inherited from class FormattableObject
EPSG, GEOTIFF, INTERNAL, OGC, SINGLE_LINE
 
Constructor Summary
GeocentricAffineTransform(BursaWolfParameters parameters)
          Creates a new geocentric affine transform.
GeocentricAffineTransform(BursaWolfParameters parameters, ParameterDescriptorGroup descriptor)
          Creates a new geocentric affine transform using the specified parameter descriptor.
 
Method Summary
protected  int computeHashCode()
          Computes a hash value for this transform.
 boolean equals(Object object, ComparisonMode mode)
          Compares the specified object with this math transform for equality.
 ParameterDescriptorGroup getParameterDescriptors()
          Returns the parameter descriptors for this math transform.
 ParameterValueGroup getParameterValues()
          Returns the parameters for this math transform.
 
Methods inherited from class ProjectiveTransform
create, create, createScale, createSelectMatrix, createTranslation, derivative, derivative, getMatrix, getSourceDimensions, getTargetDimensions, inverse, isIdentity, isIdentity, transform, transform, transform, transform, transform
 
Methods inherited from class AbstractMathTransform
createTransformedShape, ensureNonNull, equals, formatWKT, getName, hashCode, rollLongitude, transform, transform
 
Methods inherited from class FormattableObject
getDefaultIndentation, print, setDefaultIndentation, toString, toWKT, toWKT, toWKT
 
Methods inherited from class Object
clone, finalize, getClass, notify, notifyAll, wait, wait, wait
 
Methods inherited from interface MathTransform
toWKT, transform
 
Methods inherited from interface LenientComparable
equals
 

Constructor Detail

GeocentricAffineTransform

public GeocentricAffineTransform(BursaWolfParameters parameters)
Creates a new geocentric affine transform. If the parameters don't contain rotation terms, then this transform will be of kind "Geocentric translations". Otherwise, it will be of kind "Position Vector 7-param. transformation".

Parameters:
parameters - The Bursa-Wolf parameters to use for initializing the transformation.

GeocentricAffineTransform

public GeocentricAffineTransform(BursaWolfParameters parameters,
                                 ParameterDescriptorGroup descriptor)
Creates a new geocentric affine transform using the specified parameter descriptor.

Parameters:
parameters - The Bursa-Wolf parameters to use for initializing the transformation.
descriptor - The parameter descriptor.
Method Detail

getParameterDescriptors

public ParameterDescriptorGroup getParameterDescriptors()
Returns the parameter descriptors for this math transform.

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

getParameterValues

public ParameterValueGroup getParameterValues()
Returns the parameters for this math transform.

Specified by:
getParameterValues in interface Parameterized
Overrides:
getParameterValues in class ProjectiveTransform
Returns:
A copy of the parameter values for this math transform.
See Also:
SingleOperation.getParameterValues()

computeHashCode

protected int computeHashCode()
Computes a hash value for this transform. This method is invoked by AbstractMathTransform.hashCode() when first needed.

Overrides:
computeHashCode in class ProjectiveTransform
Returns:
The hash code value. This value may change between different execution of the Geotk library.

equals

public boolean equals(Object object,
                      ComparisonMode mode)
Compares the specified object with this math transform for equality. The default implementation returns true if the following conditions are meet:

The parameter values are not compared because subclasses can typically compare those values more efficiently by accessing to their member fields.

Specified by:
equals in interface LinearTransform
Specified by:
equals in interface LenientComparable
Overrides:
equals in class ProjectiveTransform
Parameters:
object - The object to compare with this transform.
mode - The strictness level of the comparison. Default to STRICT.
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.


Copyright © 2009-2011 Geotoolkit.org. All Rights Reserved.