|
||||||||||
| PREV CLASS NEXT CLASS | FRAMES NO FRAMES | |||||||||
| SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD | |||||||||
java.lang.Objectorg.deegree.cs.CRSIdentifiable
org.deegree.cs.projections.Projection
public abstract class Projection
Map conversion is the process of changing the map grid coordinates (usually, but not always, Easting &
Northing) of a Projected Coordinate Reference System to its corresponding geographical coordinates (Latitude &
Longitude) or vice versa.
A projection is conformal if an infinitesimal small perfect circle on the earth's surface results in an infinitesimal small projected perfect circle (an ellipsoid with no eccentricity). In other words, the relative local angles about every point on the map are shown correctly.
An equal area projection can be best explained with a coin (Snyder), a coin (of any size) covers exactly the same area of the actual earth as the same coin on any other part of the map. This can only be done by distorting shape, scale and and angles of the original earth's layout.
| Constructor Summary | |
|---|---|
Projection(double falseNorthing,
double falseEasting,
javax.vecmath.Point2d naturalOrigin,
IUnit units,
double scale,
boolean conformal,
boolean equalArea,
CRSResource id)
Creates a Projection. |
|
| Method Summary | |
|---|---|
abstract javax.vecmath.Point2d |
doInverseProjection(IGeographicCRS underlyingCRS,
double x,
double y)
Do an inverse projection from projected (map) coordinates to geographic coordinates. |
abstract javax.vecmath.Point2d |
doProjection(IGeographicCRS underlyingCRS,
double lambda,
double phi)
The actual transform method doing a projection from geographic coordinates to map coordinates. |
boolean |
equals(Object other)
|
double |
getCosphi0()
|
double |
getEccentricity(IGeographicCRS geographicCRS)
|
IEllipsoid |
getEllipsoid(IGeographicCRS geographicCRS)
|
double |
getFalseEasting()
|
double |
getFalseNorthing()
|
abstract String |
getImplementationName()
|
javax.vecmath.Point2d |
getNaturalOrigin()
|
IPrimeMeridian |
getPrimeMeridian(IGeographicCRS geographicCRS)
|
double |
getProjectionLatitude()
|
double |
getProjectionLongitude()
|
double |
getScale()
|
double |
getScaleFactor(IGeographicCRS geographicCRS)
|
double |
getSemiMajorAxis(IGeographicCRS geographicCRS)
|
double |
getSemiMinorAxis(IGeographicCRS geographicCRS)
|
double |
getSinphi0()
|
double |
getSquaredEccentricity(IGeographicCRS geographicCRS)
|
IUnit |
getUnits()
|
int |
hashCode()
Implementation as proposed by Joshua Block in Effective Java (Addison-Wesley 2001), which supplies an even distribution and is relatively fast. |
boolean |
isConformal()
|
boolean |
isEqualArea()
|
boolean |
isSpherical(IGeographicCRS geographicCRS)
|
void |
setFalseEasting(double newFalseEasting)
sets the false easting to given value. |
void |
setScale(double scale)
Sets the old scale to the given scale, also adjusts the scaleFactor. |
String |
toString()
|
| Methods inherited from class org.deegree.cs.CRSIdentifiable |
|---|
addAreaOfUse, addName, checkForNullObject, checkForNullObject, checkForNullObject, getAreaOfUse, getAreaOfUseBBox, getAreasOfUse, getCode, getCodeAndName, getCodes, getDescription, getDescriptions, getId, 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 |
| Methods inherited from interface org.deegree.cs.CRSResource |
|---|
addAreaOfUse, addName, getAreaOfUse, getAreaOfUseBBox, getAreasOfUse, getCode, getCodeAndName, getCodes, getDescription, getDescriptions, getName, getNames, getOrignalCodeStrings, getVersion, getVersions, hasCode, hasId, hasIdOrName, setDefaultAreaOfUse, setDefaultDescription, setDefaultId, setDefaultName, setDefaultVersion |
| Methods inherited from interface org.deegree.commons.tom.Object |
|---|
getId |
| Constructor Detail |
|---|
public Projection(double falseNorthing,
double falseEasting,
javax.vecmath.Point2d naturalOrigin,
IUnit units,
double scale,
boolean conformal,
boolean equalArea,
CRSResource id)
geographicCRS - which this projection uses.falseNorthing - in given unitsfalseEasting - in given unitsnaturalOrigin - in radians longitude, latitude.units - of the map projectionscale - at the prime meridian (e.g. 0.9996 for UTM)conformal - if the projection is conformalequalArea - if the projection result in an equal area mapid - an identifiable instance containing information about this projection.| Method Detail |
|---|
public abstract javax.vecmath.Point2d doProjection(IGeographicCRS underlyingCRS,
double lambda,
double phi)
throws ProjectionException
doProjection in interface IProjectionlambda - the longitudephi - the latitude
ProjectionException - if the given lamba and phi coordinates could not be projected to x and y.
public abstract javax.vecmath.Point2d doInverseProjection(IGeographicCRS underlyingCRS,
double x,
double y)
throws ProjectionException
doInverseProjection in interface IProjectionx - 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 abstract String getImplementationName()
getImplementationName in interface IProjectionpublic final boolean isConformal()
isConformal in interface IProjectionpublic final boolean isEqualArea()
isEqualArea in interface IProjectionpublic final double getScale()
getScale in interface IProjectionpublic void setScale(double scale)
setScale in interface IProjectionscale - the new scalepublic final double getFalseEasting()
getFalseEasting in interface IProjectionpublic void setFalseEasting(double newFalseEasting)
setFalseEasting in interface IProjectionnewFalseEasting - the new false easting parameter.public final double getFalseNorthing()
getFalseNorthing in interface IProjectionpublic final javax.vecmath.Point2d getNaturalOrigin()
getNaturalOrigin in interface IProjectionpublic final IUnit getUnits()
getUnits in interface IProjectionpublic IPrimeMeridian getPrimeMeridian(IGeographicCRS geographicCRS)
getPrimeMeridian in interface IProjectionpublic IEllipsoid getEllipsoid(IGeographicCRS geographicCRS)
getEllipsoid in interface IProjectionpublic final double getEccentricity(IGeographicCRS geographicCRS)
getEccentricity in interface IProjectionpublic final double getSquaredEccentricity(IGeographicCRS geographicCRS)
getSquaredEccentricity in interface IProjectionpublic final double getSemiMajorAxis(IGeographicCRS geographicCRS)
getSemiMajorAxis in interface IProjectionpublic final double getSemiMinorAxis(IGeographicCRS geographicCRS)
getSemiMinorAxis in interface IProjectionpublic final double getProjectionLatitude()
getProjectionLatitude in interface IProjectionpublic final double getProjectionLongitude()
getProjectionLongitude in interface IProjectionpublic final double getSinphi0()
getSinphi0 in interface IProjectionpublic final double getCosphi0()
getCosphi0 in interface IProjectionpublic double getScaleFactor(IGeographicCRS geographicCRS)
getScaleFactor in interface IProjectionpublic boolean isSpherical(IGeographicCRS geographicCRS)
isSpherical in interface IProjectionpublic boolean equals(Object other)
equals in class CRSIdentifiablepublic String toString()
toString in class CRSIdentifiablepublic int hashCode()
Combining the hash code(s) computed above: result = 37 * result + code;
hashCode in class CRSIdentifiableObject.hashCode()
|
||||||||||
| PREV CLASS NEXT CLASS | FRAMES NO FRAMES | |||||||||
| SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD | |||||||||