Prototyp und Beschreibung der Funktion coordcalcextraind() (Funktion der freischaltpflichtigen Gruppe "Koordinatentransformationen") |
coordcalcextraind() Berechnung von Extra-Parametern unabhängig von Koordinatentransformationen. Meridiankonvergenz, Zentralmeridian und geographische Punktkoordinate. Prototyp der DLL-Funktion in C++ Syntax (Kleinschreibung beachten!): extern "C" __declspec(dllimport) unsigned long __stdcall coordcalcextraind( double nCoordX, double nCoordY, const char *pszCoord, double nEllHgt, unsigned short nCoordSys, unsigned short nRefSys, unsigned short nUnit, unsigned short nStrip, unsigned long lNoStrip, unsigned long l3D, double *nGeoLon, double *nGeoLat, double *nOrigin, double *nConvergence); Prototyp der DLL-Funktion in Visual Objects Syntax: _DLL function coordcalcextraind(; nCoordX as real8,; // 8 Byte nCoordY as real8,; // 8 Byte pszCoord as psz,; // 4 Byte, char* nEllHgt as real8,; // 8 Byte nCoordSys as word,; // 2 Byte nRefSys as word,; // 2 Byte nUnit as word,; // 2 Byte nStrip as word,; // 2 Byte lNoStrip as logic,; // 4 Byte l3D as logic,; // 4 Byte nGeoLon ref real8,; // 4 Byte nGeoLat ref real8,; // 4 Byte nOrigin ref real8,; // 4 Byte nConvergence ref real8); // 4 Byte as logic pascal:geodll32.coordcalcextraind // 4 Byte Die Funktion berechnet für eine Koordinate in einem beliebigen Koordinatenbezugssystemen (CRS) die Extra-Parameter Meridiankonvergenz, Zentralmeridian und Geographische Punktkoordinate aus. Die Verwendung der Funktion setcalcextra() ist dabei im Gegensatz zur Funktion coordcalcextra() nicht erforderlich. Folgende Extra-Parameter stehen zur Verfügung: Längengrad der geographischen Punktkoordinate. Breitengrad der geographischen Punktkoordinate. Längengrad des Zentralmeridians. Meridiankonvergenz an der Punktkoordinate. Koordinaten in beliebigen Koordinatenbezugssystemen (CRS) können immer in geographische Punktkoordinaten umgerechnet werden. 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. Beachten Sie, dass die Berechnung nicht bei jeder Koordinatentransformation möglich ist. In diesem Fallen 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 die Parameter haben den Wert -9999. Zur Übergabe der numerischen Koordinate nCoordX / nCoordY oder der alphanumerischen Koordinate pszCoord sowie der CRS-Einstellungen nCoordSys, nRefSys, nUnit, nStrip und lNoStrip lesen Sie bitte die ausführlichen Erläuterungen in der Beschreibung der Funktion coordtransex(). Die Parameter werden folgendermaßen zurückgegeben: nCoordX Längen-, Ost- oder X-Komponente der numerischen Koordinate. Bei der Bearbeitung einer alphanumerischen Koordinate ist dieser Parameter ohne Bedeutung. Das Eingabeformat der Koordinate (Notation) ist in der Liste "Standardwerte der Koordinatensysteme" beschrieben. nCoordY Breiten-, Nord- oder Y-Komponente der numerischen Koordinate. Bei der Bearbeitung einer alphanumerischen Koordinate ist dieser Parameter ohne Bedeutung. Das Eingabeformat der Koordinate (Notation) ist in der Liste "Standardwerte der Koordinatensysteme" beschrieben. pszCoord Alphanumerische Koordinate. Bei der Bearbeitung numerischer Koordinaten ist dieser Parameter ohne Bedeutung. In diesem Fall kann ein NULL-Zeiger für pszCoord eingetragen werden. Das Eingabeformat der Koordinate (Notation) ist in der Liste "Standardwerte der Koordinatensysteme" beschrieben. nEllHgt Ellipsoidische Höhe der Quellkoordinate oder Z-Komponente bei kartesischen Koordinaten. Bei 3D-Transformationen wird bei unterschiedlichen Quell- und Zielbezugssystemen (nRefSysQ, nRefSysZ) die ellipsoidische Höhe der Quellkoordinate berücksichtigt. nCoordSys Koordinatensystem der Koordinate. (siehe Liste "Koordinatenbezugssysteme"). nRefSys Geodätisches Bezugssystem der Koordinate. (siehe Liste "Koordinatenbezugssysteme"). nUnit Maßeinheit der Koordinate. 0 Die Koordinatenkomponenten sind in der in GeoDLL voreingestellten Standard-Maßeinheit des Koordinatensystems angegeben. Falls erforderlich werden sie für die interne Verwendung in Meter umgerechnet. (siehe Liste "Standardwerte" [Quelltext: settings_d.txt]). › 0 Die Koordinatenkomponenten sind in einer bestimmten Maßeinheit angegeben und werden für die interne Verwendung in Meter umgerechnet. (siehe Liste "Koordinatenbezugssysteme alphabetisch" [Quelltext: sysalpha_d.txt]). 1000 Keine Auswirkung. Die Koordinatenkomponenten werden nicht in eine andere Maßeinheit umgerechnet. nStrip Zu verwendender Meridianstreifen im Koordinatensystem. Dieser Parameter hat nur eine Wirkung, wenn in nCoordSys ein "Transversales Mercator Streifensystem" eingetragen ist. 0 Verwendung der führenden Ziffern des Ostwerts zur Berechnung des natürlichen Meridianstreifens. › 0 Verwendung des Wertes in nStrip zur Berechnung des natürlichen Meridianstreifens. lNoStrip Einstellung für die Unterdrückung der Meridianstreifennummer im Ostwert. Dieser Parameter hat nur eine Wirkung, wenn in nCoordSys ein "Transversales Mercator Streifensystem" eingetragen ist. TRUE Ostwerte müssen ohne führenden Meridianstreifennummern übergeben werden. FALSE Ostwerte müssen mit führenden Meridianstreifennummern übergeben werden. l3D Einstellung für Ausführung der Koordinatentransformation im 3D-Modus. Wenn der 3D-Modus eingeschaltet ist, muss in nEllHgt ein Wert übergeben werden. TRUE Ausführung als 3D-Koordinatentransformation. FALSE Ausführung als 2D-Koordinatentransformation. nGeoLon Aus der Koordinate errechneter geographischer Längengrad in (ref) dezimaler Notation (geogr. Punktkoordinate). Oder -9999, falls der Wert nicht berechnet werden konnte. nGeoLat Aus der Koordinate errechneter geographischer Breitengrad in (ref) dezimaler Notation (geogr. Punktkoordinate). Oder -9999, falls der Wert nicht berechnet werden konnte. nOrigin Längengrad des Zentralmeridians. (ref) Oder -9999, falls der Wert nicht berechnet werden konnte. nConvergence Meridiankonvergenz an der geographischen Punktkoordinate. (ref) Oder -9999, falls der Wert nicht berechnet werden konnte. returnWert Im Fehlerfall gibt die Funktion FALSE zurück, sonst TRUE. Folgende Themen werden in den Beschreibungen der Funktionen coordtransex() und coordtrans3dex() ausführlich erläutert: Gültigkeitsbereiche Notationen Standard-Bezugssysteme 3D-Koordinatentransformation 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. |