Страница 1 из 1
Центральна линия (или скелет)
Добавлено: 23 апр 2019, 20:14
Dmitry Stasev
Есть пересечение 2-х полигонов, хочется "поделить его поровну"

- 3.png (14.79 КБ) 3754 просмотра
Подскажите, есть ли для QGIS плагин, позволяющий провести центральную линию вытянутого объекта.
Может быть есть какие идеи/алгоритмы.
Re: Центральна линия (или скелет)
Добавлено: 24 апр 2019, 14:44
nikost
Я когда-то мучался с центральными линиями полигонов - ничего лучшего чем загрузить полигоны в GRASS, и сделать по ним (точнее по точкам вершин) полигоны Вороного со скелетными линиями не придумал.
Код: Выделить всё
v.voronoy -s input = input_polygons@PERMANENT output=voronoi_skleton
Где флаг
-s собственно отрисовывает центральные линии (скелетоны) входных полигонов
Получается как-то так:

- 2019-04-24 14_42_15-GRASS GIS Map Display_ 1 - newLocation_PERMANENT.png (69.09 КБ) 3713 просмотров
Re: Центральна линия (или скелет)
Добавлено: 24 апр 2019, 15:33
Dmitry Stasev
Спасибо,nikost, в этом направлении и иду, только хочу без GRASS обойтись
полигоны Вороного уже рисую )
Re: Центральна линия (или скелет)
Добавлено: 24 апр 2019, 18:40
gamm
Dmitry Stasev писал(а): ↑24 апр 2019, 15:33
полигоны Вороного уже рисую
точек побольше в границу навставляйте.
А вообще, лучше делать на растре - построить дистанционное преобразование от границ, взять две точки и построить путь максимальной стоимости, взяв построенное расстояние как стоимость. А потом упростить этот путь каким-нибудь Дугласом-Пукером.