Я ищу функцию, которая вернет пересечение двух или более полигонов (тип географии).Союзы полигонов (ST_UNION для типа географии)
Я знаю ST_UNION, ST_COLLECT, но он работает только для типа геометрии.
Любой наконечник будет очень ценен
Я ищу функцию, которая вернет пересечение двух или более полигонов (тип географии).Союзы полигонов (ST_UNION для типа географии)
Я знаю ST_UNION, ST_COLLECT, но он работает только для типа геометрии.
Любой наконечник будет очень ценен
Тип Географии поддерживает только небольшое подмножество функций PostGIS. Здесь вы можете проверить их все и посмотреть, если любой из них соответствует вашим потребностям:
http://postgis.refractions.net/docs/ch08.html#PostGIS_GeographyFunctions
Рассматривали ли вы ST_Transform в тип геометрии, вложенной в ST_Union или ST_Collect? Документы PostGIS (по ссылке amercader) говорят, что они используют эту функцию внутри для некоторых операций географии.
Вы можете отливать геометрию и выполнять там операцию. Вам просто нужно быть осторожным, чтобы ваши формы имели смысл при оценке на картезианском плане. Завертывают ли они линию отсчета или полюса?
select geography(st_union(a::geometry, b::geometry))
Если формы имеют очень длинные края, то разница в краевой интерполяции между большой круговой интерполяцией вы хотите на сфере и линейной интерполяции вы получаете на плоскость входит в игру, и вы должны получить новые идеи как можно лучше сохранить края, работая в соответствующей проекции карты (автоматически выбирается с помощью функции bestsrid).
select geography(
st_transform(
st_union(
st_transform(a::geometry, _st_bestsrid(a,b)),
st_transform(b::geometry, _st_bestsrid(a,b))
),
4326
))
Наслаждайтесь!
Почему PostGIS не разрешает эти операции по типам географии и возвращать ошибки, если формы не имеет смысла на картезианском плане? –
Географии не имеют смысла на картезианском плане, это вопрос градусов (ха-ха). Линия между двумя точками в сферической геометрии - большой круг, а линия между двумя точками в декартовой геометрии - прямая. По мере того, как точки становятся все ближе и ближе, прямая линия становится лучшим и лучшим приближением дуги, но она никогда не бывает точным. –
Кстати, вы можете найти более экспертные ответы на вопросы, связанные с ГИС, на выделенном сайте http://gis.stackexchange.com/ – amercader