ilog.views.maps.projection
Class IlvFrenchLambertProjection

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

public class IlvFrenchLambertProjection
extends IlvLambertConformalConicProjection

This class defines the Lambert projection used in France. It is a special form of the IlvLambertConformalConicProjection for which a set of parameters is defined for 6 different modes.

For medium scale maps (1:25 000 and smaller), France has been divided into four zones. To each zone corresponds a mode of the projection.

For large scale maps, the Lambert_II_extended mode is generally used.

Another mode is used for maps using the RGF93 geodesic system (RGF93 stands for "Reseau Geodesique Francais"). This mode is called Lambert_93 .

The five first modes of the projection use an IGN version of the Clarke 1880 ellipsoid, while the Lambert_93 mode uses the GRS80 ellipsoid. The five first modes are centered on the Paris meridian that passes through the middle of the facade of the Paris Observatoire. The Lambert_93 is centered at 3 degrees east.

Since:
JViews 3.0
See Also:
Serialized Form

Field Summary
static int Lambert_93
          The mode for the Lambert 93 projection.
static int Lambert_I
          The mode for the Lambert I projection.
static int Lambert_II
          The mode for the Lambert II projection.
static int Lambert_II_extended
          The mode for the extended Lambert II projection.
static int Lambert_III
          The mode for the Lambert III projection.
static int Lambert_IV
          The mode for the Lambert IV projection.
 
Fields inherited from class ilog.views.maps.projection.IlvProjection
CONFORMAL, EQUAL_AREA, NONE
 
Constructor Summary
IlvFrenchLambertProjection()
          Creates an instance of the class IlvFrenchLambertProjection and initializes it to the Lambert_II_extended mode.
IlvFrenchLambertProjection(IlvFrenchLambertProjection source)
          Creates a new IlvFrenchLambertProjection by copying an existing one.
IlvFrenchLambertProjection(IlvInputStream stream)
          Reads the object from an IlvInputStream.
IlvFrenchLambertProjection(int mode)
          Creates an instance of the class IlvFrenchLambertProjection and initializes it to the specified mode.
 
Method Summary
 IlvProjection copy()
          Copies the projection.
 int getMode()
          Returns the Lambert mode of the projection.
 double getNorthLimit()
          Returns the latitude of the north limit of the projection for its current mode.
static double GetNorthLimit(int mode)
          Returns the latitude of the north limit of a French Lambert Projection for the specified mode.
static IlvEllipsoid GetNTFEllipsoid()
          Returns the ellipsoid used for the NTF geodesic system.
static double GetParisMeridian()
          Returns the longitude of the Paris meridian in radian.
static IlvEllipsoid GetRGF93Ellipsoid()
          Returns the ellipsoid used for the RGF geodesic system.
 double getSouthLimit()
          Returns the latitude of the south limit of the projection for its current mode.
static double GetSouthLimit(int mode)
          Returns the latitude of the south limit of a French Lambert Projection for the specified mode.
 void setLLCenter(double lon, double lat)
          This function does nothing in the case of the French Lambert Projection.
 void setMode(int mode)
          Specifies the mode of the Lambert projection.
 void setScaleFactor(double k0)
          This function does nothing in the case of the French Lambert Projection.
 void setSecantLatitudes(IlvCoordinate secant)
          This function does nothing in the case of a French Lambert Projection.
 void write(IlvOutputStream stream)
          Writes the object to an IlvOutputStream.
 
Methods inherited from class ilog.views.maps.projection.IlvLambertConformalConicProjection
BELGIUM, eForward, eInverse, getScaleFactor, setEllipsoid, sForward, sInverse, toString
 
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
 

Field Detail

Lambert_I

public static final int Lambert_I
The mode for the Lambert I projection. This mode is generally used for medium scale maps (1:25 000) for regions located in the north of France.

See Also:
GetNorthLimit(int), GetSouthLimit(int), Constant Field Values

Lambert_II

public static final int Lambert_II
The mode for the Lambert II projection. This mode is generally used for medium scale maps (1:25 000) for regions located in the center of France.

See Also:
GetNorthLimit(int), GetSouthLimit(int), Constant Field Values

Lambert_III

public static final int Lambert_III
The mode for the Lambert III projection. This mode is generally used for medium scale maps (1:25 000) for regions located in the south of France.

See Also:
GetNorthLimit(int), GetSouthLimit(int), Constant Field Values

Lambert_IV

public static final int Lambert_IV
The mode for the Lambert IV projection. This mode is generally used for medium scale maps (1:25 000) for regions located in Corse.

See Also:
GetNorthLimit(int), GetSouthLimit(int), Constant Field Values

