Prototyp und Beschreibung der Funktion getelevation33() (Funktion der freischaltpflichtigen Gruppe "Höhenberechnungen") |
getelevation33() Geländehöhe aus dem 3 / 30 Sek. CGIAR / GLOBE Höhenmodell an einem Punkt. Prototyp der DLL-Funktion in C++ Syntax (Kleinschreibung beachten!): extern "C" __declspec(dllimport) unsigned long __stdcall getelevation33( double nGeoLon, double nGeoLat, unsigned long lInterpol, short *nElevation); Prototyp der DLL-Funktion in Visual Objects Syntax: _DLL function getelevation33(; nGeoLon as real8,; // 8 Byte nGeoLat as real8,; // 8 Byte lInterpol as logic,; // 4 Byte nElevation ref short); // 4 Byte as logic pascal:geodll32.getelevation33 // 4 Byte Die Funktion versucht die Geländehöhe eines durch geographische Koordinaten definierten Punktes aus dem 3 Sekunden Höhenmodell (90 m Raster) CGIAR zu ermitteln. Wenn der Versuch z. B. wegen fehlender Daten misslingt, wird die Geländehöhe aus dem 30 Sekunden Höhenmodell (1 km Raster) GLOBE ermittelt. Das 30 Sekunden Höhenmodell der NASA Shuttle Radar Topographic Mission "Global Land One-Kilometer Base Elevation (GLOBE)" im Datenset G.O.O.D. ist für private und kommerzielle Zwecke frei verfügbar. Das 3 Sekunden Höhenmodell "SRTM 90m Digital Elevation Data" ist für nicht kommerzielle Zwecke frei verfügbar und für die kommerzielle Nutzung für wenig Geld vom CGIAR zu erwerben. Mit einer Lizenz für die GeoDLL-Funktionsgruppe "Höhenberechnungen" haben Sie nur das Recht erworben, die Funktionen zur Berechnung der Höhendaten zu verwenden. Die Höhendaten selbst unterliegen dem Urheberrechten des "GLOBE Task Team" und des "CGIAR Consortium for Spatial Information". Diese Organisationen haben die Originaldaten der NASA überarbeitet und ergänzt. Bitte beachten Sie deren Nutzungsbedingungen und Urheberrechte. Ausführliche Beschreibungen der Höhenmodelle und Informationen zum kostenlosen Herunterladen der Höhendaten vom Internet finden Sie in der Dokumentation folgender Funktionen: CGIAR: Funktion getelevation03() GLOBE: Funktion getelevation30() Unterschiede zwischen den Höhenmodellen GLOBE und CGIAR: Höhenmodell: GLOBE CGIAR GeoDLL-Funktion getelevation30() getelevation03() Bereich Länge [Grad] -180 bis 180 -180 bis 180 Bereich Breite [Grad] -90 bis 90 -60 bis 60 Auflösung [sec] 30 x 30 3 x 3 Auflösung [m] 925 x ‹= 925 90 x ‹= 90 Horizontale Referenz WGS84 WGS84 Vertikale Referenz Mean Sea Level Mean Sea Level Horizontale Genauigkeit [m] ‹ 6 ‹ 6 Vertikale Genauigkeit [m] ‹ 10 ‹ 6 Anzahl Dateien 16 1728 Dateigröße [MB] 101 bis 126 70 Dateibereich [Grad] 90 x 40/50 5 x 5 Die Parameter werden folgendermaßen übergeben bzw. zurückgegeben: nGeoLon Geographische Länge des zu höhenreferenzierenden Punktes in [Grad]-Notation vggg.ggg und im Bezugssystem WGS84. nGeoLat Geographische Breite des zu höhenreferenzierenden Punktes in [Grad]-Notation vgg.ggg und im Bezugssystem WGS84. lInterPol TRUE: Die Höhe wird aus den 4 Eckpunkten des die Koordinate enthaltenden Rasterfeldes interpoliert. Die Berechnung ist genau, aber relativ langsam. FALSE: Die Höhe entspricht dem Wert des die Koordinate enthaltenden Rasterfeldes. Die Berechnung ist weniger genau, aber schnell. nElevation Geländehöhe über dem Meeresspiegel in Meter als Ergebnis der (ref) Berechnung. Bei Wasserbedeckung wird der Wert 0 zurückgegeben. Im Fehlerfall liefert die Funktion den Wert 9999. returnWert Im Fehlerfall gibt die Funktion FALSE zurück, sonst TRUE. Für geographische Koordinaten in [Grad]-Notation gilt: v Optionales Vorzeichen für Längen westlich von Greenwich und Breiten südlich des Äquators. g Grad und dezimaler Bruchteil eines Grades. Freischaltung: Die Funktion ist Bestandteil der freischaltpflichtigen Funktionsgruppe "Höhenberechnungen". Sie wird zusammen mit den anderen Funktionen der Gruppe durch die Eingabe der bei der Vertriebsfirma erworbenen Freischaltparameter per Aufruf der Funktion setunlockcode() zur uneingeschränkten Nutzung frei geschaltet. Ohne die Freischaltung sind nur wenige Funktionsaufrufe zu Testzwecken (Sharewareprinzip) möglich. |