При попытке полигонизировать слой полилинии в PyQGIS, используя
processing.runandload("qgis:linestopolygons",explode_path,polygon_path)
Команда в консоли Python, она не создает полигонов, соответствующих краям линии. Вместо этого он создает многоугольники вдоль изогнутых краев. Почему полигоны не создаются по краям линии?
При полигонизации черные линии должны быть краями созданных полигонов. Вместо этого только несколько осколков создаются вдоль изогнутых краев (синие многоугольники).
processing.runandload("saga:convertlinestopolygons",explode_path,polygon_path)
Ответы:
Получите нужные полигоны, используя алгоритм Polygonize (Processing Toolbox -> Geoalgorithms QGIS -> Polygonize) в консоли Python.
источник
Возникла такая же проблема при использовании инструмента «Линии на полигоны», доступного в меню «Вектор». Получил много маленьких полигонов, хотя данные топологически верны.
У меня работал геоалгоритм QGIS, доступный на панели инструментов обработки.
источник