org.deegree.cs.projections.conic
Class ConicProjection

java.lang.Object
  extended by org.deegree.cs.CRSIdentifiable
      extended by org.deegree.cs.projections.Projection
          extended by org.deegree.cs.projections.conic.ConicProjection
All Implemented Interfaces:
Object, TypedObjectNode, CRSResource, IConicProjection, IProjection
Direct Known Subclasses:
LambertConformalConic

public abstract class ConicProjection
extends Projection
implements IConicProjection

The ConicProjection is a super class for all conic projections.

(From Snyder p.97)

To show a region for which the greatest extent is from east to west in the temperate zones, conic projections are usually preferable to cylindrical projections.

Normal conic projections are distinguished by the use of arcs of concentric circles for parallesl of latitude and equally spaced straight radii of these circles for meridians. The angles between the meridians on the map are smaller than the actual differences in longitude. The circular arcs may or may not be equally spaced, depending on the projections. The polyconic projections and the oblique conic projections have characteristcs different from these.

There are three important classes of conic projections:

Version:
$Revision: 29642 $, $Date: 2011-02-11 13:59:33 +0100 (Fri, 11 Feb 2011) $
Author:
Rutger Bezema, last edited by: $Author: lbuesching $

Constructor Summary
ConicProjection(double firstParallelLatitude, double secondParallelLatitude, double falseNorthing, double falseEasting, javax.vecmath.Point2d naturalOrigin, IUnit units, double scale, boolean conformal, boolean equalArea, CRSResource id)
           
 
Method Summary
 boolean equals(Object other)
           
 double getFirstParallelLatitude()
           
 double getSecondParallelLatitude()
           
 int hashCode()
          Implementation as proposed by Joshua Block in Effective Java (Addison-Wesley 2001), which supplies an even distribution and is relatively fast.
 
Methods inherited from class org.deegree.cs.projections.Projection
doInverseProjection, doProjection, getCosphi0, getEccentricity, getEllipsoid, getFalseEasting, getFalseNorthing, getImplementationName, getNaturalOrigin, getPrimeMeridian, getProjectionLatitude, getProjectionLongitude, getScale, getScaleFactor, getSemiMajorAxis, getSemiMinorAxis, getSinphi0, getSquaredEccentricity, getUnits, isConformal, isEqualArea, isSpherical, setFalseEasting, setScale, 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.projections.IProjection
doInverseProjection, doProjection, getCosphi0, getEccentricity, getEllipsoid, getFalseEasting, getFalseNorthing, getImplementationName, getNaturalOrigin, getPrimeMeridian, getProjectionLatitude, getProjectionLongitude, getScale, getScaleFactor, getSemiMajorAxis, getSemiMinorAxis, getSinphi0, getSquaredEccentricity, getUnits, isConformal, isEqualArea, isSpherical, setFalseEasting, setScale
 
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

ConicProjection

public ConicProjection(double firstParallelLatitude,
                       double secondParallelLatitude,
                       double falseNorthing,
                       double falseEasting,
                       javax.vecmath.Point2d naturalOrigin,
                       IUnit units,
                       double scale,
                       boolean conformal,
                       boolean equalArea,
                       CRSResource id)
Parameters:
firstParallelLatitude - the latitude (in radians) of the first parallel. (Snyder phi_1).
secondParallelLatitude - the latitude (in radians) of the second parallel. (Snyder phi_2).
geographicCRS -
falseNorthing -
falseEasting -
naturalOrigin -
units -
scale -
conformal -
equalArea -
id - an identifiable instance containing information about this projection
Method Detail

getFirstParallelLatitude

public final double getFirstParallelLatitude()
Specified by:
getFirstParallelLatitude in interface IConicProjection
Returns:
the latitude of the first parallel which is the intersection of the earth with the cone or the projectionLatitude if the cone is tangential with earth (e.g. one standard parallel).

getSecondParallelLatitude

public final double getSecondParallelLatitude()
Specified by:
getSecondParallelLatitude in interface IConicProjection
Returns:
the latitude of the first parallel which is the intersection of the earth with the cone or the projectionLatitude if the cone is tangential with earth (e.g. one standard parallel).

equals

public boolean equals(Object other)
Overrides:
equals in class Projection

hashCode

public int hashCode()
Implementation as proposed by Joshua Block in Effective Java (Addison-Wesley 2001), which supplies an even distribution and is relatively fast. It is created from field f as follows:

Combining the hash code(s) computed above: result = 37 * result + code;

Overrides:
hashCode in class Projection
Returns:
(int) ( result >>> 32 ) ^ (int) result;
See Also:
Object.hashCode()


Copyright © 2011. All Rights Reserved.