Prototyp und Beschreibung der Funktion distancesphere()

(Funktion der freischaltpflichtigen Gruppe "Entfernungsberechnungen")

 

distancesphere()
Entfernung auf der Erdkugel in Metern zwischen zwei geographischen
Koordinaten.

Prototyp der DLL-Funktion in C++ Syntax (Kleinschreibung beachten!):
extern "C" __declspec(dllimport) unsigned long __stdcall distancesphere(
     double nGeoLon1,
     double nGeoLat1,
     double nGeoLon2,
     double nGeoLat2,
     double *nDistance);

Prototyp der DLL-Funktion in Visual Objects Syntax:
_DLL function distancesphere(;
     nGeoLon1 as real8,;                   // 8 Byte
     nGeoLat1 as real8,;                   // 8 Byte
     nGeoLon2 as real8,;                   // 8 Byte
     nGeoLat2 as real8,;                   // 8 Byte
     nDistance ref real8);                 // 2 Byte
as logic pascal:geodll32.distancesphere    // 4 Byte


Die Funktion rechnet die Entfernung auf der Erdoberfläche zwischen zwei
geographischen Koordinaten aus und gibt sie als Meterangabe zurück.

Für die Erdform wird eine Kugel mit dem Radius 6371,221 km zugrunde gelegt.
Da die Funktion nicht die ellipsoidförmige Gestalt der Erde berücksichtigt,
ergibt sich zwangsläufig eine minimale Abweichung von der genauen Entfernung.
Genauere Ergebnisse werden bei viel geringerer Ausführungsgeschwindigkeit mit
der Funktion distancegeo() erreicht.

Der Funktion müssen die geographischen Koordinaten nGeoLon1 (Länge des ersten
Koordinatenpunktes) und nGeoLat1 (Breite des ersten Koordinatenpunktes) sowie
die geographischen Koordinaten nGeoLon2 (Länge des zweiten Koordinatenpunktes)
und nGeoLat2 (Breite des zweiten Koordinatenpunktes) in [Grad]-Notation
[ggg.nnn] übergeben werden.

Das Ergebnis der Streckenberechnung wird in Metern im Parameter nDistance von
der Funktion zurückgegeben.


Die Parameter werden folgendermaßen übergeben bzw. zurückgegeben:
nGeoLon1    Geographische Länge des ersten Punktes in [Grad]-Notation vggg.ggg

nGeoLat1    Geographische Breite des ersten Punktes in [Grad]-Notation vgg.ggg

nGeoLon2    Geographische Länge des zweiten Punktes [Grad]-Notation vggg.ggg

nGeoLat2    Geographische Breite des zweiten Punktes in [Grad]-Notation vgg.ggg

nDistance   Distanz zwischen den Punkten in Meter als Ergebnis der Berechnung
(ref)

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
"Entfernungsberechnungen". 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.