Мне было интересно, есть ли способ создать центральные линии из полигонов в QGIS? У меня есть слой многоугольника, но в идеале центральные линии нужны как отдельный файл.
Мне было интересно, есть ли способ создать центральные линии из полигонов в QGIS? У меня есть слой многоугольника, но в идеале центральные линии нужны как отдельный файл.
Ответы:
Я работал над реализацией модели, изображенной в ответе @ RajGovind на Создание осевых линий из дорожных многоугольников / обшивок? что довольно близко к тому, что @geogeek описал в своем ответе здесь, в этой теме.
Вы можете скачать модель с Github https://raw.githubusercontent.com/anitagraser/QGIS-Processing-tools/master/2.12/models/polygon_to_centerline.model
Вы можете попробовать этот алгоритм:
get vertices from the polygons(poly_vertex).
-make voronoi using (poly_vertex) as input the result could be called(poly_voronoi).
-get lines from (poly_voronoi) => (poly_voronoi_lines).
-get the originale polygon contour (polygon_lines).
-remove (poly_voronoi_lines) touching (polygon_lines) the result is supposed to be the center lines , but you may need further clean up.
я не знаю, как это можно реализовать в Qgis
Я хотел бы, чтобы это могло помочь
есть хороший инструмент с названием ET GeoWizards 10.2 для продуктов Esri, но я не знаю, хорошее ли это решение или нет ...
Вы можете получить некоторую информацию здесь
кроме этого в траве вы можете проверить функцию r.thin для основного использования.
r.thin - тонкие ненулевые ячейки, обозначающие линейные объекты в слое растровой карты.
я надеюсь, что это поможет вам ...
просто найдите длину всего этого
Как именно должен быть результат? Приближением является периметр, деленный на 2.
Чтобы получить лучший результат: Вы можете вручную измерить некоторые полигоны. Затем определите разницу между измерением и периметром, деленным на 2 . Примените этот поправочный коэффициент ко всему набору данных.