Prototyp und Beschreibung der Funktion coordcalcextra() (Funktion der freischaltpflichtigen Gruppe "Koordinatentransformationen") |
coordcalcextra() Berechnung von Extra-Parametern während Koordinatentransformationen mit den Funktionen coordtrans*(). Meridiankonvergenz, Zentralmeridian und geographische Punktkoordinate. Prototyp der DLL-Funktion in C++ Syntax (Kleinschreibung beachten!): extern "C" __declspec(dllimport) unsigned long __stdcall coordcalcextra( double *nGeoLonQ, double *nGeoLatQ, double *nOriginQ, double *nConvergenceQ, double *nGeoLonZ, double *nGeoLatZ, double *nOriginZ, double *nConvergenceZ); Prototyp der DLL-Funktion in Visual Objects Syntax: _DLL function coordcalcextra(; nGeoLonQ ref real8,; // 4 Byte nGeoLatQ ref real8,; // 4 Byte nOriginQ ref real8,; // 4 Byte nConvergenceQ ref real8,; // 4 Byte nGeoLonZ ref real8,; // 4 Byte nGeoLatZ ref real8,; // 4 Byte nOriginZ ref real8,; // 4 Byte nConvergenceZ ref real8); // 4 Byte as logic pascal:geodll32.coordcalcextra // 4 Byte Die Funktion berechnet bei jeder Koordinatentransformation, die mit Funktionen des Typs coordtrans*() durchgeführt wird, zusätzliche (extra) Parameter. Voraussetzung dafür ist das vorherige Einschalten der Berechnungen mit der Funktion setcalcextra(). Jeweils nach einer Koordinatentransformation können die Extra-Parameter abgefragt werden. Die bei einer Koordinatentransformation berechneten Extra-Parameter bleiben solange erhalten, bis die Funktion setcalcextra() das nächste Mal mit dem auf TRUE gesetzten Parameter aufgerufen wird. Folgende Extra-Parameter stehen zur Verfügung: Längengrad der geographischen Punktkoordinate im Quellsystem. Breitengrad der geographischen Punktkoordinate im Quellsystem. Längengrad des Zentralmeridians im Quellsystem. Meridiankonvergenz an der Punktkoordinate im Quellsystem. Längengrad der geographischen Punktkoordinate im Zielsystem. Breitengrad der geographischen Punktkoordinate im Zielsystem. Längengrad des Zentralmeridians im Zielsystem. Meridiankonvergenz an der Punktkoordinate im Zielsystem. Koordinaten in beliebigen Koordinatenbezugssystemen (CRS) können immer in Geographische Punktkoordinaten umgerechnet werden. Diese stehen jeweils für das Quellsystem und für das Zielsystem zur Verfügung. Der Zentralmeridian ist der nach Norden ausgerichtete zentrale Meridian des Koordinatensystems. Die Meridiankonvergenz wird oft auch als Kartenkonvergenz oder Gitterkonvergenz bezeichnet. Die Meridiankonvergenz ist der Winkel zwischen der Nordrichtung des Koordinatengitters an der geographischen Punktkoordinate und der geographischen Nordrichtung. Sie kann z.B. für alle Mercator- und Lambert-Projektionen berechnet werden. Die Konvergenz steht jeweils für das Quellsystem und für das Zielsystem zur Verfügung. Beachten Sie, dass die Berechnung mancher Extra-Parameter nicht bei jeder Koordinatentransformation möglich ist. In diesen Fällen werden für die entsprechenden Parameter die Werte -9999 zurückgegeben. Die Meridiankonvergenz und der Zentralmeridian werden zur Zeit von folgenden Systemen berechnet: Alle Transversal Mercator Systeme Alle normalen Mercator Systeme Alle Lambert Conformal Conic Systeme Wenn keine Extra-Parameter ermittelt werden konnten, wird die Funktion mit dem Rückgabewert FALSE beendet und alle Extra-Parameter haben den Wert -9999. Diese Funktion kann eventuell in späteren GeoDLL-Versionen noch erweitert werden. Bitte achten Sie nach der Installation eines Updates auf die korrekte Parameterübergabe! Die Parameter werden folgendermaßen zurückgegeben: nGeoLonQ Aus der Quellkoordinate errechneter geographischer (ref) Längengrad in dezimaler Notation (geogr. Punktkoordinate). Oder -9999, falls der Wert nicht berechnet werden konnte. nGeoLatQ Aus der Quellkoordinate errechneter geographischer (ref) Breitengrad in dezimaler Notation (geogr. Punktkoordinate). Oder -9999, falls der Wert nicht berechnet werden konnte. nOriginQ Längengrad des Zentralmeridians im Quellsystem. (ref) Oder -9999, falls der Wert nicht berechnet werden konnte. nConvergenceQ Meridiankonvergenz am geographischen Punkt im Quellsystem. (ref) Oder -9999, falls der Wert nicht berechnet werden konnte. nGeoLonZ Aus der Zielkoordinate errechneter geographischer (ref) Längengrad in dezimaler Notation (geogr. Punktkoordinate). Oder -9999, falls der Wert nicht berechnet werden konnte. nGeoLatZ Aus der Zielkoordinate errechneter geographischer (ref) Breitengrad in dezimaler Notation (geogr. Punktkoordinate). Oder -9999, falls der Wert nicht berechnet werden konnte. nOriginZ Längengrad des Zentralmeridians im Zielsystem. (ref) Oder -9999, falls der Wert nicht berechnet werden konnte. nConvergenceZ Meridiankonvergenz am geographischen Punkt im Zielsystem. (ref) Oder -9999, falls der Wert nicht berechnet werden konnte. returnWert Im Fehlerfall gibt die Funktion FALSE zurück, sonst TRUE. Freischaltung Die Funktion ist Bestandteil der freischaltpflichtigen Funktionsgruppe "Koordinatentransformationen". 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. |