Страница 1 из 1

Обрезка Shapefile по полигону

Добавлено: 22 сен 2009, 12:44
Boguscoder
Добрый день. Я новичек на этом форуме и не смог найти необходимой мне информации поиском, по этому обращаюсь сюда. Я прочитал статьи про обрезку растра по полигону, но хотел бы провернуть такую же операцию с существующим shapefile. У меня есть отдельный shapefile с точным полигоном границ некоторой европейской страны с очень хорошим масштабом. И есть набор файлов с природными ресурсами, дорогами, POI, итп.. Я использую mapnik для растеризации карт по необходимым мне слоям и стилям. Но хотелось бы что бы все что выпадает за границы страны не растеризовалось, с одной стороны я могу перебиать все вершины при растеризации, но спрашиваю нет ли более удобного\автоматизированного способа. Я пользуюсь gdal\ogr утилитами для свиох целей, но похожу сдесь они мне не помогают

Re: Обрезка Shapefile по полигону

Добавлено: 23 сен 2009, 01:13
Denis Rykov
Например, можно залить шейп и полигон, по которому нужна обрезка в БД с PostGIS и выполнять обрезку с помощью функции ST_Intersection. Как показывает практика, вариант вполне работоспособный.

Re: Обрезка Shapefile по полигону

Добавлено: 23 сен 2009, 10:00
Boguscoder
Отлично, благодарю за инфо. А есть ли предположения, каков результат, если буду объекты не полностью вписанные в полигон, они отвергнутся, засчитаются, или обрежутся и дополнятся вершинами по краю обрамляющего полигона

Re: Обрезка Shapefile по полигону

Добавлено: 23 сен 2009, 10:40
Denis Rykov
Есть, причем не предположение, а полная уверенность, так как сам недавно выполнял подобную операцию - "объекты обрежутся и дополнятся вершинами по краю обрамляющего полигона". Это что касается ST_Intersection, другие функции дают другой результат и используются в зависимости от задачи.