org.geotoolkit.referencing.operation.projection
Class ObliqueStereographic
Object
FormattableObject
AbstractMathTransform
AbstractMathTransform2D
UnitaryProjection
Stereographic
ObliqueStereographic
- All Implemented Interfaces:
- Serializable, Formattable, Parameterized, LenientComparable, MathTransform, MathTransform2D
@Immutable
public class ObliqueStereographic
- extends Stereographic
Oblique Stereographic projection (EPSG code 9809).
The formulas used below are not from the EPSG, but rather those of the
"Oblique Stereographic Alternative" in the libproj4 package
written by Gerald Evenden. His work is acknowledged here and greatly appreciated.
The forward equations used in libproj4 are the same as those given in the
UNB reports for the Double Stereographic. The inverse equations are similar,
but use different methods to iterate for the latitude.
References
libproj4 is available at
libproj4 Miscellanea.
Relevant files are: PJ_sterea.c, pj_gauss.c,
pj_fwd.c, pj_inv.c and lib_proj.h
- Gerald Evenden.
"Supplementary PROJ.4 Notes - Oblique Stereographic Alternative".
- "Coordinate Conversions and Transformations including Formulas",
EPSG Guidance Note Number 7, Version 19.
- Krakiwsky, E.J., D.B. Thomson, and R.R. Steeves. 1977.
A Manual for Geodetic Coordinate Transformations in the Maritimes.
Geodesy and Geomatics Engineering, UNB. Technical Report No. 48.
- Thomson, D.B., M.P. Mepham and R.R. Steeves. 1977.
The Stereographic Double Projection.
Surveying Engineering, University of New Brunswick. Technical Report No. 46.
- Since:
- 2.4
- Version:
- 3.19
- Author:
- Gerald Evenden (USGS), Rueben Schulz (UBC), Martin Desruisseaux (Geomatys), Rémi Maréchal (Geomatys)
- See Also:
PolarStereographic,
EquatorialStereographic,
Serialized Form
- Module:
|
Method Summary |
Matrix |
derivative(Point2D point)
Gets the derivative of this transform at a point. |
protected void |
inverseTransform(double[] srcPts,
int srcOff,
double[] dstPts,
int dstOff)
Transforms the specified (x,y) coordinates
and stores the result in dstPts (angles in radians). |
protected void |
transform(double[] srcPts,
int srcOff,
double[] dstPts,
int dstOff)
Transforms the specified (λ,φ) coordinates
(units in radians) and stores the result in dstPts (linear distance
on a unit sphere). |
| Methods inherited from class AbstractMathTransform |
createTransformedShape, derivative, ensureNonNull, equals, formatWKT, getName, hashCode, isIdentity, rollLongitude, transform, transform, transform, transform |
ObliqueStereographic
protected ObliqueStereographic(UnitaryProjection.Parameters parameters)
- Constructs an oblique stereographic projection (EPSG equations).
- Parameters:
parameters - The parameters of the projection to be created.
transform
protected void transform(double[] srcPts,
int srcOff,
double[] dstPts,
int dstOff)
throws ProjectionException
- Transforms the specified (λ,φ) coordinates
(units in radians) and stores the result in
dstPts (linear distance
on a unit sphere).
- Overrides:
transform in class Stereographic
- Parameters:
srcPts - The array containing the source point coordinate, as (longitude,
latitude) angles in radians.srcOff - The offset of the point to be converted in the source array.dstPts - the array into which the converted point coordinate is returned (may be
the same than srcPts). Ordinates will be in a dimensionless unit,
as a linear distance on a unit sphere or ellipse.dstOff - The offset of the location of the converted point that is
stored in the destination array.
- Throws:
ProjectionException - if the point can't be converted.
inverseTransform
protected void inverseTransform(double[] srcPts,
int srcOff,
double[] dstPts,
int dstOff)
throws ProjectionException
- Transforms the specified (x,y) coordinates
and stores the result in
dstPts (angles in radians).
- Overrides:
inverseTransform in class Stereographic
- Parameters:
srcPts - The array containing the source point coordinate, as linear distance
on a unit sphere or ellipse.srcOff - The offset of the point to be converted in the source array.dstPts - the array into which the converted point coordinate is returned (may be
the same than srcPts). Ordinates will be (longitude,
latitude) angles in radians.dstOff - The offset of the location of the converted point that is
stored in the destination array.
- Throws:
ProjectionException - if the point can't be converted.
derivative
public Matrix derivative(Point2D point)
throws ProjectionException
- Gets the derivative of this transform at a point.
- Specified by:
derivative in interface MathTransform2D- Overrides:
derivative in class Stereographic
- Parameters:
point - The coordinate point where to evaluate the derivative.
- Returns:
- The derivative at the specified point as a 2×2 matrix.
- Throws:
ProjectionException - if the derivative can't be evaluated at the specified point.- See Also:
MathTransform2D.derivative(Point2D)
Copyright © 2009-2011 Geotoolkit.org. All Rights Reserved.