Как изменить SRID столбца геометрии? - PullRequest
21 голосов
/ 10 июня 2010

У меня есть таблица, в которой один из столбцов является столбцом геометрии the_geom для полигонов с SRID. Я добавил новый столбец в ту же таблицу с точно такими же данными геометрии, как the_geom.

Этот новый столбец имеет имя the_geom4258, потому что я хочу установить его SRID на 4258. Какова процедура для изменения SRID геометрии на другую систему координат? Достаточно ли применить следующий запрос:

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

1 Ответ

28 голосов
/ 10 июня 2010

Вы должны использовать функцию ST_Transform . Также используйте функцию AddGeometryColumn , чтобы создать новый столбец, чтобы обеспечить создание всех необходимых ограничений:

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

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

ST_SetSRID просто устанавливает идентификатор проекции, но фактически не преобразует геометрию.

...