public static class IlvRasterASRPReader.ASRPProjection extends IlvProjection
IlvARCProjectionFactory.IlvAbstractARCProjection
to ensure that in the
non-polar regions longitude coordinates smaller than the longitude
origin will have a negative projected value. This is mandatory because the
ASRP format does not plan to have coordinates outside of the bounds of the
map.CONFORMAL, EQUAL_AREA, NONE
Constructor and Description |
---|
ASRPProjection(IlvAbstractARCProjection projection)
Constructor initializing the internal projection parameter used for projection
computation.
|
ASRPProjection(IlvInputStream stream)
Stream constructor.
|
Modifier and Type | Method and Description |
---|---|
IlvProjection |
copy()
Copies the object.
|
void |
forward(IlvCoordinate ll)
Converts the parameter
IlvCoordinate representing a latitude and a
longitude to Cartesian coordinates (x,y). |
void |
inverse(IlvCoordinate ll)
Converts the parameter
IlvCoordinate representing Cartesian
coordinates to a latitude and a longitude. |
protected void |
sForward(IlvCoordinate ll)
Implements the projection for a sphere.
|
String |
toString()
Returns a string representation of the object.
|
void |
write(IlvOutputStream stream)
Writes the object to an
IlvOutputStream . |
addDescription, adjustLongitude, eForward, eInverse, equals, forward, getCentralMeridian, getCentralParallel, getDatum, getEllipsoid, getFalseEasting, getFalseNorthing, GetProjection, getProperty, getUnit, getXYOffset, inverse, inverse, isEllipsoidEnabled, isGeocentric, isInverseEnabled, isUsingLongitudeReduction, setCentralMeridian, setCentralParallel, setDatum, setEllipsoid, setFalseEasting, setFalseNorthing, setGeocentric, setLLCenter, setUnit, setUsingLongitudeReduction, setXYOffset, sInverse
public ASRPProjection(IlvAbstractARCProjection projection)
projection
- The internal projection to use.public ASRPProjection(IlvInputStream stream) throws IlvReadFileException
stream
- IlvReadFileException
public IlvProjection copy()
copy
in class IlvProjection
public <CLASSNAME>(<CLASSNAME> source)
.IlvProjection.copy()
public void forward(IlvCoordinate ll)
IlvCoordinate
representing a latitude and a
longitude to Cartesian coordinates (x,y). The longitude must be in
the range [-PI ; PI]. The latitude must be in the range [-PI/2;
PI/2]. If required, the function converts the latitude to a
geocentric latitude. Then it centers the longitude and adjusts it.
The forward projection is computed either by the sForward
or the
eForward
methods depending on whether the ellipsoid is a sphere
or not. The implementation of this method varies depending on
the projection. Its result is then converted to the appropriate
measurement unit.forward
in class IlvProjection
ll
- The longitude/latitude coordinates in radians
(x = longitude, y = latitude).IlvProjection.forward(ilog.views.maps.IlvCoordinate)
public void inverse(IlvCoordinate ll)
IlvCoordinate
representing Cartesian
coordinates to a latitude and a longitude. The x and y values are
expressed in the measurement unit set for the projection
(generally meters) unless another unit converter was set using the
setUnit
method. The longitude/latitude coordinates
are in radians.inverse
in class IlvProjection
ll
- The Cartesian coordinates in the measurement unit of the
projection.IlvProjection.inverse(ilog.views.maps.IlvCoordinate)
protected void sForward(IlvCoordinate ll) throws IlvToleranceConditionException
This protected method should be implemented by the classes that
extend the class IlvProjection
. It is not called directly by the
user, but by the IlvProjection.forward
method if the ellipsoid
associated with the projection is a sphere.
The method should convert the ll
parameter to the projected
coordinates.
The various parameters associated with a projection, such as
the measurement unit, the false easting or the central meridian,
must not be taken into account in this method because they are
processed by the calling method IlvProjection.forward
.
In this method, the sphere is assumed to be of radius 1.
sForward
in class IlvProjection
ll
- Longitude/latitude coordinates in radians.IlvToleranceConditionException
- If the values are not within the
tolerated limits.IlvProjection.sForward(ilog.views.maps.IlvCoordinate)
public void write(IlvOutputStream stream) throws IOException
IlvOutputStream
.write
in interface IlvPersistentObject
write
in class IlvProjection
stream
- The output stream.IOException
- thrown when an exception occurs during
the write operation for this object.IlvProjection.write(ilog.views.io.IlvOutputStream)
public String toString()
toString
in class Object
Object.toString()
© Copyright 2024 Rogue Wave Software, Inc., a Perforce company.. All Rights Reserved.