|
|||||||||||
PREV CLASS NEXT CLASS | FRAMES NO FRAMES | ||||||||||
SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD |
java.lang.Objectorg.deegree_impl.model.ct.AbstractMathTransform
org.deegree_impl.model.ct.GeocentricTransform
Transforms three dimensional geographic points to geocentric coordinate points. Input points must be longitudes, latitudes and heights above the ellipsoid.
Nested Class Summary | |
private class |
GeocentricTransform.Inverse
Inverse of a geocentric transform. |
(package private) static class |
GeocentricTransform.Provider
The provider for GeocentricTransform . |
Field Summary | |
private double |
a
Semi-major axis of ellipsoid in meters. |
private double |
a2
Square of semi-major axis (@link #a}²). |
private static double |
AD_C
Toms region 1 constant. |
private double |
b
Semi-minor axis of ellipsoid in meters. |
private double |
b2
Square of semi-minor axis ( b ²). |
private static double |
COS_67P5
Cosine of 67.5 degrees. |
private double |
e2
Eccentricity squared. |
private double |
ep2
2nd eccentricity squared. |
private boolean |
hasHeight
true if geographic coordinates
include an ellipsoidal height (i.e. are 3-D),
or false if they are strictly 2-D. |
private MathTransform |
inverse
The inverse of this transform. |
private static double |
MAX_ERROR
Maximal error tolerance in metres during // assertions, in metres. |
private static long |
serialVersionUID
Serial number for interoperability with different versions. |
Constructor Summary | |
protected |
GeocentricTransform(double semiMajor,
double semiMinor,
Unit units,
boolean hasHeight)
Construct a transform. |
protected |
GeocentricTransform(Ellipsoid ellipsoid,
boolean hasHeight)
Construct a transform. |
Method Summary | |
private static void |
checkArgument(java.lang.String name,
double value,
double max)
Check an argument value. |
private double |
checkTransform(double[] points)
Transform the last half if the specified array and returns the distance with the first half. |
boolean |
equals(java.lang.Object object)
Compares the specified object with this math transform for equality. |
int |
getDimSource()
Gets the dimension of input points, which is 2 or 3. |
int |
getDimTarget()
Gets the dimension of output points, which is 3. |
int |
hashCode()
Returns a hash value for this transform. |
MathTransform |
inverse()
Returns the inverse of this transform. |
protected void |
inverseTransform(double[] srcPts,
int srcOff,
double[] dstPts,
int dstOff,
int numPts)
Converts geocentric coordinates (x, y, z) to geodetic coordinates (longitude, latitude, height), according to the current ellipsoid parameters. |
protected void |
inverseTransform(float[] srcPts,
int srcOff,
float[] dstPts,
int dstOff,
int numPts)
Converts geocentric coordinates (x, y, z) to geodetic coordinates (longitude, latitude, height), according to the current ellipsoid parameters. |
boolean |
isIdentity()
Tests whether this transform does not move any points. |
java.lang.String |
toString()
Returns the WKT for this math transform. |
(package private) java.lang.String |
toString(java.lang.String classification)
Returns the WKT for this math transform with the specified classification name. |
void |
transform(double[] srcPts,
int srcOff,
double[] dstPts,
int dstOff,
int numPts)
Converts geodetic coordinates (longitude, latitude, height) to geocentric coordinates (x, y, z) according to the current ellipsoid parameters. |
private void |
transform(double[] srcPts,
int srcOff,
double[] dstPts,
int dstOff,
int numPts,
boolean hasHeight)
Implementation of geodetic to geocentric conversion. |
void |
transform(float[] srcPts,
int srcOff,
float[] dstPts,
int dstOff,
int numPts)
Converts geodetic coordinates (longitude, latitude, height) to geocentric coordinates (x, y, z) according to the current ellipsoid parameters. |
Methods inherited from class org.deegree_impl.model.ct.AbstractMathTransform |
addParameter, addParameter, createTransformedShape, createTransformedShape, derivative, derivative, getName, paramMT, toOpenGIS, transform, transform |
Methods inherited from class java.lang.Object |
clone, finalize, getClass, notify, notifyAll, wait, wait, wait |
Field Detail |
private static final long serialVersionUID
private static final double MAX_ERROR
inverseTransform(double[], int, double[], int, int)
will be transformed again with transform(double[], int, double[], int, int)
.
If the distance between the resulting position and the original position
is greater than MAX_ERROR
, then a // assertionError
is thrown.
private static final double COS_67P5
private static final double AD_C
private final double a
private final double b
private final double a2
private final double b2
b
²).
private final double e2
private final double ep2
private final boolean hasHeight
true
if geographic coordinates
include an ellipsoidal height (i.e. are 3-D),
or false
if they are strictly 2-D.
private transient MathTransform inverse
Constructor Detail |
protected GeocentricTransform(Ellipsoid ellipsoid, boolean hasHeight)
ellipsoid
- The ellipsoid.hasHeight
- true
if geographic coordinates
include an ellipsoidal height (i.e. are 3-D),
or false
if they are strictly 2-D.protected GeocentricTransform(double semiMajor, double semiMinor, Unit units, boolean hasHeight)
semiMajor
- The semi-major axis length.semiMinor
- The semi-minor axis length.units
- The axis units.hasHeight
- true
if geographic coordinates
include an ellipsoidal height (i.e. are 3-D),
or false
if they are strictly 2-D.Method Detail |
private static void checkArgument(java.lang.String name, double value, double max) throws java.lang.IllegalArgumentException
name
- The argument name.value
- The argument value.max
- The maximal legal argument value.
java.lang.IllegalArgumentException
public void transform(double[] srcPts, int srcOff, double[] dstPts, int dstOff, int numPts)
transform
in interface MathTransform
srcPts
- the array containing the source point coordinates.srcOff
- the offset to the first point to be transformed
in the source array.dstPts
- the array into which the transformed point
coordinates are returned. May be the same
than srcPts
.dstOff
- the offset to the location of the first
transformed point that is stored in the
destination array.numPts
- the number of point objects to be transformed.private void transform(double[] srcPts, int srcOff, double[] dstPts, int dstOff, int numPts, boolean hasHeight)
public void transform(float[] srcPts, int srcOff, float[] dstPts, int dstOff, int numPts)
transform
in interface MathTransform
transform
in class AbstractMathTransform
protected final void inverseTransform(double[] srcPts, int srcOff, double[] dstPts, int dstOff, int numPts)
protected final void inverseTransform(float[] srcPts, int srcOff, float[] dstPts, int dstOff, int numPts)
private double checkTransform(double[] points)
points
must have a length of 6.
public int getDimSource()
getDimSource
in interface MathTransform
CT_MathTransform.getDimSource()
public final int getDimTarget()
getDimTarget
in interface MathTransform
CT_MathTransform.getDimTarget()
public final boolean isIdentity()
false
.
isIdentity
in interface MathTransform
true
if this MathTransform
is
an identity transform; false
otherwise.public MathTransform inverse()
inverse
in interface MathTransform
inverse
in class AbstractMathTransform
public final int hashCode()
hashCode
in class AbstractMathTransform
public final boolean equals(java.lang.Object object)
equals
in class AbstractMathTransform
public final java.lang.String toString()
toString
in class AbstractMathTransform
final java.lang.String toString(java.lang.String classification)
|
|||||||||||
PREV CLASS NEXT CLASS | FRAMES NO FRAMES | ||||||||||
SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD |