Как разбить линии на равные сегменты с помощью QGIS?


11

Я пытаюсь разбить изогнутую (покачивающуюся) линию на сегменты равной длины. Использовали v.split Грасса, который работает до некоторой степени, но не обеспечивает вывод, который я ищу.

v.split будет извлекать сегментированные длины на основе «максимальной длины сегмента» или «максимального количества вершин в сегменте». Итак, если я хочу разделить линию на 10-метровые сегменты и использовать максимальную длину сегмента 10, тогда все мои сегменты будут короткими, например, 9,98 или 9,6. для отдельных линий, покачиваться или прямо.

Вместо этого я хочу дать, например, линию 55 м: начните с одного конца и размещайте узел / точку каждые 10 м вдоль линии, пока она не достигнет конца. В приведенном выше случае он будет разделен на 6 сегментов, последний из которых будет длиной 5 м, а все остальные будут 10 м.

Есть ли лучший модуль?


Так что, если у вас есть линия 55 метров, что должно произойти?
BradHards

Начните с одного конца и размещайте узел / точку каждые 10 м вдоль линии, пока она не достигнет конца. В приведенном выше случае он будет разделен на 6 сегментов, последний из которых будет длиной 5 м, а все остальные будут 10 м.
Geezer

Помогает ли вам метод в gis.stackexchange.com/questions/27102/… ?
BradHards

Ответы:


2

Я понимаю, что ваши теги связаны с QGIS и Grass, но вы просили другие варианты. Я использовал ETGeoWizards и XTools (плагины для ArcMap) для выполнения этой задачи; с большим успехом.


1
Я скучаю по Arc несколько дней.
Geezer

Просто нужно больше разработчиков перенести некоторые хорошие вещи в Arc на QGIS .... подсказка ;-)
Райан Гарнетт

2

Лучшим и самым простым решением является плагин ProfileFromLine, который, к сожалению, недоступен для 2.0. Очень быстрый и простой в использовании, в 1.8.


Вы можете попробовать Station linesплагин. Он не расщепляется, а прилипает к нужному расстоянию. Возможно, вам придется пересечь слои, чтобы разбить линию во втором прогоне.
AndreJ

2

Текущая версия QGIS (QGIS 3.0+) имеет возможность Force segments to be exactly of a given length, except for the last oneиспользовать v.split. v.splitдоступ из- Processing Toolboxпод GRASS->Vector

введите описание изображения здесь

Используя наш сайт, вы подтверждаете, что прочитали и поняли нашу Политику в отношении файлов cookie и Политику конфиденциальности.
Licensed under cc by-sa 3.0 with attribution required.