koordinaten_umrechnen_brandenburg

Hallo Profis,

in Brandenburg haben wir ein Problem, welches sich auf die EPSG Codes (25833) bezieht. Es wurde in der Vergangenheit vor den x-Wert eine 3 gestellt. Also habe ich nun in meinen shps und auch in Postgis “falsche” Werte. Klartext:
x=3450000, obwohl x richtig nur 6 stellig ist also korrekt x= 450000.
Seht Ihr eine (ähm) einfache Möglichkeit dieses “false easting” zu korrigieren, wobei der EPSG Code nicht geändert werden muss/sollte? :confused:
Ideen und Anleitungen wären super, augenblicklich liege ich mit meinen Daten für Brandenburg am Kaspischen Meer.
Robert

Wie ist das Wetter dort?

SCNR

Andreas, gismann kann Dir vielleicht helfen.

Wüsste ich auch gern (Wetter), vielleicht muss ich ja umziehen (Kaspisches Meer) und dann passen die Daten!
Na dann setze ich meine Hoffnung auf gisman. Danke
Robert

Schon da! :slight_smile:

Guten Morgen!

Sind die Koordinaten in UTM (SRID=25833)? Und die ‘falschen’ sind in Gauß-Krüger(SRID=31467)? Zumindest liesse sich das aus der SRID und deiner Beschreibung ableiten. Du solltest sie dann einfach umprojizieren können. Das geht entweder in einem GIS-Client oder in PostGIS mit

PostGIS >= 1.3: ST_Transform(<geom>,<neue SRID>)
PostGIS < 1.3: Transform(<geom>,<neue SRID>)

Meist reicht im GIS-Client auch einfach die Angabe des richtigen Systems, die kommen mit verschiedenen Systemen normalerweise klar.
Das ‘Grundproblem’ dabei ist die EU-weite Umstellung der nationalen Netze. Nach der Wiedervereinigung wurde in den 5 neuen Ländern sofort auf UTM umgestellt für Neuvermessungen, im Westen dauert das wohl noch eine Weile (zumindest krieg ich immer noch alles in GK). Deshalb sind alte Daten dort oft noch in GaussKrüger.
Aber was hast du denn gegen das kaspische Meer? Seit Peak Oil riechts dort auch nicht mehr so streng nach Öl… :wink:

Gruß Uwe

Hey gisman,

