| org.geotools.referencing.operation.transform.AbstractMathTransform org.geotools.referencing.operation.transform.MolodenskiTransform
MolodenskiTransform | public class MolodenskiTransform extends AbstractMathTransform implements Serializable(Code) | | Two- or three-dimensional datum shift using the (potentially abridged) Molodensky transformation.
The Molodensky transformation (EPSG code 9604) and the abridged Molodensky transformation (EPSG
code 9605) transform two or three dimensional geographic points from one geographic coordinate
reference system to another (a datum shift), using three shift parameters (delta X, delta Y,
delta Z) and the difference between the semi-major axis and flattenings of the two ellipsoids.
Unlike the Bursa-Wolf 3 parameter method (which acts on geocentric coordinates),
this transformation can be performed directly on geographic coordinates.
References:
- Defense Mapping Agency (DMA), Datums, Ellipsoids, Grids and Grid Reference Systems,
Technical Manual 8358.1.
Available from http://earth-info.nga.mil/GandG/pubs.html
- Defense Mapping Agency (DMA), The Universal Grids: Universal Transverse
Mercator (UTM) and Universal Polar Stereographic (UPS), Fairfax VA, Technical Manual 8358.2.
Available from http://earth-info.nga.mil/GandG/pubs.html
- National Imagery and Mapping Agency (NIMA), Department of Defense World
Geodetic System 1984, Technical Report 8350.2.
Available from http://earth-info.nga.mil/GandG/pubs.html
- "Coordinate Conversions and Transformations including Formulas",
EPSG Guidence Note Number 7, Version 19.
since: 2.1 version: $Id: MolodenskiTransform.java 24384 2007-02-14 00:23:05Z desruisseaux $ author: Rueben Schulz author: Martin Desruisseaux |
Inner Class :public static class ProviderAbridged extends Provider | |
Constructor Summary | |
public | MolodenskiTransform(boolean abridged, double a, double b, boolean source3D, double ta, double tb, boolean target3D, double dx, double dy, double dz) Constructs a Molodenski transform from the specified parameters. |
Method Summary | |
final public boolean | equals(Object object) Compares the specified object with this math transform for equality. | public ParameterDescriptorGroup | getParameterDescriptors() Returns the parameter descriptors for this math transform. | public ParameterValueGroup | getParameterValues() Returns the parameters for this math transform. | public int | getSourceDimensions() Gets the dimension of input points. | final public int | getTargetDimensions() Gets the dimension of output points. | final public int | hashCode() Returns a hash value for this transform. | public MathTransform | inverse() Creates the inverse transform of this object. | public void | transform(double[] srcPts, int srcOff, double[] dstPts, int dstOff, int numPts) Transforms a list of coordinate point ordinal values.
This method is provided for efficiently transforming many points.
The supplied array of ordinal values will contain packed ordinal
values. | public void | transform(float[] srcPts, int srcOff, float[] dstPts, int dstOff, int numPts) Transforms a list of coordinate point ordinal values.
This method is provided for efficiently transforming many points.
The supplied array of ordinal values will contain packed ordinal
values. |
MolodenskiTransform | public MolodenskiTransform(boolean abridged, double a, double b, boolean source3D, double ta, double tb, boolean target3D, double dx, double dy, double dz)(Code) | | Constructs a Molodenski transform from the specified parameters.
Parameters: abridged - true for the abridged formula, or false for the complete one. Parameters: a - The source semi-major axis length in meters. Parameters: b - The source semi-minor axis length in meters. Parameters: source3D - true if the source has a height. Parameters: ta - The target semi-major axis length in meters. Parameters: tb - The target semi-minor axis length in meters. Parameters: target3D - true if the target has a height. Parameters: dx - The x translation in meters. Parameters: dy - The y translation in meters. Parameters: dz - The z translation in meters. |
equals | final public boolean equals(Object object)(Code) | | Compares the specified object with this math transform for equality.
|
getParameterDescriptors | public ParameterDescriptorGroup getParameterDescriptors()(Code) | | Returns the parameter descriptors for this math transform.
|
getParameterValues | public ParameterValueGroup getParameterValues()(Code) | | Returns the parameters for this math transform.
The parameters for this math transform. |
getSourceDimensions | public int getSourceDimensions()(Code) | | Gets the dimension of input points.
|
getTargetDimensions | final public int getTargetDimensions()(Code) | | Gets the dimension of output points.
|
hashCode | final public int hashCode()(Code) | | Returns a hash value for this transform.
|
inverse | public MathTransform inverse()(Code) | | Creates the inverse transform of this object.
|
transform | public void transform(double[] srcPts, int srcOff, double[] dstPts, int dstOff, int numPts)(Code) | | Transforms a list of coordinate point ordinal values.
This method is provided for efficiently transforming many points.
The supplied array of ordinal values will contain packed ordinal
values. For example, if the source dimension is 3, then the ordinals
will be packed in this order:
(x0,y0,z0,
x1,y1,z1 ...).
Parameters: srcPts - the array containing the source point coordinates. Parameters: srcOff - the offset to the first point to be transformedin the source array. Parameters: dstPts - the array into which the transformed pointcoordinates are returned. May be the samethan srcPts . Parameters: dstOff - the offset to the location of the firsttransformed point that is stored in thedestination array. Parameters: numPts - the number of point objects to be transformed. |
transform | public void transform(float[] srcPts, int srcOff, float[] dstPts, int dstOff, int numPts)(Code) | | Transforms a list of coordinate point ordinal values.
This method is provided for efficiently transforming many points.
The supplied array of ordinal values will contain packed ordinal
values. For example, if the source dimension is 3, then the ordinals
will be packed in this order:
(x0,y0,z0,
x1,y1,z1 ...).
Parameters: srcPts - the array containing the source point coordinates. Parameters: srcOff - the offset to the first point to be transformedin the source array. Parameters: dstPts - the array into which the transformed pointcoordinates are returned. May be the samethan srcPts . Parameters: dstOff - the offset to the location of the firsttransformed point that is stored in thedestination array. Parameters: numPts - the number of point objects to be transformed. |
Methods inherited from org.geotools.referencing.operation.transform.AbstractMathTransform | MathTransform concatenate(MathTransform other, boolean applyOtherFirst)(Code)(Java Doc) public Shape createTransformedShape(Shape shape) throws TransformException(Code)(Java Doc) final Shape createTransformedShape(Shape shape, AffineTransform preTransform, AffineTransform postTransform, int orientation) throws TransformException(Code)(Java Doc) public Matrix derivative(Point2D point) throws TransformException(Code)(Java Doc) public Matrix derivative(DirectPosition point) throws TransformException(Code)(Java Doc) protected static void ensureNonNull(String name, Object object) throws IllegalArgumentException(Code)(Java Doc) public boolean equals(Object object)(Code)(Java Doc) protected String formatWKT(Formatter formatter)(Code)(Java Doc) public ParameterDescriptorGroup getParameterDescriptors()(Code)(Java Doc) public ParameterValueGroup getParameterValues()(Code)(Java Doc) abstract public int getSourceDimensions()(Code)(Java Doc) abstract public int getTargetDimensions()(Code)(Java Doc) public int hashCode()(Code)(Java Doc) public MathTransform inverse() throws NoninvertibleTransformException(Code)(Java Doc) static Matrix invert(Matrix matrix) throws NoninvertibleTransformException(Code)(Java Doc) public boolean isIdentity()(Code)(Java Doc) protected static boolean needCopy(int srcOff, int dimSource, int dstOff, int dimTarget, int numPts)(Code)(Java Doc) protected static double rollLongitude(double x)(Code)(Java Doc) static GeneralMatrix toGMatrix(Matrix matrix)(Code)(Java Doc) static XMatrix toXMatrix(Matrix matrix)(Code)(Java Doc) public Point2D transform(Point2D ptSrc, Point2D ptDst) throws TransformException(Code)(Java Doc) public DirectPosition transform(DirectPosition ptSrc, DirectPosition ptDst) throws TransformException(Code)(Java Doc) public void transform(float[] srcPts, int srcOff, float[] dstPts, int dstOff, int numPts) throws TransformException(Code)(Java Doc)
|
|
|