This class defines the Geographic projection. More...
#include <ilviews/maps/projection/geogproj.h>
Public Member Functions | |
| IlvGeographicProjection () | |
Initializes a new instance of IlvGeographicProjection. | |
| virtual IlvMapsError | setEllipsoid (const IlvEllipsoid &) |
| Sets the ellipsoid used for the projection. More... | |
Public Member Functions inherited from IlvProjection | |
| virtual IlvProjection * | copy () const =0 |
| Returns a copy of the projection. More... | |
| virtual IlvMapsError | forward (const IlvCoordinate &llIn, IlvCoordinate &xyOut) const |
| Converts a latitude and a longitude to Cartesian coordinates (x, y). More... | |
| virtual IlvMapsError | forward (IlvCoordinate &coords) const |
| Projects a latitude and a longitude pair to Cartesian coordinates. More... | |
| IlDouble | getCentralMeridian () const |
| Returns the central meridian of the projection. More... | |
| IlDouble | getCentralParallel () const |
| Returns the central parallel of the projection. More... | |
| virtual IlvProjectionClassInfo * | getClassInfo () const |
| Returns the class information for the projection. More... | |
| const IlvHorizontalDatum * | getDatum (void) const |
| Returns the horizontal datum used for the projection. More... | |
| const IlvEllipsoid * | getEllipsoid () const |
| Returns the ellipsoid used for the projection. More... | |
| IlvMapsError | getError () const |
| Returns the status of the projection. More... | |
| IlDouble | getFalseEasting () const |
| Returns the false easting of the projection. More... | |
| IlDouble | getFalseNorthing () const |
| Returns the false northing of the projection. More... | |
| IlvProjectionInterface * | getInterface () |
| Returns the interface of the projection. More... | |
| IlvCoordinate | getLLCenter (void) const |
| Returns the central meridian and the central parallel associated with the projection (0-0 by default). More... | |
| IlvProjectionGeometricProperty | getProperty () const |
| Returns the geometric property of the projection. More... | |
| const IlvUnitConverter * | getUnitConverter () const |
| Returns the unit converter. More... | |
| IlvCoordinate | getXYOffset () const |
| Returns the false easting and the false northing of the projection. More... | |
| virtual IlvMapsError | inverse (const IlvCoordinate &xyIn, IlvCoordinate &llOut) const |
| Converts the specified coordinate to a latitude and a longitude. More... | |
| virtual IlvMapsError | inverse (IlvCoordinate &coords) const |
| Invserse-projects Cartesian coordinates to a latitude and a longitude. More... | |
| IlBoolean | isBad () const |
| Checks for an inconsistent state of the projection. More... | |
| IlBoolean | isEllipsoidEnabled () const |
| Indicates if non spherical ellipsoids can be used for the projection. More... | |
| IlBoolean | isGeocentric () const |
| Checks if the projection uses geocentric latitudes. More... | |
| IlBoolean | isInverseEnabled () const |
| Indicates if the inverse function is supported by the projection. More... | |
| IlBoolean | isShared () const |
| Indicates that the projection is shared. More... | |
| IlBoolean | isUsingLongitudeReduction () const |
Returns IlTrue if the projection uses range reduction for longitudes. More... | |
| void | lock () |
| Locks the projection. | |
| virtual std::ostream & | printPROJ4Descriptor (std::ostream &ostr, IlvMapsError *status=0) const |
This virtual member function converts the projection to a string in the PROJ4 format. More... | |
| void | save (IlvOutputFile &outputFile) const |
Saves an instance of a subclass of IlvProjection to the specified output file. More... | |
| void | setCentralMeridian (IlDouble lon) |
| Sets the central meridian of the projection. More... | |
| void | setCentralParallel (IlDouble lat) |
| Sets the central parallel of the projection. More... | |
| virtual IlvMapsError | setDatum (const IlvHorizontalDatum *datum) |
| Sets the datum used for the projection. More... | |
| void | setFalseEasting (IlDouble falseEasting) |
| Sets the false easting of the projection. More... | |
| void | setFalseNorthing (IlDouble falseNorthing) |
| Sets the false northing of the projection. More... | |
| void | setGeocentric (IlBoolean geoc) |
| Specifies whether the projection uses geocentric or geodetic latitudes. More... | |
| virtual void | setLLCenter (IlDouble lon, IlDouble lat) |
| Specifies the central meridian and the central parallel (in radian) associated with the projection. More... | |
| void | setShared () |
| Specifies that the projection will be shared. More... | |
| void | setUnitConverter (const IlvUnitConverter &converter) |
| Sets the unit converter of the projection. More... | |
| void | setUsingLongitudeReduction (IlBoolean use) |
| Specifies whether the projection uses longitude reduction. More... | |
| virtual void | setXYOffset (IlDouble x0, IlDouble y0) |
| Specifies the false easting and the false northing. More... | |
| void | unLock () |
| Unlocks the object. More... | |
| virtual void | write (IlvOutputFile &outputFile) const |
| Saves the parameters of a projection to the specified output file. More... | |
Protected Member Functions | |
| virtual IlvMapsError | sForward (IlvCoordinate &) const |
| Must be redefined in subclasses to implement the projection for a sphere. More... | |
| virtual IlvMapsError | sInverse (IlvCoordinate &) const |
| Must be redefined in subclasses to implement the inverse projection for a sphere. More... | |
Protected Member Functions inherited from IlvProjection | |
| IlvProjection (IlBoolean ellipsoidEnabled, IlBoolean inverseEnabled, IlvProjectionGeometricProperty property) | |
Initializes a new IlvProjection instance. More... | |
| void | addError (IlvMapsError error) |
| Used by the constructors of subclasses if an error occurs during an object initialization. More... | |
| virtual IlvMapsError | eForward (IlvCoordinate &ll) const |
| Must be redefined in subclasses to implement the projection for a non spherical ellipsoid. More... | |
| virtual IlvMapsError | eInverse (IlvCoordinate &xy) const |
| Implements the inverse projection for a non spherical ellipsoid. More... | |
| virtual bool | isUsingProj4 () const |
| Are we using proj4 implementation. More... | |
| void | setError (IlvMapsError error) |
| Sets the status of this projection. More... | |
Additional Inherited Members | |
Static Public Member Functions inherited from IlvProjection | |
| static IlvProjectionClassInfo * | ClassInfo () |
| Returns the class information of the class. More... | |
| static IlvClassInfo ** | ClassInfoRef () |
| Returns the address of the class information of the class. More... | |
| static IlvMapsError | InputError () |
| Indicates that the coordinates passed to the forward function are not in a valid range for radian angles. | |
| static IlvMapsError | InvalidEllipsoidError () |
| Indicates that you attempt to set a non spherical ellipsoid to a projection that does not support non spherical ellipsoids. | |
| static IlvProjection * | Load (IlvInputFile &inputFile) |
| Loads a projection from the specified file. More... | |
| static IlvProjection * | PROJ4ToIlvProjection (const char *proj4Descriptor, IlvMapsError *status=0) |
Creates the projection from a PROJ4 descriptor. More... | |
| static IlvMapsError | ToleranceConditionError () |
| Indicates that an internal projection computation failed. More... | |
| static IlvMapsError | UnsupportedFeatureError () |
| Indicates that an unsupported projection feature is requested, like inverse projection for a projection that does not support inverse projection. | |
This class defines the Geographic projection.
Library: ilvmaps
It outputs the latitude and longitude in degrees. The unit converter of the projection is initialized by the projection to convert degrees into meters at the equator.

Geographic Projection
|
virtual |
Sets the ellipsoid used for the projection.
This virtual member function sets the ellipsoid used for the projection. Most of the projections are initialized with a spherical ellipsoid with a radius of 6,370,997 meters.
This function returns IlvMaps::NoError() if the operation is successful or an error status if you specify a non spherical ellipsoid and your type does not support non spherical.
| ellipsoid | The ellipsoid used for the projection. |
IlvMapsError if the ellipsoid does not match the projection. Reimplemented from IlvProjection.
|
protectedvirtual |
Must be redefined in subclasses to implement the projection for a sphere.
| ll | Contains the longitude and latitude coordinates in radian. |
Implements IlvProjection.
|
protectedvirtual |
Must be redefined in subclasses to implement the inverse projection for a sphere.
The default implementation returns IlvProjection::UnsupportedFeatureError().
| xy | Contains the Cartesian coordinates to inverse. |
Reimplemented from IlvProjection.