dank für die Antwort.
Ich bin leider weder in Bezugssystemen/Projektionen noch in Datenbanken sehr erfahren.
Was ich anbieten kann:
-postgis version 1.1.2 (postgresql 8.2)
-meine DB, in der die Daten eingespielt sind, hat 343 Funktionen
-daten liegen in tables, die eine oid-, … und eine geometry-Spalte haben oder die Tabellen haben gid-,…, und the_geom- Spalten
-the_geom und geometry haben lesbare Werte (irgendein code: sehr lang aus Großbuchstaben und Zahlen). Versteckt sich hier die Zuweisung (Verknüpfung zu spatial_ref_sys) der Projektion?
-es gibt eine weitere Tabelle ->spatial_ref_sys-< mit den Projektionen unter anderen auch srid
-eine zeile sieht z.B. so aus (rauskopiert):
25833;“EPSG”;25833;“PROJCS[“ETRS89 / UTM zone 33N”,GEOGCS[“ETRS89”,DATUM[“European_Terrestrial_Reference_System_1989”,SPHEROID[“GRS 1980”,6378137,298.257222101,AUTHORITY[“EPSG”,“7019”]],AUTHORITY[“EPSG”,“6258”]],PRIMEM[“Greenwich”,0,AUTHORITY[“EPSG”,“8901”]],UNIT[“degree”,0.01745329251994328,AUTHORITY[“EPSG”,“9122”]],AUTHORITY[“EPSG”,“4258”]],PROJECTION[“Transverse_Mercator”],PARAMETER[“latitude_of_origin”,0],PARAMETER[“central_meridian”,15],PARAMETER[“scale_factor”,0.9996],PARAMETER[“false_easting”,500000],PARAMETER[“false_northing”,0],UNIT[“metre”,1,AUTHORITY[“EPSG”,“9001”]],AUTHORITY[“EPSG”,“25833”]]”;"+proj=utm +zone=33 +ellps=GRS80 +units=m +no_defs "

  • habe aber auch (mit false easting):
    325833;“EPSG”;325833;“PROJCS[“ETRS89 / UTM zone 33N”,GEOGCS[“ETRS89”,DATUM[“European_Terrestrial_Reference_System_1989”,SPHEROID[“GRS 1980”,6378137,298.257222101,AUTHORITY[“EPSG”,“7019”]],AUTHORITY[“EPSG”,“6258”]],PRIMEM[“Greenwich”,0,AUTHORITY[“EPSG”,“8901”]],UNIT[“degree”,0.01745329251994328,AUTHORITY[“EPSG”,“9122”]],AUTHORITY[“EPSG”,“4258”]],PROJECTION[“Transverse_Mercator”],PARAMETER[“latitude_of_origin”,0],PARAMETER[“central_meridian”,15],PARAMETER[“scale_factor”,0.9996],PARAMETER[“false_easting”,3500000],PARAMETER[“false_northing”,0],UNIT[“metre”,1,AUTHORITY[“EPSG”,“9001”]],AUTHORITY[“EPSG”,“325833”]]”;"+proj=tmerc +lon_0=15 +ellps=GRS80 +k=0.9996 +units=m +datum=WGS84 +x_0=3500000 "

-wie eine Verknüpfung (keys) zwischen den Datentabelle und der spatial_ref_sys besteht kann ich nur vermuten: über the_geom oder geometry???

  • kann ich meinen Daten (PG Tabellen) auch 325833 zuweisen? wie? the_geom oder geometry ändern? Vielleicht wäre dies die einfachste Lösung?

Grüße, Robert

Moin!
Soweit stimmt alles :wink: . Du hast allerdings in deiner Tabelle zwei Geometrie-Spalten, das heist, einem Darstellungs-Client mußt du sagen, welche er benutzen soll. Das hängt vom jeweiligen Client ab, meist fragen die dann danach. Es könnte natürlich sein, das da schon Geometrien in beiden Systemen abgelegt sind. Du kannst das folgendermassen testen:

Select SRID(<geometry>) from <table>

Jeweils mit dem einem oder anderen Geometriefeld. Unter der Zahl die dann rauskommen sollte, findest du in spatial_ref_sys das verwendete Koordinatensystem, was du ja auch schon entdeckt hast :wink: . Das ist die übliche Beschreibung von sowas.
Der komische Code in der Geometrie nennt sich WellKnownBinary (WKB)und kann mit

Select astext(<geometry>) from <table>

in das lesbare WellKnownText-Format (WKT) umgewandelt werden. Dort steht auch die SRID, die zur Verknüpfung mit spatial_ref_sys benutzt wird und die einzelnen Koordinaten.
Nach der negativen Prüfung der Geometrien auf eine richtige SRID kannst du folgendes tun:

  1. Die bestehende Geometrie transformieren:
Update <table> Set
   transform(<geometry>)
   [Where <Bedingung>]

Dies ändert aber deine Ausgangsdaten! Also Vorsicht!

  1. eine neue Tabelle zum Üben anlegen und die Geometrien dort mit
Insert <table_neu> (<geometry>) values select transform(<geometry>) from table_alt

Wie das genau geht überlasse ich dem geneigten Leser zur Übung
(Steht im hervorragenden PostGIS-Handbuch, das als pdf erhältlich ist) :wink:
Falls du mehr damit zu tun bekommst, lohnt sich auch das Einlesen in geographische Projektionen auf jeden Fall. Da gibt es auch viel im Internet dazu.

Grußle Uwe