Forward and Inverse Functions

Projections are implemented using the forward and inverse functions:

  • The forward function converts the longitude and the latitude to Cartesian coordinates.

  • The inverse function converts Cartesian coordinates to latitude and longitude.

These functions return the NoError() code if they succeed. Otherwise, they return an appropriate error code specifying the reason for failure.

IlvProjection::UnsupportedFeatureError() is returned when a non-implemented feature is called. It originates from the following actions:

  • You try to perform a forward projection on a nonspherical ellipsoid when the projection does not support nonspherical ellipsoids: IlvEquidistantCylindricalProjection, for example.

  • You try to inverse a projection that cannot be reversed.

To find out if these features are implemented in the projection you are using, call the functions IlvProjection::isEllipsoidEnabled and IlvProjection::isInverseEnabled.

Other error codes are returned when an error occurs during computation, for example, if the function is used for a coordinate where the projection is not defined. Error codes can be interpreted using an IlvMaps error management function, such as GetErrorMessageId.