Линии в полигоны

Здесь нужно сообщать об ошибках в QGIS, с подробным описанием шагов и версии ПО.
Аватара пользователя
Игорь Лебедь
Завсегдатай
Сообщения: 452
Зарегистрирован: 24 апр 2010, 19:47
Репутация: 101
Откуда: Город в клёнах и акациях
Контактная информация:

Линии в полигоны

Сообщение Игорь Лебедь » 21 авг 2017, 10:10

QGIS 2.16.3, Win7-64, но я думаю, это не главное.
1) Прогоняем такой слой из линий в полигоны стандартным инструментом кугис:
Screen043.jpg
Screen043.jpg (55.97 КБ) 12205 просмотров
2) Получаем результат:
Screen044.jpg
Screen044.jpg (43.78 КБ) 12205 просмотров
3) Через арктулбокс же получаем нормальный результат:
Screen045.jpg
Screen045.jpg (36.62 КБ) 12205 просмотров
Очень обидно, что такой классический функционал не работает. Через инструментарий саги в кугисе та же байда. Это баг?

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

Re: Линии в полигоны

Сообщение Denis Rykov » 21 авг 2017, 10:13

Ну хоть пример для тестов приложили бы.
Spatial is now, more than ever, just another column- The Geometry Column.

Александр Мурый
Гуру
Сообщения: 5173
Зарегистрирован: 26 сен 2009, 16:26
Репутация: 793
Ваше звание: званий не имею
Откуда: Москва

Re: Линии в полигоны

Сообщение Александр Мурый » 21 авг 2017, 10:28

Какие данные, такой и результат. QGIS не исправляет ошибки топологии при перегоне в полигоны (можно предположить, что Арка это делает). С топологически корректно нарисованными линиями всё работает как надо.
Короче: чтобы разобраться, нужны ваши данные.
Редактор материалов, модератор форума

Аватара пользователя
Игорь Лебедь
Завсегдатай
Сообщения: 452
Зарегистрирован: 24 апр 2010, 19:47
Репутация: 101
Откуда: Город в клёнах и акациях
Контактная информация:

Re: Линии в полигоны

Сообщение Игорь Лебедь » 21 авг 2017, 11:15

Пожалуйста -
fk.7z
(15.3 КБ) 365 скачиваний
. Сомневаюсь, что аркмап исправляет ошибки. Вроде сделано всё с "прилипанием" (use snapping).
Думал сделать explode lines, но после него вообще формирует пустой слой полигонов.
Последний раз редактировалось Игорь Лебедь 21 авг 2017, 11:26, всего редактировалось 1 раз.

gamm
Гуру
Сообщения: 4044
Зарегистрирован: 15 окт 2010, 08:33
Репутация: 1049
Ваше звание: программист
Откуда: Казань

Re: Линии в полигоны

Сообщение gamm » 21 авг 2017, 11:25

Не сомневайтесь, Арка стрит нормальную топологию. То же делает GRASS, просто пользуйтесь инструментом, адекватным данным. И еще, ваш результат напоминает прилипание (snap) при ОЧЕНЬ большом толерансе, может просто параметры у вас не те.

Аватара пользователя
Игорь Лебедь
Завсегдатай
Сообщения: 452
Зарегистрирован: 24 апр 2010, 19:47
Репутация: 101
Откуда: Город в клёнах и акациях
Контактная информация:

Re: Линии в полигоны

Сообщение Игорь Лебедь » 21 авг 2017, 11:31

Возможно, в некоторых местах прилипание не к вершинам, а к рёбрам, и арк строит по ним, а кугис - нет?

gamm
Гуру
Сообщения: 4044
Зарегистрирован: 15 окт 2010, 08:33
Репутация: 1049
Ваше звание: программист
Откуда: Казань

Re: Линии в полигоны

Сообщение gamm » 21 авг 2017, 12:28

насколько я помню, Арка (и GRASS) стоят топологию (build+clean), а QGIS собирает из того, что есть. Так что проверьте для начала tolerance (или как он там в QGIS называется)

trir
Гуру
Сообщения: 5271
Зарегистрирован: 09 апр 2010, 19:30
Репутация: 1013
Ваше звание: просто мимо прохожу
Откуда: Ё-бург

Re: Линии в полигоны

Сообщение trir » 21 авг 2017, 12:37

там линии - "змейками", стоит их порезать по вершинам - может и QGIS переварит...

Аватара пользователя
Игорь Белов
Гуру
Сообщения: 2227
Зарегистрирован: 04 янв 2011, 22:00
Репутация: 1500
Откуда: Казань

Re: Линии в полигоны

Сообщение Игорь Белов » 21 авг 2017, 12:41

Вы многого хотите от QGIS. Он:
  • берёт полилинию;
  • если она незамкнутая, замыкает;
  • копирует как полигон;
  • переходит к следующей полилинии.
