Анализ соседства полигонов

Ответить
xen87
Активный участник
Сообщения: 168
Зарегистрирован: 08 апр 2009, 14:44
Репутация: 18
Откуда: Кострома

Анализ соседства полигонов

Сообщение xen87 » 09 сен 2011, 22:23

Здравствуйте, стоит задача: имеется полигональный слой (скажем bnd-political-boundary-a). По заданному условию выделен один полигон (ID=4581), необходимо выделить полигоны, имеющие общую границу с выделенным полигоном. В руководстве по PostGIS нашел функцию ST_touches(geom,geom)=1 (true) если геометрии "пространственно соприкасаются", но составить рабочий запрос не удается. Подскажите пожалуйста, ту ли я функцию использую и может быть кто-то уже решал подобную задачу и может привести пример? Заранее большое спасибо.

xen87
Активный участник
Сообщения: 168
Зарегистрирован: 08 апр 2009, 14:44
Репутация: 18
Откуда: Кострома

Re: Анализ соседства полигонов

Сообщение xen87 » 13 сен 2011, 21:08

Решил задачу следующим образом: вставил в Постгресс еще раз полигональный слой bnd-political-boundary-a, получил две идентичные таблицы, только с разными названиями: bnd-political-boundary-a и bnd-political-boundary-a_3
Затем составил запрос вида:

Код: Выделить всё

select b.ID, b.NAM
from "bnd-political-boundary-a" as b,
"bnd-political-boundary-a_3" as b3
where ST_Touches(b3.the_geom,b.the_geom)=true and b3.ID=4581;
И заработало :-)
Решить задачу только с одним полигональным слоем (без клонирования) к сожалению не получилось :-(

sdikiy
Участник
Сообщения: 54
Зарегистрирован: 15 янв 2011, 23:03
Репутация: 1
Откуда: Ukraine

Re: Анализ соседства полигонов

Сообщение sdikiy » 13 сен 2011, 23:16

а так:

Код: Выделить всё

select b.ID, b.NAM
from "bnd-political-boundary-a" as b,
"bnd-political-boundary-a" as b3
where ST_Touches(b3.the_geom,b.the_geom)=true and b3.ID=4581;
не работает? :shock:

xen87
Активный участник
Сообщения: 168
Зарегистрирован: 08 апр 2009, 14:44
Репутация: 18
Откуда: Кострома

Re: Анализ соседства полигонов

Сообщение xen87 » 14 сен 2011, 10:17

И так работает :-) Большое спасибо за решение!!!

Ответить

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

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

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