Prototype and description of the function getelevation33()

(Function of the unlock requiring group "Elevation calculations")


Elevation from the 3 / 30 sec. elevation model CGIAR / GLOBE for a point.

Prototype of the DLL function in C++ syntax (attend lower case!):
extern "C" __declspec(dllimport) unsigned long __stdcall getelevation33(
     double nGeoLon,
     double nGeoLat,
     unsigned long lInterpol,
     short *nElevation);

Prototype of the DLL function in Visual Objects syntax:
_DLL function getelevation33(;
     nGeoLon AS REAL8,;                     // 8 Byte
     nGeoLat AS REAL8,;                     // 8 Byte
     lInterpol AS LOGIC,;                   // 4 Byte
     nElevation REF SHORTINT);              // 4 Byte
as logic pascal:geodll32.getelevation33     // 4 Byte

The function tries to determine the ground level elevation at a point
defined by geographical coordinates from the 3 seconds elevation model
(90 m raster) CGIAR. If it fails, e.g. due to missing data, the ground
level elevation is determined from the 30 seconds elevation model
(1 km raster) GLOBE.

The 30 seconds elevation model of the NASA Shuttle Radar Topographic Mission
"Global Land One-Kilometer Base Elevation (GLOBE)" as data set G.O.O.D. is
free available for private and commercial purposes. The 3 seconds elevation
model "SRTM 90m Digital Elevation Data" is free available for non commercial
purposes and can be acquired for commercial use economically priced from
the CGIAR. With a license for the GeoDLL function group "Elevation
calculations" you only acquired the right to use the functions to compute
the elevation data. The elevation data are subject to the copyright of the
"GLOBE Task Team" and the "CGIAR Consortium for Spatial Information". This
organizations revised and supplemented the original data of the NASA. Please
consider their terms of use and their copyright conditions.

Detailed descriptions of the elevation models and information for free
downloading of the elevation data from the Internet you find in the
documentation of the following functions:
CGIAR:  Function getelevation03()
GLOBE:  Function getelevation30()

Differences between the elevation models GLOBE and CGIAR:
Elevation model:             GLOBE             CGIAR
GeoDLL function              getelevation30()  getelevation03()
Range longitude [degrees]    -180 to 180       -180 to 180
Range latitude [degrees]     -90 to 90         -60 to 60
Resolution [sec]             30 x 30           3 x 3
Resolution [m]               925 x ‹= 925      90 x ‹= 90
Horizontal reference         WGS84             WGS84
Vertical reference           Mean Sea Level    Mean Sea Level
Horizontal deviation [m]     ‹ 6               ‹ 6
Vertical deviation [m]       ‹ 10              ‹ 7
Number of files              16                1728
File size [MB]               101/126           70
Range per file [degrees]     90 x 40/50        5 x 5

The parameters are passed and/or returned as follows:
nGeoLon     Geographic longitude of the point to get the ground elevation
            from in [degrees] notation vggg.ggg in the Reference System

nGeoLat     Geographic latitude of the point to get the ground elevation
            from in [degrees] notation vgg.ggg in the Reference System

lInterPol   TRUE: The ground elevation is interpolated from the 4 corner
            points of the raster field containing the coordinate. The
            computation is exact, but relative slow.
            FALSE: The ground elevation corresponds to the value of the
            raster field containing the coordinate. The computation is less
            exact, but relative fast.

nElevation  Ground elevation over the Mean Sea Level in meters as result of
(ref)       the computation. In the presence of a water cover the value 0
            is returned. If an error occurs the function returns the value

returnVal   In case of an error the function returns FALSE, otherwise TRUE.

For geographic coordinates in [degrees] notation applies:
v           Optional sign for longitudes west of Greenwich and latitudes
            south of the equator.
g           degrees and decimal fraction of a degree.

This function is a component of the unlock requiring function group
"Elevation calculations". It is unlocked for unrestricted use together with
the other functions of the group by passing the unlock parameters, acquired
from the software distribution company, trough the function setunlockcode().
Without unlocking only a few function calls for test purposes (shareware
principle) are possible.