Сравнение геометрий в PostGis

Ответить
cibo
Интересующийся
Сообщения: 36
Зарегистрирован: 23 июл 2012, 13:51
Репутация: 0

Сравнение геометрий в PostGis

Сообщение cibo » 07 авг 2012, 10:27

Есть две таблицы
1 таблица со srid=4326
2 таблица со srid=900913
Нужно сравнить их геометрии. Но сравнить не на точное совпадение как это делает ST_Equals(geometry, geometry), а так что бы был какой то допуск. Это возможно сделать?

Аватара пользователя
rhot
Гуру
Сообщения: 1727
Зарегистрирован: 25 янв 2011, 17:50
Репутация: 194
Ваше звание: доктор
Откуда: Архангельск

Re: Сравнение геометрий в PostGis

Сообщение rhot » 07 авг 2012, 10:31

не совсем понятно, что за допуск?
___________(¯`·.¸(¯`·.¸ Scientia potentia est _/ {SILVA}:::{FOSS}:::{GIS} \_ Знание сила ¸.·´¯)¸.·´¯)___________

cibo
Интересующийся
Сообщения: 36
Зарегистрирован: 23 июл 2012, 13:51
Репутация: 0

Re: Сравнение геометрий в PostGis

Сообщение cibo » 07 авг 2012, 10:34

Изображение

Что то вроде такого.

Аватара пользователя
rhot
Гуру
Сообщения: 1727
Зарегистрирован: 25 янв 2011, 17:50
Репутация: 194
Ваше звание: доктор
Откуда: Архангельск

Re: Сравнение геометрий в PostGis

Сообщение rhot » 07 авг 2012, 10:36

постройте буфер с заданным допуском и сравнивайте их уже.
___________(¯`·.¸(¯`·.¸ Scientia potentia est _/ {SILVA}:::{FOSS}:::{GIS} \_ Знание сила ¸.·´¯)¸.·´¯)___________

Аватара пользователя
Denis Rykov
Гуру
Сообщения: 3376
Зарегистрирован: 11 апр 2008, 21:09
Репутация: 529
Ваше звание: Author
Контактная информация:

Re: Сравнение геометрий в PostGis

Сообщение Denis Rykov » 07 авг 2012, 10:52

Да, постройте буферные зоны, равные величине допуска и сравните геометрии с помощью ST_Within. То есть берете геометрию, строите буфер, сравниваете с остальными (без буфера) и т.д.
Spatial is now, more than ever, just another column- The Geometry Column.

cibo
Интересующийся
Сообщения: 36
Зарегистрирован: 23 июл 2012, 13:51
Репутация: 0

Re: Сравнение геометрий в PostGis

Сообщение cibo » 07 авг 2012, 11:15

Тогда вот такой вопрос: как ST_Equals сравнивает геометрию? По площади или по конфигурации точек? Допустим мои геометрии будут немного разной формы, то построив буфер вокруг одной из них они могут быть сравнены?

Аватара пользователя
rhot
Гуру
Сообщения: 1727
Зарегистрирован: 25 янв 2011, 17:50
Репутация: 194
Ваше звание: доктор
Откуда: Архангельск

Re: Сравнение геометрий в PostGis

Сообщение rhot » 07 авг 2012, 11:41

ST_Equals сравнивает пространственно, а ST_OrderingEquals - геометрически. Допустим, объект LINESTRING(0 1, 3 3) пространственно идентичен LINESTRING(3 3, 0 1), а вот геометрически вовсе нет и вывод ST_OrderingEquals будет FALSE.
___________(¯`·.¸(¯`·.¸ Scientia potentia est _/ {SILVA}:::{FOSS}:::{GIS} \_ Знание сила ¸.·´¯)¸.·´¯)___________

Ответить

Вернуться в «PostGIS/PostgreSQL»

Кто сейчас на конференции

Сейчас этот форум просматривают: нет зарегистрированных пользователей и 0 гостей