Package com.luciad.projection
Class ALcdConic
java.lang.Object
com.luciad.projection.ALcdProjection
com.luciad.projection.ALcdConic
- All Implemented Interfaces:
ILcdConic
,ILcdProjection
,ILcdPropertyChangeSource
,Serializable
,Cloneable
- Direct Known Subclasses:
TLcdAlbersEqualAreaConic
,TLcdLambertConformal
A
ALcdConic
is a ILcdProjection
that is derived
by projection of geodetic points on a cone which is then unrolled.
The cone can be placed on top of the earth globe with the apex or tip along
the axis of the earth globe and the sides of the cone tangent to the globe
along a specified standard latitude aLatitude
which is
true
to scale.
The cone doesn't have to be tangent to the globe but can also be secant at two specified standard parallels.
A ALcdConic
has a firstParallel and a secondParallel, both
determined by a latitude. The latitude of the firstParallel must be less than
or equal to the latitude of the secondParallel. Its origin is determined by a
longitude and a latitude.
- See Also:
-
Field Summary
Fields inherited from class com.luciad.projection.ALcdProjection
fPropertyChangeDispatcher
Fields inherited from interface com.luciad.projection.ILcdProjection
EPSILON
-
Constructor Summary
-
Method Summary
Modifier and TypeMethodDescriptionprotected void
Constants based on the point of origin of the projection and the two standard parallels don't have to be recalculated every time a method is called.clone()
Makes a deep clone of thisILcdProjection
.boolean
Checks if thisILcdProjection
equals some other Object.double
Gets the latitude of the firstParallel of thisILcdConic
.Origin of the projection is theILcd2DEditablePoint
that corresponds with origin (0, 0) of the cartesian coordinate system of the projection.double
Gets the latitude of the origin of thisILcdConic
.double
Gets the longitude of the origin of thisILcdConic
.double
Gets the latitude of the secondParallel of thisILcdConic
.int
hashCode()
boolean
AnILcdProjection
is continuous if there are no interruptions in the world coordinates.void
loadProperties
(String aPrefix, Properties aProperty) Loads the 4 properties of anALcdConic
: the longitude and latitude of the point of origin of the projection and the first and second standard parallels.void
setFirstParallel
(double aLat) Sets the firstParallel of thisILcdConic
to the parallel with latitudeaLatitude
.void
setOriginLat
(double aLatitude) Sets the latitude of the origin of thisILcdConic
toaLatitude
.void
setOriginLon
(double aLongitude) Sets the longitude of the origin of thisILcdConic
toaLongitude
.void
setSecondParallel
(double aLat) Sets the secondParallel of thisILcdConic
to the parallel with latitudeaLatitude
.void
writePropertiesSFCT
(String aPrefix, Properties aPropertySFCT) Writes the 4 properties of anALcdConic
: the longitude and latitude of the point of origin of the projection and the first and second standard parallels.Methods inherited from class com.luciad.projection.ALcdProjection
addPropertyChangeListener, boundaryLats, boundaryLons, firePropertyChangeEvent, inWorldBoundsOnEllipsoid, lonlatheight2worldOnEllipsoidSFCT, removePropertyChangeListener, world2DEditableBoundsOnEllipsoidSFCT, world2lonlatOnEllipsoidSFCT
Methods inherited from class java.lang.Object
finalize, getClass, notify, notifyAll, toString, wait, wait, wait
Methods inherited from interface com.luciad.projection.ILcdProjection
boundaryLats, boundaryLons, inLonLatBounds, inWorldBoundsOnEllipsoid, inWorldBoundsOnSphere, isAllInBounds, lonlatheight2worldOnEllipsoidSFCT, lonlatheight2worldOnSphereSFCT, toString, world2DEditableBoundsOnEllipsoidSFCT, world2DEditableBoundsOnSphereSFCT, world2lonlatOnEllipsoidSFCT, world2lonlatOnSphereSFCT
Methods inherited from interface com.luciad.util.ILcdPropertyChangeSource
addPropertyChangeListener, removePropertyChangeListener
-
Constructor Details
-
ALcdConic
public ALcdConic()
-
-
Method Details
-
setOriginLat
public void setOriginLat(double aLatitude) Description copied from interface:ILcdConic
Sets the latitude of the origin of thisILcdConic
toaLatitude
.- Specified by:
setOriginLat
in interfaceILcdConic
- Parameters:
aLatitude
- The new originLat value.- See Also:
-
setOriginLon
public void setOriginLon(double aLongitude) Description copied from interface:ILcdConic
Sets the longitude of the origin of thisILcdConic
toaLongitude
.- Specified by:
setOriginLon
in interfaceILcdConic
- Parameters:
aLongitude
- The new originLon value.- See Also:
-
setFirstParallel
public void setFirstParallel(double aLat) Description copied from interface:ILcdConic
Sets the firstParallel of thisILcdConic
to the parallel with latitudeaLatitude
.- Specified by:
setFirstParallel
in interfaceILcdConic
- Parameters:
aLat
- The new firstParallel value.- See Also:
-
setSecondParallel
public void setSecondParallel(double aLat) Description copied from interface:ILcdConic
Sets the secondParallel of thisILcdConic
to the parallel with latitudeaLatitude
.- Specified by:
setSecondParallel
in interfaceILcdConic
- Parameters:
aLat
- The new secondParallel value.- See Also:
-
getOrigin
Description copied from interface:ILcdProjection
Origin of the projection is theILcd2DEditablePoint
that corresponds with origin (0, 0) of the cartesian coordinate system of the projection.- Specified by:
getOrigin
in interfaceILcdProjection
- Returns:
- the origin of the projection.
-
getOriginLat
public double getOriginLat()Description copied from interface:ILcdConic
Gets the latitude of the origin of thisILcdConic
.- Specified by:
getOriginLat
in interfaceILcdConic
- Returns:
- the latitude of the origin of this
ILcdConic
. - See Also:
-
getOriginLon
public double getOriginLon()Description copied from interface:ILcdConic
Gets the longitude of the origin of thisILcdConic
.- Specified by:
getOriginLon
in interfaceILcdConic
- Returns:
- the longitude of the origin of this
ILcdConic
. - See Also:
-
getFirstParallel
public double getFirstParallel()Description copied from interface:ILcdConic
Gets the latitude of the firstParallel of thisILcdConic
.- Specified by:
getFirstParallel
in interfaceILcdConic
- Returns:
- the latitude of the firstParallel of this
ILcdConic
. - See Also:
-
getSecondParallel
public double getSecondParallel()Description copied from interface:ILcdConic
Gets the latitude of the secondParallel of thisILcdConic
.- Specified by:
getSecondParallel
in interfaceILcdConic
- Returns:
- the latitude of the secondParallel of this
ILcdConic
. - See Also:
-
isContinuous
public boolean isContinuous()Description copied from interface:ILcdProjection
AnILcdProjection
is continuous if there are no interruptions in the world coordinates. Most projections are continuous.- Specified by:
isContinuous
in interfaceILcdProjection
- Returns:
true
if the projection is continuous,false
otherwise.
-
loadProperties
Loads the 4 properties of anALcdConic
: the longitude and latitude of the point of origin of the projection and the first and second standard parallels. This method will, given aPrefix, analyze the aProperties object to set the properties of thisALcdConic
. The values of following keys are retrieved:- <aPrefix><the name of the class that extends this abstract class>.originLat
- <aPrefix><the name of the class that extends this abstract class>.originLon
- <aPrefix><the name of the class that extends this abstract class>.firstParallel
- <aPrefix><the name of the class that extends this abstract class>.secondParallel
- Specified by:
loadProperties
in interfaceILcdProjection
- Parameters:
aPrefix
- prefix of the property names.aProperty
- Properties object containing the serialized properties.- Throws:
IllegalArgumentException
- if the projection cannot be created.
-
writePropertiesSFCT
Writes the 4 properties of anALcdConic
: the longitude and latitude of the point of origin of the projection and the first and second standard parallels. This method will, given aPrefix, put the properties of thisALcdConic
into the aPropertiesSFCT object. The values of following keys are stored:- <aPrefix><the name of the class that extends this abstract class>.originLat
- <aPrefix><the name of the class that extends this abstract class>.originLon
- <aPrefix><the name of the class that extends this abstract class>.firstParallel
- <aPrefix><the name of the class that extends this abstract class>.secondParallel
- Specified by:
writePropertiesSFCT
in interfaceILcdProjection
- Parameters:
aPrefix
- prefix for the property names.aPropertySFCT
- Properties object to store the serialized properties by side effect.
-
calculateCachedValues
protected void calculateCachedValues()Constants based on the point of origin of the projection and the two standard parallels don't have to be recalculated every time a method is called. They only have to be calculated when the projection properties change. Within the methods the precalculated values then can be used in order to gain efficiency. -
hashCode
public int hashCode() -
equals
Description copied from interface:ILcdProjection
Checks if thisILcdProjection
equals some other Object.- Specified by:
equals
in interfaceILcdProjection
- Overrides:
equals
in classObject
- Parameters:
aObject
- Object to compare with.- Returns:
- true if the Object is an instance of the same
ILcdProjection
class and having the same projection properties, false otherwise.
-
clone
Description copied from interface:ILcdProjection
Makes a deep clone of thisILcdProjection
.- Specified by:
clone
in interfaceILcdProjection
- Overrides:
clone
in classALcdProjection
- Returns:
- deep clone of this
ILcdProjection
.
-