ilog.views.maps.projection
Class IlvLambertConformalConicProjection

java.lang.Object
  extended by ilog.views.maps.projection.IlvProjection
      extended by ilog.views.maps.projection.IlvConicProjection
          extended by ilog.views.maps.projection.IlvLambertConformalConicProjection
All Implemented Interfaces:
IlvPersistentObject, Serializable
Direct Known Subclasses:
IlvFrenchLambertProjection

public class IlvLambertConformalConicProjection
extends IlvConicProjection

This class defines the Lambert Conformal Conic projection. A conic projection transfers the image of the globe to a cone, either secant or tangent, to the surface of the earth.
The limiting forms of this type of projection are Polar Stereographic and Mercator.
This projection applies both to spherical and non-spherical ellipsoids and implements an inverse function.
This projection is Conformal.

See Also:
Serialized Form

Field Summary
 
Fields inherited from class ilog.views.maps.projection.IlvProjection
CONFORMAL, EQUAL_AREA, NONE
 
Constructor Summary
IlvLambertConformalConicProjection()
          Creates an instance of the class IlvLambertConformalConicProjection and initializes its secant latitudes to 33N and 45N.
IlvLambertConformalConicProjection(double lat1, double lat2)
          Creates an instance of the class IlvLambertConformalConicProjection and specifies its secant latitudes.
IlvLambertConformalConicProjection(IlvInputStream stream)
          Reads the object from an IlvInputStream.
IlvLambertConformalConicProjection(IlvLambertConformalConicProjection source)
          Creates a new IlvLambertConformalConicProjection by copying an existing one.
 
Method Summary
static IlvLambertConformalConicProjection BELGIUM()
          Returns an instance of IlvLambertConformalConicProjection initialized with the Lambert Conic Conformal (2SP Belgium) parameters.
 IlvProjection copy()
          Copies the projection.
protected  void eForward(IlvCoordinate ll)
          Implements the projection for an ellipsoid.
protected  void eInverse(IlvCoordinate xy)
          Implements the inverse projection for an ellipsoid.
 double getScaleFactor()
          Returns the scale factor applied to the projected data.
 void setEllipsoid(IlvEllipsoid e)
          Sets the ellipsoid used for the projection.
 void setLLCenter(double lon, double lat)
          Specifies the central meridian and the central parallel associated with the projection and updates the internal parameters.
 void setScaleFactor(double k0)
          Sets a scale factor applied to the projected data.
 void setSecantLatitudes(IlvCoordinate secant)
          Sets the secant latitudes of the projection.
protected  void sForward(IlvCoordinate ll)
          Implements the projection for a sphere.
protected  void sInverse(IlvCoordinate xy)
          Implements the inverse projection for a sphere.
 String toString()
          Converts the projection to a string with Evenden's format.
 void write(IlvOutputStream stream)
          Writes the object to an IlvOutputStream.
 
Methods inherited from class ilog.views.maps.projection.IlvConicProjection
addDescription, getSecantLatitude1, getSecantLatitude2, getSecantLatitudes, setSecantLatitude1, setSecantLatitude2
 
Methods inherited from class ilog.views.maps.projection.IlvProjection
adjustLongitude, equals, forward, forward, getCentralMeridian, getCentralParallel, getDatum, getEllipsoid, getFalseEasting, getFalseNorthing, GetProjection, getProperty, getUnit, getXYOffset, inverse, inverse, inverse, isEllipsoidEnabled, isGeocentric, isInverseEnabled, isUsingLongitudeReduction, setCentralMeridian, setCentralParallel, setDatum, setFalseEasting, setFalseNorthing, setGeocentric, setUnit, setUsingLongitudeReduction, setXYOffset
 
Methods inherited from class java.lang.Object
clone, finalize, getClass, hashCode, notify, notifyAll, wait, wait, wait
 

Constructor Detail

IlvLambertConformalConicProjection

public IlvLambertConformalConicProjection()
Creates an instance of the class IlvLambertConformalConicProjection and initializes its secant latitudes to 33N and 45N.


IlvLambertConformalConicProjection

public IlvLambertConformalConicProjection(double lat1,
                                          double lat2)
                                   throws IlvBadProjectionParameter
Creates an instance of the class IlvLambertConformalConicProjection and specifies its secant latitudes.

Parameters:
lat1 - The first secant latitude in radians.
lat2 - The second secant latitude in radians.
Throws:
IlvBadProjectionParameter - If the secant latitudes define a limiting form of the projection.

IlvLambertConformalConicProjection

public IlvLambertConformalConicProjection(IlvInputStream stream)
                                   throws IlvReadFileException
Reads the object from an IlvInputStream.

