org.geotoolkit.referencing.operation.provider
Class Molodensky

Object
  extended by FormattableObject
      extended by AbstractIdentifiedObject
          extended by DefaultOperationMethod
              extended by MathTransformProvider
                  extended by Molodensky
All Implemented Interfaces:
Serializable, Formattable, LenientComparable, IdentifiedObject, OperationMethod
Direct Known Subclasses:
AbridgedMolodensky

@Immutable
public class Molodensky
extends MathTransformProvider

The provider for "Molodensky transformation" (EPSG:9604). This provider constructs transforms from geographic to geographic coordinate reference systems, without passing though geocentric one.

Note: The EPSG database does not use src_semi_major, etc. parameters and instead uses "Semi-major axis length difference" and "Flattening difference".

Since:
2.1
Version:
3.19
Author:
Rueben Schulz (UBC), Martin Desruisseaux (IRD, Geomatys)
See Also:
MolodenskyTransform, Serialized Form
Module:
referencing/geotk-referencing (download)    View source code for this class

Field Summary
static ParameterDescriptor<Double> AXIS_LENGTH_DIFFERENCE
          The operation parameter descriptor for the Semi-major axis length difference optional parameter value.
static ParameterDescriptor<Integer> DIM
          The operation parameter descriptor for the number of geographic dimension (2 or 3).
static ParameterDescriptor<Double> DX
          The operation parameter descriptor for the X-axis translation (dx) parameter value.
static ParameterDescriptor<Double> DY
          The operation parameter descriptor for the Y-axis translation (dy) parameter value.
static ParameterDescriptor<Double> DZ
          The operation parameter descriptor for the Z-axis translation (dz) parameter value.
static ParameterDescriptor<Double> FLATTENING_DIFFERENCE
          The operation parameter descriptor for the Flattening difference optional parameter value.
static ParameterDescriptorGroup PARAMETERS
          The parameters group.
static ParameterDescriptor<Integer> SRC_DIM
          The operation parameter descriptor for the number of source geographic dimension (2 or 3).
static ParameterDescriptor<Double> SRC_SEMI_MAJOR
          The operation parameter descriptor for the "src_semi_major" parameter value.
static ParameterDescriptor<Double> SRC_SEMI_MINOR
          The operation parameter descriptor for the "src_semi_minor" parameter value.
static ParameterDescriptor<Integer> TGT_DIM
          The operation parameter descriptor for the number of target geographic dimension (2 or 3).
static ParameterDescriptor<Double> TGT_SEMI_MAJOR
          The operation parameter descriptor for the "tgt_semi_major" parameter value.
static ParameterDescriptor<Double> TGT_SEMI_MINOR
          The operation parameter descriptor for the "tgt_semi_minor" parameter value.
 
Fields inherited from class DefaultOperationMethod
sourceDimension, targetDimension
 
Fields inherited from class FormattableObject
EPSG, GEOTIFF, INTERNAL, OGC, SINGLE_LINE
 
Fields inherited from interface OperationMethod
FORMULA_KEY
 
Fields inherited from interface IdentifiedObject
ALIAS_KEY, IDENTIFIERS_KEY, NAME_KEY, REMARKS_KEY
 
Constructor Summary
Molodensky()
          Constructs a provider.
 
Method Summary
protected  MathTransform createMathTransform(ParameterValueGroup values)
          Creates a math transform from the specified group of parameter values.
 Class<Transformation> getOperationType()
          Returns the operation type.
 
Methods inherited from class MathTransformProvider
ensureValidValues, formatWKT
 
Methods inherited from class DefaultOperationMethod
checkDimensions, computeHashCode, equals, getFormula, getParameters, getSourceDimensions, getTargetDimensions
 
Methods inherited from class AbstractIdentifiedObject
equals, getAlias, getIdentifier, getIdentifiers, getName, getName, getRemarks, hashCode, nameMatches
 
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 IdentifiedObject
getAlias, getIdentifiers, getName, getRemarks, toWKT
 

Field Detail

DIM

