Разрезка полигона по линейному слою

Вопросы общего характера по ГИС и дистанционному зондированию, не связанные с конкретным ПО.
Ответить
bdron
Новоприбывший
Сообщения: 7
Зарегистрирован: 08 сен 2010, 15:10
Репутация: 0

Разрезка полигона по линейному слою

Сообщение bdron »

Здравствуйте.

Использую данные о регионах РФ взятые отсюда
Мне нужно представить все районы региона в виде отдельных полигонов, но данные по районам представлены линейным слоем, а полигоном только сам регион. Есть ли возможность разрезать полигон региона по районам в соответствии с их линейным слоем?
Григорий Степанов
Easy Trace – эксперт
Сообщения: 329
Зарегистрирован: 03 сен 2009, 11:13
Репутация: 64
Откуда: Россия, г.Рязань
Контактная информация:

Re: Разрезка полигона по линейному слою

Сообщение Григорий Степанов »

А не проще собрать полигоны районов из их линейных границ и границ региона?
bdron
Новоприбывший
Сообщения: 7
Зарегистрирован: 08 сен 2010, 15:10
Репутация: 0

Re: Разрезка полигона по линейному слою

Сообщение bdron »

Григорий Степанов писал(а):А не проще собрать полигоны районов из их линейных границ и границ региона?
А каким образом из границ собрать полигоны? Чем пользоваться?
Григорий Степанов
Easy Trace – эксперт
Сообщения: 329
Зарегистрирован: 03 сен 2009, 11:13
Репутация: 64
Откуда: Россия, г.Рязань
Контактная информация:

Re: Разрезка полигона по линейному слою

Сообщение Григорий Степанов »

Что-то никто из специалистов по ГИС не отвечает. В прочем, в какой именно ГИС надо собрать полигоны из вопроса то же не ясно. Так что отвечу со своей колокольни :).

1. Ставим бесплатный Easy Trace 7.99;
2. Создаём новый проект в границах региона;
3. Импортируем в него полигон региона и границы областей;
4. Проверяем границы областей на "висящие концы" (Утилита->Проверки топологи), если они есть - фиксируем их на границе региона топологическим редактором;
5. Выполняем Утилиты->Топология->Сборка полигонов
6. Экспортируем результаты в вашу ГИС

P.S. ... работы минут на пять...
bdron
Новоприбывший
Сообщения: 7
Зарегистрирован: 08 сен 2010, 15:10
Репутация: 0

Re: Разрезка полигона по линейному слою

Сообщение bdron »

Григорий Степанов, спасибо за ответ. Импортировал два слоя, проверил топологию, зафиксировал висячие точки. Ошибок после проверки больше не было. Сделал сборку полигонов. В результирующем слое появились полигоны из обоих слоев, но потерялась внешняя граница региона, похоже она подставилась только из слоя границ районов.
Результат выглядит таким образом:
Изображение
Аватара пользователя
Максим Дубинин
MindingMyOwnBusiness
Сообщения: 9129
Зарегистрирован: 06 окт 2003, 20:20
Репутация: 748
Ваше звание: NextGIS
Откуда: Москва
Контактная информация:

Re: Разрезка полигона по линейному слою

Сообщение Максим Дубинин »

в слое krasnoyask-admin-a вроде есть полигональные районы

Изображение
пристегивайтесь, турбулентность прямо по курсу
Григорий Степанов
Easy Trace – эксперт
Сообщения: 329
Зарегистрирован: 03 сен 2009, 11:13
Репутация: 64
Откуда: Россия, г.Рязань
Контактная информация:

Re: Разрезка полигона по линейному слою

Сообщение Григорий Степанов »

Очень похоже, что граница региона НЕЗАМКНУТА (хотя это очень странно...). Если Вас не затруднит, выложите в посте архив проекта - 7.99 конечно старая версия, но с проблемой сборкой полигонов мы в ней не сталкивались.
bdron
Новоприбывший
Сообщения: 7
Зарегистрирован: 08 сен 2010, 15:10
Репутация: 0