Parameters:
stream - The input stream.
Throws:
IlvReadFileException - If the format is not correct.
Since:
JViews 3.0

IlvLambertConformalConicProjection

public IlvLambertConformalConicProjection(IlvLambertConformalConicProjection source)
Creates a new IlvLambertConformalConicProjection by copying an existing one.

Parameters:
source - The projection that is copied.
Since:
JViews 3.0
Method Detail

BELGIUM

public static final IlvLambertConformalConicProjection BELGIUM()
Returns an instance of IlvLambertConformalConicProjection initialized with the Lambert Conic Conformal (2SP Belgium) parameters.
This instance of conformal conic projection has the following parameters : These parameters are from the National Geographic Institute - Belgium.

Since:
JViews 5.0

copy

public IlvProjection copy()
Copies the projection.

Specified by:
copy in class IlvProjection
Returns:
A copy of the projection.
Since:
JViews 3.0

sForward

protected void sForward(IlvCoordinate ll)
                 throws IlvToleranceConditionException
Implements the projection for a sphere.

Specified by:
sForward in class IlvProjection
Parameters:
ll - The longitude/latitude coordinates in radians (x = longitude, y = latitude).
Throws:
IlvToleranceConditionException - If the values are not within the tolerated limits.

eForward

protected void eForward(IlvCoordinate ll)
                 throws IlvToleranceConditionException
Implements the projection for an ellipsoid.

Overrides:
eForward in class IlvProjection
Parameters:
ll - The longitude/latitude coordinates in radians (x = longitude, y = latitude).
Throws:
IlvToleranceConditionException - If the values are not within the tolerated limits.

sInverse

protected void sInverse(IlvCoordinate xy)
                 throws IlvToleranceConditionException
Implements the inverse projection for a sphere.

Overrides:
sInverse in class IlvProjection
Parameters:
xy - The Cartesian coordinates.
Throws:
IlvToleranceConditionException - If the values are not within the tolerated limits.
See Also:
IlvProjection.inverse(ilog.views.IlvPoint), IlvProjection.isInverseEnabled()

eInverse

protected void eInverse(IlvCoordinate xy)
                 throws IlvToleranceConditionException
Implements the inverse projection for an ellipsoid.

Overrides:
eInverse in class IlvProjection
Parameters:
xy - The Cartesian coordinates.
Throws:
IlvToleranceConditionException - If the values are not within the tolerated limits.
See Also:
IlvProjection.inverse(ilog.views.IlvPoint), IlvProjection.isEllipsoidEnabled(), IlvProjection.isInverseEnabled()

setLLCenter

public void setLLCenter(double lon,
                        double lat)
Specifies the central meridian and the central parallel associated with the projection and updates the internal parameters. By default, the central parallel and the central meridian are set to 0.

Overrides:
setLLCenter in class IlvProjection
Parameters:
lon - The central meridian in radians.
lat - The central parallel in radians.
See Also:
IlvProjectionUtil.DegreeToRadian(double), IlvProjectionUtil.DMSToRadian(java.lang.String)

setSecantLatitudes

public void setSecantLatitudes(IlvCoordinate secant)
                        throws IlvBadProjectionParameter
Sets the secant latitudes of the projection.

Overrides:
setSecantLatitudes in class IlvConicProjection
Parameters:
secant - The first secant latitude in radians is in secant.x and the second secant latitude in radians is in secant.y.
Throws:
IlvBadProjectionParameter - If the latitudes specify a limiting form, that is, secant.x = -secant.y or secant.x = secant.y = PI/2 .

setEllipsoid

public void setEllipsoid(IlvEllipsoid e)
Sets the ellipsoid used for the projection. This function also updates the projection parameters for the given ellipsoid.

Overrides:
setEllipsoid in class IlvProjection
Parameters:
e - The ellipsoid.
See Also:
IlvEllipsoid

setScaleFactor

public void setScaleFactor(double k0)
Sets a scale factor applied to the projected data. By default, the scale factor is 1.

Parameters:
k0 - The scale factor.

getScaleFactor

public double getScaleFactor()
Returns the scale factor applied to the projected data.


write

public void write(IlvOutputStream stream)
           throws IOException
Writes the object to an IlvOutputStream.

Specified by:
write in interface IlvPersistentObject
Overrides:
write in class IlvConicProjection
Parameters:
stream - The output stream.
Throws:
IOException - thrown when an exception occurs during the write operation for this object.
Since:
JViews 3.0

toString

public String toString()
Converts the projection to a string with Evenden's format.

Overrides:
toString in class Object


Copyright © 1996-2007 ILOG S.A. All rights reserved.   Documentation homepage.