Jak podzielić linie na równe segmenty za pomocą QGIS?

11

Usiłuję podzielić zakrzywioną (wiggle) linię na segmenty o równej długości. Użyłem Grassa v.split, który działa do pewnego stopnia, ale nie zapewnia wyjścia, którego szukam.

v.split wyodrębni długości segmentów na podstawie „maksymalnej długości segmentu” lub „maksymalnej liczby wierzchołków w segmencie”. Tak więc, jeśli chcę podzielić linię na segmenty 10-metrowe i użyć maksymalnej długości segmentu wynoszącej 10, wówczas wszystkie moje segmenty są krótkie, np. 9,98 lub 9,6. dla pojedynczych linii, poruszaj się lub prosto.

Zamiast tego mam na przykład linię 55 m: Zacznij od jednego końca i umieść węzeł / punkt co 10 m wzdłuż linii, aż dotrze do końca. W powyższym przypadku zostałby podzielony na 6 segmentów, przy czym ostatni segment miałby 5 m długości, a wszystkie pozostałe 10 m.

Czy jest lepszy moduł?

Starowina
źródło
Więc jeśli masz linię 55 metrów, co powinno się stać?
BradHards
Zacznij od jednego końca i umieść węzeł / punkt co 10 m wzdłuż linii, aż dojdzie do końca. W powyższym przypadku zostałby podzielony na 6 segmentów, przy czym ostatni segment miałby 5 m długości, a wszystkie pozostałe 10 m.
Geezer
Czy technika w gis.stackexchange.com/questions/27102/… pomaga ci?
BradHards

Odpowiedzi:

2

Rozumiem, że twoje tagi są powiązane z QGIS i Grass, ale poprosiłeś o inne opcje. Do wykonania tego zadania użyłem ETGeoWizards i XTools (wtyczek ArcMap); z wielkim sukcesem.

Ryan Garnett
źródło
1
Parę razy tęsknię za Arc.
Geezer
Potrzebuję tylko więcej programistów, aby przenieść niektóre dobre rzeczy z Arc do QGIS .... podpowiedź ;-)
Ryan Garnett 5'14
2

Najlepszym i najłatwiejszym rozwiązaniem wydaje się być wtyczka „ProfileFromLine”, która niestety nie jest dostępna w wersji 2.0. Bardzo szybki i łatwy w użyciu, w wersji 1.8.

Starowina
źródło
Możesz spróbować Station lineswtyczki. Nie dzieli się, ale przylega do pożądanej odległości. Może być konieczne przecięcie warstw w celu podzielenia linii w drugim przebiegu.
AndreJ
2

Obecna wersja QGIS (QGIS 3.0+) ma opcję Force segments to be exactly of a given length, except for the last onekorzystania v.split. v.splitjest dostępny z Processing Toolboxpod GRASS->Vector

wprowadź opis zdjęcia tutaj

użytkownik3386170
źródło