org.cts.op
Interface CoordinateOperation

All Superinterfaces:
Identifiable
All Known Implementing Classes:
AbstractCoordinateOperation, AlbersEqualArea, Altitude2EllipsoidalHeight, CassiniSoldner, ChangeCoordinateDimension, CoordinateOperationSequence, CoordinateRounding, CoordinateSwitch, CylindricalEqualArea, EquidistantCylindrical, FrenchGeocentricNTF2RGF, GaussSchreiberTransverseMercator, Geocentric2Geographic, GeocentricTranslation, Geographic2Geocentric, Identity, IterativeTransformation, Krovak, LambertAzimuthalEqualArea, LambertConicConformal1SP, LambertConicConformal2SP, LoadMemorizeCoordinate, LongitudeRotation, MemorizeCoordinate, Mercator1SP, MillerCylindrical, NewZealandMapGrid, NTv2GridShiftTransformation, ObliqueMercator, ObliqueStereographicAlternative, OppositeCoordinate, Polyconic, Projection, SevenParameterTransformation, Stereographic, SwissObliqueMercator, TransverseMercator, UnitConversion, UniversalTransverseMercator, UniversalTransverseMercatorAuto

public interface CoordinateOperation
extends Identifiable

A CoordinateOperation is an object able to modify values of a coordinate.

This is the main interface used to implement geodetic algorithms and perform coordinate conversions or coordinate transformations from one CoordinateReferenceSystem to another.

Author:
Michaƫl Michaud

Field Summary
 
Fields inherited from interface org.cts.Identifiable
DEFAULT, LOCAL, UNKNOWN
 
Method Summary
 double getPrecision()
          Return the precision of the transformation.
 CoordinateOperation inverse()
          Return the inverse CoordinateOperation, or throw a NonInvertibleOperationException.
 double[] transform(double[] coord)
          Transform values of a double array.
 
Methods inherited from interface org.cts.Identifiable
addAlias, addRemark, getAliases, getAuthorityKey, getAuthorityName, getCode, getName, getRemarks, getShortName, setRemarks, setShortName
 

Method Detail

transform

double[] transform(double[] coord)
                   throws IllegalCoordinateException
Transform values of a double array.

WARNING : In the general case, double values of the coord parameter are changed without the creation of a new array. In some cases (when the returned array must have a different length, a new double array is created and returned.

Parameters:
coord - coordinate to be transformed
Returns:
the same object with new values or a new double array
Throws:
IllegalCoordinateException - if coord is not compatible with this CoordinateOperation.

inverse

CoordinateOperation inverse()
                            throws NonInvertibleOperationException
Return the inverse CoordinateOperation, or throw a NonInvertibleOperationException. If op.inverse() is not null,
 op.inverse().transform(op.transform(point));
 
should let point unchanged.

Throws:
NonInvertibleOperationException

getPrecision

double getPrecision()
Return the precision of the transformation.

Precision is a double representing the mean error, in meters made on the position resulting from this CoordinateOperation.

ex. : 0.001 means that the precision of the resulting position is about one millimeter

Default precision (or maximum precision) is considered to be equals to 1E-9 which is the value of an ulp (units in the last place) for a double value equals to 6378137.0 (Earth semi-major axis).



Copyright © 2014 IRSTV CNRS-FR-2488. All Rights Reserved.