public static final ParameterDescriptor<Integer> DIM
The operation parameter descriptor for the number of geographic dimension (2 or 3). This argument applies on both the source and the target dimension. The default value is 2.

Note: the default value may change in future versions, because the EPSG database implicitly uses the Molodensky transform in 3-dimensional operations. Users are well advised to always specify explicitely the dimension.


SRC_DIM

public static final ParameterDescriptor<Integer> SRC_DIM
The operation parameter descriptor for the number of source geographic dimension (2 or 3). This is a Geotk-specific argument. The standard parameter is DIM, which set both the source and target dimension.


TGT_DIM

public static final ParameterDescriptor<Integer> TGT_DIM
The operation parameter descriptor for the number of target geographic dimension (2 or 3). This is a Geotk-specific argument. The standard parameter is DIM, which set both the source and target dimension.


DX

public static final ParameterDescriptor<Double> DX
The operation parameter descriptor for the X-axis translation (dx) parameter value. Valid values range from negative to positive infinity. Units are metres.


DY

public static final ParameterDescriptor<Double> DY
The operation parameter descriptor for the Y-axis translation (dy) parameter value. Valid values range from negative to positive infinity. Units are metres.


DZ

public static final ParameterDescriptor<Double> DZ
The operation parameter descriptor for the Z-axis translation (dz) parameter value. Valid values range from negative to positive infinity. Units are metres.


SRC_SEMI_MAJOR

public static final ParameterDescriptor<Double> SRC_SEMI_MAJOR
The operation parameter descriptor for the "src_semi_major" parameter value. Valid values range from 0 to infinity. Units are metres.


SRC_SEMI_MINOR

public static final ParameterDescriptor<Double> SRC_SEMI_MINOR
The operation parameter descriptor for the "src_semi_minor" parameter value. Valid values range from 0 to infinity. Units are metres.


TGT_SEMI_MAJOR

public static final ParameterDescriptor<Double> TGT_SEMI_MAJOR
The operation parameter descriptor for the "tgt_semi_major" parameter value. Valid values range from 0 to infinity. Units are metres.

This parameter is mandatory, unless the AXIS_LENGTH_DIFFERENCE parameter is defined in which case the later is used.


TGT_SEMI_MINOR

public static final ParameterDescriptor<Double> TGT_SEMI_MINOR
The operation parameter descriptor for the "tgt_semi_minor" parameter value. Valid values range from 0 to infinity. Units are metres.

This parameter is mandatory, unless the FLATTENING_DIFFERENCE parameter is defined in which case the later is used.


AXIS_LENGTH_DIFFERENCE

public static final ParameterDescriptor<Double> AXIS_LENGTH_DIFFERENCE
The operation parameter descriptor for the Semi-major axis length difference optional parameter value. This parameter is defined by the EPSG database and can be used in replacement of TGT_SEMI_MAJOR.

Units are metres.

Since:
3.19

FLATTENING_DIFFERENCE

public static final ParameterDescriptor<Double> FLATTENING_DIFFERENCE
The operation parameter descriptor for the Flattening difference optional parameter value. This parameter is defined by the EPSG database and can be used in replacement TGT_SEMI_MINOR parameter value is defined.

Valid values range from -1 to +1, dimensionless.

Since:
3.19

PARAMETERS

public static final ParameterDescriptorGroup PARAMETERS
The parameters group.

Constructor Detail

Molodensky

public Molodensky()
Constructs a provider.

Method Detail

getOperationType

public Class<Transformation> getOperationType()
Returns the operation type.

Overrides:
getOperationType in class MathTransformProvider
Returns:
The GeoAPI interface implemented by this operation.

createMathTransform

protected MathTransform createMathTransform(ParameterValueGroup values)
                                     throws ParameterNotFoundException
Creates a math transform from the specified group of parameter values.

Specified by:
createMathTransform in class MathTransformProvider
Parameters:
values - The group of parameter values.
Returns:
The created math transform.
Throws:
ParameterNotFoundException - if a required parameter was not found.


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