Re: Разрезка полигона по линейному слою

Сообщение bdron »

Максим Дубинин, на Вашем скриншоте krasnoyarsk-admin-a.shp содержит больше районов чем отображается у меня (во всех программах что я пробовал) и в нем северная граница представлена не совсем точно. Я использую два слоя: krasnoyarsk-admin-l.shp и krasnoyarsk-bound.shp, но и в этом случае некоторых районов не хватает.

Вот как у меня отображается krasnoyarsk-admin-a.shp: Изображение

Два слоя: krasnoyarsk-admin-l.shp и krasnoyarsk-bound.shp: Изображение

Мне бы хотелось получить результат подобный этому: Изображение
bdron
Новоприбывший
Сообщения: 7
Зарегистрирован: 08 сен 2010, 15:10
Репутация: 0

Re: Разрезка полигона по линейному слою

Сообщение bdron »

Григорий Степанов, вот пожалуйста: архив проекта
Аватара пользователя
Максим Дубинин
MindingMyOwnBusiness
Сообщения: 9129
Зарегистрирован: 06 окт 2003, 20:20
Репутация: 748
Ваше звание: NextGIS
Откуда: Москва
Контактная информация:

Re: Разрезка полигона по линейному слою

Сообщение Максим Дубинин »

может у вас архив старый? я вчера скачал, открыл, никаких манипуляций хитрых не делал. Вы в курсе что данные обновляются каждый день?

Это не "неточная", а правильная граница, просто то, что вам нужно получить это граница суши, а это не обязательно граница региона.
пристегивайтесь, турбулентность прямо по курсу
bdron
Новоприбывший
Сообщения: 7
Зарегистрирован: 08 сен 2010, 15:10
Репутация: 0

Re: Разрезка полигона по линейному слою

Сообщение bdron »

Архив скачивал три недели назад. Сейчас скачал - все районы есть - значит действительно дело было в версии. Спасибо за подсказку :) Остается перейти от морской границы к сухопутной и получить на выходе один полигональный shape файл. Буду признателен за советы, как можно это сделать.
Григорий Степанов
Easy Trace – эксперт
Сообщения: 329
Зарегистрирован: 03 сен 2009, 11:13
Репутация: 64
Откуда: Россия, г.Рязань
Контактная информация:

Re: Разрезка полигона по линейному слою

Сообщение Григорий Степанов »

bdron писал(а):В результирующем слое появились полигоны из обоих слоев, но потерялась внешняя граница региона, похоже она подставилась только из слоя границ районов.
Увы, полигоны таких размеров Easy Trace собрать не может. Причина - ограничение на максимальное число вершин в одной полилинии или полигоне - 7190. Это плата за скорость работы с данными. Число вершин более чем достаточное для оцифровки, не рассчитано на работу с подробными границами целого региона. При импорте, граница региона была преобразована в цепочку полилиний, что и не позволило собрать все возможные полигоны...
bdron
Новоприбывший
Сообщения: 7
Зарегистрирован: 08 сен 2010, 15:10
Репутация: 0

Re: Разрезка полигона по линейному слою

Сообщение bdron »

Также хочу спросить, как получить полигональный shape файл из исходного, убрав разделение по некоторым параметрам, например убрать разделение по федеральным округам и муниципальным образованиям?
Т.е. так, как это делается в QGIS в Свойствах слоя - Символика, но только чтобы сохранять результат не в файл стиля слоя QGIS, а в отдельный shape файл.
Аватара пользователя
Максим Дубинин
MindingMyOwnBusiness
Сообщения: 9129
Зарегистрирован: 06 окт 2003, 20:20
Репутация: 748
Ваше звание: NextGIS
Откуда: Москва
Контактная информация:

Re: Разрезка полигона по линейному слою

Сообщение Максим Дубинин »

выберите то что нужно через таблицу и Save selection...

отрезать водную часть таймыра свободными средствами - нужно подумать
пристегивайтесь, турбулентность прямо по курсу
Ответить

Вернуться в «Общие вопросы»

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

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