Преобразовать «геометрию» в «географию» - PullRequest
0 голосов
/ 13 июля 2011

Я нахожусь на тестовом проекте, чтобы узнать об инструментах геолокации.Но, будучи неофитом, несколько понятий в PostGIS избегают меня.Вот моя проблема: используемый SRID был 4326. У меня есть три поля: поле «геоцентр», в котором я храню центр моих кругов, поле «георадиус», в котором я храню радиусы окружностей, и поле «геоциркл», в котором находятсясохраненные круги, которые на самом деле просто полигоны.Используя ST_Buffer, я замечаю, что некоторые вершины моих многоугольников (кружков) превышают диапазон [-180 -90 180 90].Моя задача - рассчитать расстояние от точки вне круга до круга.ST_Distance, используя эти полигоны геометрических типов, я считаю, что рассчитанное расстояние неверно.Я думал тогда использовал CAST, но у меня возникла эта ошибка: значения координат находятся вне диапазона [-180 -90 180 90] для типа GEOGRAPHY.Пожалуйста, есть ли способ преобразовать эти данные "геометрии" в данные "географии", хотя точки находятся за пределами диапазона [-180 -90 180 90]?спасибо

1 Ответ

0 голосов
/ 27 июля 2011

Я нашел: ну, я знал, что ST_Buffer перегружен для географических типов данных!Поэтому было необходимо использовать ST_Buffer (география, двойной) вместо ST_Buffer (геометрия, двойной)

...