Удаление "мусорных линий"

Вопросы по свободной ГИС QGIS. Сообщения об ошибках, предложения по улучшению, локализация.
Ответить
krasheninnikov
Новоприбывший
Сообщения: 1
Зарегистрирован: 14 сен 2018, 11:44
Репутация: 0
Откуда: Саратов

Удаление "мусорных линий"

Сообщение krasheninnikov » 14 сен 2018, 11:52

Добрый день! Я новичок в QGIS, прошу подсказать в следующей ситуации:
Имеется шейп-файл с изолиниями, у каждой своя высотная отметка в атрибутивной базе. Данный шейп получен из панхроматического SRTM. Присутсвуют "мусорные линии" которые нужно удалить. Линия из двух или трех точек, с несущественными данными.
В ручную каждую выделять крайне долго.
Пробую через "выбрать по выражению" с оператором point_n(), не выделяет ничего, length( ) выделяет все.
Так же пробовал через "вектор" -> "проверить геометрию", однако постоянно получаю аварийное закрытие программы.
Чувствую что есть очень простой способ решения моей проблемы, но его я не знаю)

Аватара пользователя
antonv
Активный участник
Сообщения: 229
Зарегистрирован: 29 ноя 2016, 10:44
Репутация: 114
Откуда: Санкт-Петербург

Re: Удаление "мусорных линий"

Сообщение antonv » 15 сен 2018, 15:04

krasheninnikov, попробуйте так: у вас изолинии наверняка в WGS84, сначала пересохраните их в какую-нибудь проекцию в метрах (только не в 3857), а потом добавьте им через калькулятор поле, заполнив его функцией $length - она даст результат в метрах. Откройте атрибутивную таблицу, отсортируйте записи по этому новому полю по возрастанию. Выделите через shift первые сколько-то записей, с длиной, которой посчитаете "мусорной".

Аватара пользователя
Prince660
Активный участник
Сообщения: 164
Зарегистрирован: 25 мар 2011, 20:12
Репутация: 15
Ваше звание: Питоновод
Откуда: г. Симферорполь
Контактная информация:

Re: Удаление "мусорных линий"

Сообщение Prince660 » 17 сен 2018, 21:02

Ещё есть вариант написать простой скрипт на питоне, который будет считать точки в линиях и пересохранять в другой файл только линии в которых больше 3х точек, и/или больше какой-то длинны.

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

Re: Удаление "мусорных линий"

Сообщение gamm » 17 сен 2018, 22:45

Тогда уж лучше записать длину в поле, и сделать выборку. А еще лучше сгладить растр до нужной детальности.

Ответить

Вернуться в «QGIS»

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

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