|
deegree-core-3.0-pre-nightly (2010/03/05 00:01) - official | |||||||||
PREV CLASS NEXT CLASS | FRAMES NO FRAMES | |||||||||
SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD |
java.lang.Object org.deegree.crs.CRSIdentifiable org.deegree.crs.projections.Projection org.deegree.crs.projections.azimuthal.AzimuthalProjection org.deegree.crs.projections.azimuthal.StereographicAlternative
public class StereographicAlternative
StereographicAlternative
projection may be imagined to be a projection of the earth's surface onto a
plane in contact with the earth at a single tangent point from the opposite end of the diameter through that tangent
point.
An alternative approach is given by Snyder StereographicAzimuthal
, where, instead of defining a single
conformal sphere at the origin point, the conformal latitude at each point on the ellipsoid is computed. The
conformal longitude is then always equivalent to the geodetic longitude. This approach is a valid alternative to the
above, but gives slightly different results away from the origin point. It is therefore considered by EPSG to be a
different projection method. Hence this implementation.
This projection is best known in its polar form and is frequently used for mapping polar areas where it complements the Universal Transverse Mercator used for lower latitudes. Its spherical form has also been widely used by the US Geological Survey for planetary mapping and the mapping at small scale of continental hydrocarbon provinces. In its transverse or oblique ellipsoidal forms it is useful for mapping limited areas centered on the point where the plane of the projection is regarded as tangential to the ellipsoid., e.g. the Netherlands. The tangent point is the origin of the projected coordinate system and the meridian through it is regarded as the central meridian. In order to reduce the scale error at the extremities of the projection area it is usual to introduce a scale factor of less than unity at the origin such that a unit scale factor applies on a near circle centered at the origin and some distance from it.
The coordinate transformation from geographical to projected coordinates is executed via the distance and azimuth of the point from the center point or origin. For a sphere the formulas are relatively simple. For the ellipsoid the same formulas are used but with auxiliary latitudes, known as conformal latitudes, substituted for the geodetic latitudes of the spherical formulas for the origin and the point .
from http://www.posc.org/
Determinations of oblique projections on an ellipsoid can be difficult to solve and result in long, complex computations. Because conformal transformations can be made multiple time without loss of the conformal property a method of determining oblique projections involves conformal transformation of the elliptical coordinates to coordinates on a conformal sphere. The transformed coordinates can now be translated/rotated on the sphere and then converted to planar coordinates with a conformal spherical projection. is Ce/2 1 − e sin φ 2 arctan K tanC (π/4 + φ/2) − π/2 (3.6) χ = 1 + e sin φ λc = Cλ (3.7) √ 1 − e2 Rc = (3.8) 1 − e2 sin2 φ0
From the libproj4-manual by Gerald I. Evenden
Field Summary |
---|
Fields inherited from class org.deegree.crs.projections.azimuthal.AzimuthalProjection |
---|
EQUATOR, NORTH_POLE, OBLIQUE, SOUTH_POLE |
Constructor Summary | |
---|---|
StereographicAlternative(GeographicCRS geographicCRS,
double falseNorthing,
double falseEasting,
javax.vecmath.Point2d naturalOrigin,
Unit units,
double scale)
Sets the id of this projection to epsg::9809 (Oblique Stereographic) |
|
StereographicAlternative(GeographicCRS geographicCRS,
double falseNorthing,
double falseEasting,
javax.vecmath.Point2d naturalOrigin,
Unit units,
double scale,
CRSIdentifiable id)
|
Method Summary | |
---|---|
Projection |
clone(GeographicCRS newCRS)
Creates a copy of this projection with the given GeographicCRS as the base. |
javax.vecmath.Point2d |
doInverseProjection(double x,
double y)
Do an inverse projection from projected (map) coordinates to geographic coordinates. |
javax.vecmath.Point2d |
doProjection(double lambda,
double phi)
The actual transform method doing a projection from geographic coordinates to map coordinates. |
String |
getImplementationName()
|
Methods inherited from class org.deegree.crs.projections.azimuthal.AzimuthalProjection |
---|
getMode, hashCode |
Methods inherited from class org.deegree.crs.projections.Projection |
---|
equals, getCosphi0, getDatum, getEccentricity, getEllipsoid, getFalseEasting, getFalseNorthing, getGeographicCRS, getNaturalOrigin, getPrimeMeridian, getProjectionLatitude, getProjectionLongitude, getScale, getScaleFactor, getSemiMajorAxis, getSemiMinorAxis, getSinphi0, getSquaredEccentricity, getUnits, isConformal, isEqualArea, isSpherical, setFalseEasting, setScale, toString |
Methods inherited from class org.deegree.crs.CRSIdentifiable |
---|
addAreaOfUse, addName, checkForNullObject, checkForNullObject, checkForNullObject, getAreaOfUse, getAreaOfUseBBox, getAreasOfUse, getCode, getCodeAndName, getCodes, getDescription, getDescriptions, getName, getNames, getOrignalCodeStrings, getVersion, getVersions, hasCode, hasId, hasIdOrName, setDefaultAreaOfUse, setDefaultDescription, setDefaultId, setDefaultName, setDefaultVersion |
Methods inherited from class java.lang.Object |
---|
clone, finalize, getClass, notify, notifyAll, wait, wait, wait |
Constructor Detail |
---|
public StereographicAlternative(GeographicCRS geographicCRS, double falseNorthing, double falseEasting, javax.vecmath.Point2d naturalOrigin, Unit units, double scale, CRSIdentifiable id)
geographicCRS
- falseNorthing
- falseEasting
- naturalOrigin
- units
- scale
- id
- an identifiable instance containing information about this projectionpublic StereographicAlternative(GeographicCRS geographicCRS, double falseNorthing, double falseEasting, javax.vecmath.Point2d naturalOrigin, Unit units, double scale)
geographicCRS
- falseNorthing
- falseEasting
- naturalOrigin
- units
- scale
- Method Detail |
---|
public javax.vecmath.Point2d doInverseProjection(double x, double y) throws ProjectionException
Projection
doInverseProjection
in class Projection
x
- coordinate on the mapy
- coordinate on the map
ProjectionException
- if the given x and y coordinates could not be inverted to lambda and phi.public javax.vecmath.Point2d doProjection(double lambda, double phi) throws ProjectionException
Projection
doProjection
in class Projection
lambda
- the longitudephi
- the latitude
ProjectionException
- if the given lamba and phi coordinates could not be projected to x and y.public String getImplementationName()
getImplementationName
in class Projection
public Projection clone(GeographicCRS newCRS)
Projection
GeographicCRS
as the base.
clone
in class Projection
newCRS
- the new GeographicCRS
|
deegree-core-3.0-pre-nightly (2010/03/05 00:01) - official | |||||||||
PREV CLASS NEXT CLASS | FRAMES NO FRAMES | |||||||||
SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD |