Inhalt
MAGNET Field - Koordinatentransformation mit NTv2-Dateien
Einbindung einer NTv2-Datei in MAGNET Field
Ab Version 8 können NTv2-Dateien im *.gsb-Format als eigenes Datum eingebunden werden. (26.08.2023)
Als "Methode" wählen Sie den neu hinzugekommenen Eintrag "NTv2" aus und nach
wählen Sie die *.gsb-Datei aus. Das Ellipsoid wird automatisch aus der Datei ausgelesen.Vor Version 8 wurde die Einbindung einer NTv2-Datei individuell realisiert über customdatums.dll. Bitte kontaktieren Sie uns (nur für Kunden).
Dateistruktur - für Insider
Eine Überführung von einem geodätischen Bezugssystem in ein anderes (kurz: Koordinatentransformation) kann mit Hilfe des international anerkannten NTv2-Verfahrens durchgeführt werden (National Transformation Version 2). Grundlage ist eine Tabelle mit Shiftwerten an den Gitterpunkten, mit deren Hilfe der jeweilige Gitterpunkt (resp. ein beliebiger Punkte durch Interpolation) in das andere KS in einem mehrstufigen Verfahren transformiert werden kann.
Das Gitter ist wie folgt definiert:
- 4 Eckpunkte des Gesamtgitters in geografischen Koordinaten (Breite/Länge)
- Abstand zweier Gitterpunkte (Breite/Länge)
Eine NTv2-Datei enthält obige Daten und weiterhin folgende wesentliche Informationen:
- Maße des Quell(Q) - und des Zielellipsoids (Z) (große/kleine Halbachse, englisch: Q=F=From, Z=T=To)
- Liste der Gitterpunkte, pro Zeile 1 Punkt, mit jew. mindestens 2 Parametern (Shift Breite/Länge).
Name NUM_OREC 11 //Anzahl der Datensätze im allgemeinen Header NUM_SREC 11 //Anzahl der Datensätze im Sub-Grid-Header NUM_FILE 1 //Anzahl der Sub-Grids GS_TYPE SECONDS VERSION NTv2.0 SYSTEM_FDHDN90 //Quell-System SYSTEM_TETRS89 //Ziel-System MAJOR_F 6377397.155 //Quell-Ellipsoid MINOR_F 6356078.963 //Quell-Ellipsoid MAJOR_T 6378137.000 //Ziel-Ellipsoid MINOR_T 6356752.314 //Ziel-Ellipsoid SUB_NAMEDHDN90 //Name des Sub-Grids v--ab hier Sub-Grid-Header PARENT NONE CREATED 28-02-12 UPDATED 28-02-12 S_LAT 170010.000000 //Breite min in sec N_LAT 182850.000000 //Breite max in sec E_LONG -50355.000000 //Länge max in sec W_LONG -31815.000000 //Länge min in sec LAT_INC 30.000000 //Schrittweite Länge in sec LONG_INC 45.000000 //Schrittweite Breite in sec GS_COUNT 177177 //Anzahl der nachfolgenden Datensätze (Zeilen) im Subgrid 0.000000 0.000000 0.000000 0.000000 0.000000 0.000000 0.000000 0.000000 ... -2.953820 5.668092 0.000000 0.000000 -2.954437 5.661538 0.000000 0.000000 -2.955428 5.655286 0.000000 0.000000 -2.956087 5.648769 0.000000 0.000000 -2.956674 5.642190 0.000000 0.000000 ... 0.000000 0.000000 0.000000 0.000000 0.000000 0.000000 0.000000 0.000000 END
Daraus ergibt sich die Rechenvorschrift:
Ebene Koordinaten (Q) -1-> Geographische K. (Q) -2-> Geografische K. (Z) -3-> Ebene Koordinaten
Die Rechenschritte:
- Anwendung der Projektionsvorschrift. Die hierfür benötigten Parameter (Methode, Zentralmeridian, Offsets, Maßstab) liefert die Software, nicht die NTv2-Datei. Lediglich die Maße des Bezugsellipsoids können aus der Datei entnommen werden.
- Durchführung des interpolierten Shifts. Die NTv2-Datei fungiert als "Look-up-Tabelle".
- Rückprojektion im neuen System, siehe 1
Der Einsatz von Geoidinformationen durch die Software in Schritt 1 und 3 muss überprüft werden, z.B. für den Fall, dass die NTv2-Datei auch Höhenshifts enthält oder GPS-Messungen durchgeführt werden sollen.
Die NTv2-Dateien tragen die Endung *.gsb (binär) resp. *.gsa (ASCII).
Für Hin- und Rücktransformation mit höchster Genauigkeit ist jeweils eine separate NTv2-Datei erforderlich. Beim Einsatz in die jew. "andere" Richtung muss mit Abstrichen in der Genauigkeit gerechnet und das Ergebnis stichprobenartig kontrolliert werden.
NTv2 binäres Format *.gsb - für Insider
Am Beispiel von beta2007;
Jeder Datensatz (ebenfalls die Datensätze im Header) besteht aus 2x8=16 Byte.
In den Header-Datensätzen (Allgemeiner Header und Sub-Grid-Header) stehen in den ersten 8 Byte der Parametername, in den zweiten 8 Byte der Wert.
Es folgen die Shift-Parameter mit 4x4 Float-Werten pro Datensatz, wobei der 3. und 4. Parameter (die Genauigkeit) meistens "0" ist.
Die Datei wird mit einem Datensatz mit dem Parameter "END" und Wert "0" abgeschlossen.
Gesamtgröße der Datei mit einem einzigen Subgrid: (NUM_OREC + NUM_SREC + GS_COUNT + END)*16 Byte, also üblicherweise (11+11+GS_COUNT+1)*16 Byte.
Datensatznr. die ersten 8 Byte Format (Dekodiert) die zweiten 8 Byte Format (Dekodiert) Kommentar 01 4E 55 4D 5F 4F 52 45 43 String (NUM_OREC) 0B 00 00 00 00 00 00 00 Longint (11) # header records in overview 02 4E 55 4D 5F 53 52 45 43 String (NUM_SREC) 0B 00 00 00 00 00 00 00 Longint (11) # header records in sub grid 03 4E 55 4D 5F 46 49 4C 45 String (NUM_FILE) 01 00 00 00 00 00 00 00 Longint (1) # of sub grids 04 47 53 5F 54 59 50 45 20 String (GS_TYPE ) 53 45 43 4F 4E 44 53 20 String (SECONDS ) 05 56 45 52 53 49 4F 4E 20 String (VERSION ) 4E 54 76 32 2E 30 20 20 String (NTv2.0 ) 06 53 59 53 54 45 4D 5F 46 String (SYSTEM_F) 44 48 44 4E 39 30 20 20 String (DHDN90 ) 07 53 59 53 54 45 4D 5F 54 String (SYSTEM_T) 45 54 52 53 38 39 20 20 String (ETRS89 ) 08 4D 41 4A 4F 52 5F 46 20 String (MAJOR_F ) 1F 85 EB 49 ED 53 58 41 Double (6377397.155) 09 4D 49 4E 4F 52 5F 46 20 String (MINOR_F ) C1 CA A1 BD 1B 3F 58 41 Double (6356078.963) 10 4D 41 4A 4F 52 5F 54 20 String (MAJOR_T ) 00 00 00 40 A6 54 58 41 Double (6378137.000) 11 4D 49 4E 4F 52 5F 54 20 String (MINOR_T ) 75 93 18 14 C4 3F 58 41 Double (6356752.314) ^ bis hierher: Allgemeiner Header ( 11 Datensätze!) 12 53 55 42 5F 4E 41 4D 45 String (SUB_NAME) 44 48 44 4E 39 30 20 20 String (DHDN90 ) v hier beginnt das Subgrid 13 50 41 52 45 4E 54 20 20 String (PARENT ) 4E 4F 4E 45 20 20 20 20 String (NONE ) 14 43 52 45 41 54 45 44 20 String (CREATED ) 30 36 2D 31 31 2D 30 39 String (06-11-09) 15 55 50 44 41 54 45 44 20 String (UPDATED ) 30 36 2D 31 31 2D 30 39 String (06-11-09) 16 53 5F 4C 41 54 20 20 20 String (S_LAT ) 00 00 00 00 80 A7 04 41 Double (169200.000) 17 4E 5F 4C 41 54 20 20 20 String (N_LAT ) 00 00 00 00 40 4D 08 41 Double (199080.000) 18 45 5F 4C 4F 4E 47 20 20 String (E_LONG ) 00 00 00 00 00 8A EB C0 Double (-56400.000) 19 57 5F 4C 4F 4E 47 20 20 String (W_LONG ) 00 00 00 00 00 56 D3 C0 Double (-19800.000) 20 4C 41 54 5F 49 4E 43 20 String (LAT_INC ) 00 00 00 00 00 80 76 40 Double (360.000) 21 4C 4F 4E 47 5F 49 4E 43 String (LONG_INC) 00 00 00 00 00 C0 82 40 Double (600.000) 22 47 53 5F 43 4F 55 4E 54 String (GS_COUNT) 58 14 00 00 00 00 00 00 Longint (5208) ^ bis hier Sub-Grid-Header, nach 2x11x16=352 Byte beginnen die Daten 23 D7 FB 2F C0 2B 4E E5 40 00 00 00 00 00 00 00 00 4xSingle (-2.749746,7.165792,0,0) Shiftparameter 24 86 00 30 C0 1E 26 E2 40 00 00 00 00 00 00 00 00 4xSingle (-2.750032,7.067153,0,0) 25 BC 06 30 C0 1B FF DE 40 00 00 00 00 00 00 00 00 4xSingle (-2.750411,6.968641,0,0) ... ... 45 4E 44 20 20 20 20 20 String (END ) 00 00 00 00 00 00 00 00 String ( )
Hierbei bedeuten:
Double Float: 8 byte; Single Float: 4 byte; LongInt ohne Vorzeichen: 4 Byte + 4x[00], String: 8 byte (ASCII), rechts aufgefüllt mit Leerzeichen [20]
Deutschland
In Deutschland wird dieses Verfahren ab 2007 für ATKIS eingesetzt (Umwandlung geotopografischer Daten DHDN/Gauß-Krüger > ETRS89 im Submeterbereich). Die Bezeichnung hierfür lautet BeTA2007 (Bundeseinheitliche Transformation für ATKIS 2007, http://crs.bkg.bund.de/crseu/crs/descrtrans/BeTA/de_dhdn2etrs_beta.php).
Die das gesamte Gebiet von Deutschland umfassende BeTA2007-Datei liefert Ergebnisse im Submeterbereich, sollte also größenordnungsmäßig den Ergebnissen aus der offiziellen 7-Parameter-Transformation für Nord-, Mittel- und Süddeutschland (AdV) entsprechen. Die Abmessungen des Gitters sind:
- Breite 47 bis 55,3°, Schrittweite 0,1° (360", ca. 10km)
- Länge 5,5 bis 15,67°, Schrittweite 1/6° (600", ca. 1.2km)
Daraus ergibt sich eine Tabelle mit 5208 Zeilen mit jew. 2 Werten (Shift Breite/Länge)
- http://crs.bkg.bund.de/crseu/crs/descrtrans/BeTA/BETA2007.gsa (ASCII, lesbar)
- http://crs.bkg.bund.de/crseu/crs/descrtrans/BeTA/BETA2007.gsb (binär)
Bundesländer und regional
Regional können mit engerer Maschenweite genauere Ergebnisse erzielt werden, z.B. für ALKIS-Einsatz (Liegenschaftskataster). Diese Tabellen stellen auch die Datenbasis der SAPOS-RTCM-Online-Transformation dar. Teilweise sind diese NTv2-Dateien bei den Landesvermessungsämtern kostenfrei erhältlich, z.B. Bayern (NTv2 BY-SAPOS), Baden-Württemberg (BWTA2017), Hessen (HeTa2010), NRW. Die Maschenweite beträgt für die bayerische Datei grob 1 km:
- Breite 30"
- Länge 45"
Für Rheinland-Pfalz /RLP bitte Anfrage per Email (nur für Kunden)