Желаете получить корректный результат, подготовьте данные.
The purpose of computing is insight, not numbers

Аватара пользователя
Игорь Лебедь
Завсегдатай
Сообщения: 452
Зарегистрирован: 24 апр 2010, 19:47
Репутация: 101
Откуда: Город в клёнах и акациях
Контактная информация:

Re: Линии в полигоны

Сообщение Игорь Лебедь » 21 авг 2017, 13:46

to gamm - топология в слое верная, дело в принципе работы модуля
to trir - порезал же, выше написал - сделал explode lines, после этого вообще пустой слой
to Игорь Белов - спасибо, видимо, Вы правы. Наверно, это повод для фичреквеста. Был бы благодарен, если кто-то из разработчиков сможет включить, это в гитхаб? Сборка некстгиса, интересно, так же обрабатывает или нет (нет возможности проверить пока, к сожалению).

Александр Мурый
Гуру
Сообщения: 5173
Зарегистрирован: 26 сен 2009, 16:26
Репутация: 793
Ваше звание: званий не имею
Откуда: Москва

Re: Линии в полигоны

Сообщение Александр Мурый » 21 авг 2017, 14:00

Игорь Лебедь писал(а):
21 авг 2017, 13:46
to gamm - топология в слое верная
А вот и нет:
Selection_030.png
Selection_030.png (101.75 КБ) 12122 просмотра

В "чистой" QGIS исправить на настоящий момент это нельзя. Импорт в GRASS, прогонка через модуль <v.clean> дала нужный результат (кроме тех мест, где линии вообще не доведены).
Selection_031.png
Selection_031.png (110.36 КБ) 12122 просмотра

Команды GRASS:

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

v.import in=fk.gpkg out=fk snap=5
v.clean in=fk out=fk_clean tool=snap,break thresh=5,5
v.type in=fk_clean out=fk_bounds from=line to=boundary
v.centroids in=fk_bounds out=fk_areas
Редактор материалов, модератор форума

Александр Мурый
Гуру
Сообщения: 5173
Зарегистрирован: 26 сен 2009, 16:26
Репутация: 793
Ваше звание: званий не имею
Откуда: Москва

Re: Линии в полигоны

Сообщение Александр Мурый » 21 авг 2017, 14:06

Игорь Лебедь писал(а):
21 авг 2017, 13:46
Наверно, это повод для фичреквеста. Был бы благодарен, если кто-то из разработчиков сможет включить, это в гитхаб?
Задача нетривиальная и в формулировке "сделать как в Арке" (по моему скромному мнению) не особо нужная. Думаю, никто из разработчиков в здравом уме и без спец. заказа не будет за это браться при наличии GRASS и PostGIS с их топологиями.
Игорь Лебедь писал(а):
21 авг 2017, 13:46
Сборка некстгиса, интересно, так же обрабатывает или нет (нет возможности проверить пока, к сожалению).
Сборка НекстГИС - почти дефолтная QGIS, в плане работы с векторами - всё точно так же.
Редактор материалов, модератор форума

Александр Мурый
Гуру
Сообщения: 5173
Зарегистрирован: 26 сен 2009, 16:26
Репутация: 793
Ваше звание: званий не имею
Откуда: Москва

Re: Линии в полигоны

Сообщение Александр Мурый » 21 авг 2017, 16:21

Дополнение: инструмент "Processing -> Polygonize" работает нормально и без возни с топологией.
Редактор материалов, модератор форума

Аватара пользователя
Игорь Лебедь
Завсегдатай
Сообщения: 452
Зарегистрирован: 24 апр 2010, 19:47
Репутация: 101
Откуда: Город в клёнах и акациях
Контактная информация:

Re: Линии в полигоны

Сообщение Игорь Лебедь » 21 авг 2017, 18:14

Александр Мурый писал(а):
21 авг 2017, 14:00
В "чистой" QGIS исправить на настоящий момент это нельзя. Импорт в GRASS, прогонка через модуль <v.clean> дала нужный результат (кроме тех мест, где линии вообще не доведены).
Спасибо за проверку, придётся разбираться с грасс. Вообще странно работает прилипание в QGIS - при настроенном прилипании к вершинам с порогом в 20 м - столько ошибок.

Аватара пользователя
Игорь Белов
Гуру
Сообщения: 2227
Зарегистрирован: 04 янв 2011, 22:00
Репутация: 1500
Откуда: Казань

Re: Линии в полигоны

Сообщение Игорь Белов » 21 авг 2017, 21:14

Так Вы порог в единицах карты задавали! Сколько же метров на пиксель было на экране при оцифровке? Если больше 20 м, замыканий вообще не должно быть.
The purpose of computing is insight, not numbers

Ответить

Вернуться в «Ошибки QGIS»

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

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