Lambert_II_extended

public static final int Lambert_II_extended
The mode for the extended Lambert II projection. This mode is generally used for small scale maps (1:50 000 and more) for regions located in France.

See Also:
GetNorthLimit(int), GetSouthLimit(int), Constant Field Values

Lambert_93

public static final int Lambert_93
The mode for the Lambert 93 projection. This mode is generally used for maps using the RGF93 geodesic system (Reseau Geodesique Francais).

See Also:
GetNorthLimit(int), GetSouthLimit(int), Constant Field Values
Constructor Detail

IlvFrenchLambertProjection

public IlvFrenchLambertProjection()
Creates an instance of the class IlvFrenchLambertProjection and initializes it to the Lambert_II_extended mode.


IlvFrenchLambertProjection

public IlvFrenchLambertProjection(int mode)
                           throws IlvBadProjectionParameter
Creates an instance of the class IlvFrenchLambertProjection and initializes it to the specified mode.

Parameters:
mode - The mode of the projection.
Throws:
IlvBadProjectionParameter - if the mode is not valid.
See Also:
Lambert_I, Lambert_II, Lambert_III, Lambert_IV, Lambert_II_extended, Lambert_93

IlvFrenchLambertProjection

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

Parameters:
stream - the input stream.
Throws:
IlvReadFileException - if the format is not correct.

IlvFrenchLambertProjection

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

Parameters:
source - the projection that is copied.
Method Detail

copy

public IlvProjection copy()
Copies the projection.

Overrides:
copy in class IlvLambertConformalConicProjection
Returns:
a copy of the projection.

getMode

public int getMode()
Returns the Lambert mode of the projection.

See Also:
Lambert_I, Lambert_II, Lambert_III, Lambert_IV, Lambert_II_extended, Lambert_93

setMode

public void setMode(int mode)
             throws IlvBadProjectionParameter
Specifies the mode of the Lambert projection.

Parameters:
mode - the number of the mode.
Throws:
IlvBadProjectionParameter - if the mode is not valid.
See Also:
Lambert_I, Lambert_II, Lambert_III, Lambert_IV, Lambert_II_extended, Lambert_93

GetParisMeridian

public static final double GetParisMeridian()
Returns the longitude of the Paris meridian in radian.


GetNTFEllipsoid

public static final IlvEllipsoid GetNTFEllipsoid()
Returns the ellipsoid used for the NTF geodesic system. This geodesic system is used by the modes Lambert_I, Lambert_II, Lambert_III, Lambert_IV and Lambert_II_extended.


GetRGF93Ellipsoid

public static final IlvEllipsoid GetRGF93Ellipsoid()
Returns the ellipsoid used for the RGF geodesic system. This geodesic system is used by the Lambert_93 mode.


getNorthLimit

public final double getNorthLimit()
Returns the latitude of the north limit of the projection for its current mode. The latitude is expressed in radians.

See Also:
GetNorthLimit(int)

GetNorthLimit

public static final double GetNorthLimit(int mode)
Returns the latitude of the north limit of a French Lambert Projection for the specified mode. French Lambert Projections are generally not used above this limit.
The latitude is expressed in radians.

Parameters:
mode - a mode of the French Lambert Projection.

getSouthLimit

public final double getSouthLimit()
Returns the latitude of the south limit of the projection for its current mode. The latitude is expressed in radians.

See Also:
GetSouthLimit(int)

GetSouthLimit

public static final double GetSouthLimit(int mode)
Returns the latitude of the south limit of a French Lambert Projection for the specified mode. French Lambert Projections are generally not used below this limit.
The latitude is expressed in radians.

Parameters:
mode - a mode of the French Lambert Projection.

setLLCenter

public void setLLCenter(double lon,
                        double lat)
This function does nothing in the case of the French Lambert Projection. The center of the projection is specified by its mode.

Overrides:
setLLCenter in class IlvLambertConformalConicProjection
Parameters:
lon - ignored.
lat - ignored.
See Also:
setMode(int)

setScaleFactor

public void setScaleFactor(double k0)
This function does nothing in the case of the French Lambert Projection. The scale factor of the French Lambert Projection is specified by its mode.

Overrides:
setScaleFactor in class IlvLambertConformalConicProjection
Parameters:
k0 - ignored

setSecantLatitudes

public void setSecantLatitudes(IlvCoordinate secant)
This function does nothing in the case of a French Lambert Projection. The secant latitude of a french lambert projection are dependent on the Lambert mode.

Overrides:
setSecantLatitudes in class IlvLambertConformalConicProjection
Parameters:
secant - ignored

write

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

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


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