Pytanie Jak zmienić SRID kolumny geometrii?


Mam tabelę, w której jedna z kolumn jest kolumną geometrii the_geom dla wielokątów z SRID. Dodałem nową kolumnę w tej samej tabeli z dokładnie tymi samymi danymi geometrii, co the_geom.

Ta nowa kolumna ma nazwę the_geom4258 ponieważ chcę ustawić jego SRID na 4258. Jaka jest procedura zmiany SRID geometrii na inny układ współrzędnych? Czy wystarczy zastosować następujące zapytanie:

UPDATE table SET the_geom4258=ST_SetSRID(the_geom4258,4258);

21
2018-06-10 08:16


pochodzenie




Odpowiedzi:


Powinieneś użyć ST_Transform funkcjonować. Użyj także tej funkcji AddGeometryColumn aby utworzyć nową kolumnę, aby zapewnić również wszystkie niezbędne ograniczenia:

SELECT AddGeometryColumn('table','the_geom4258',4258, 'POLYGON', 2);

UPDATE table SET the_geom4258 = ST_Transform(the_geom,4258);

ST_SetSRID po prostu ustawia identyfikator projekcji, ale w rzeczywistości nie przekształca geometrii.


28
2018-06-10 09:28



Twoje odpowiedzi są dokładnie tym, czego potrzebuję. Bardzo dziękuję. Jest tylko jedna mała rzecz, teraz mam błąd: "BŁĄD: AddToPROJ4SRSCache: nie można przeanalizować łańcucha proj4: '+ proj = tmerc + lat_0 = 0 + lon_0 = 16,5 + k = 0,999900 + x_0 = 500000 + y_0 = 0 + ellps = GRS80 + dane = ETRS89 + jednostki = m + no_defs: nieznana nazwa parametru eliptycznego "Jakąkolwiek wskazówkę co powinienem teraz poprawić? - Z77
Upewnij się, że istnieje rekord dla srid 4258 w tabeli spatial_ref_sys bazy danych. Jeśli jest rekord, sprawdź, czy parametry projekcji są zgodne z tymi tutaj: spatialreference.org/ref/epsg/4258/postgis - amercader
OK! Jestem szczęśliwą dziewczyną, wszystkie odpowiedzi mogę znaleźć tutaj :) - Z77