10

I'm attempting to split a curved (wiggle) line into equal length segments. Have used Grass's v.split which works to a degree but does not provide the output I'm after.

v.split will extract segmented lengths based on a "maximum segment length" or "maximum number of vertices in segment". So, if I want to split the line into 10 meter segments and use a maximum segment length of 10 then all my segments come up just short, e.g. 9.98, or 9.6. for individual lines, wiggle or straight.

What I want instead is given for example a 55m line: Start at one end and place a node/point every 10m along the line until it reaches the end. In the case above it would get split into 6 segments with the last segment being 5m long and all the others being 10m.

Is there a better module?

  • So if you have a 55 metre line, what should happen? – BradHards Feb 5 '14 at 1:11
  • Start at one end and place a node/point every 10m along the line until it reaches the end. In the case above it would get split into 6 segments with the last segment being 5m long and all the others being 10m. – Geezer Feb 5 '14 at 1:17
  • Does the technique in gis.stackexchange.com/questions/27102/… help you? – BradHards Feb 5 '14 at 1:21
2

I understand that your tags are related to QGIS and Grass, but you did ask for other options. I have used ETGeoWizards and XTools (plugins to ArcMap) to perform this task; with great success.

  • 1
    I do miss Arc some days. – Geezer Feb 5 '14 at 20:06
  • Just need more developers to port over some of the good things in Arc to QGIS....hint hint ;-) – Ryan Garnett Feb 5 '14 at 20:18
2

The best and easiest solution appears to be the "ProfileFromLine" plugin, which unfortunately doesn't appear to be available for 2.0. Very quick and easy to use, in 1.8.

  • You might try the Station lines plugin. It does not split, but sticks to the desired distance. You might have to intersect the layers to split the line in a second run. – AndreJ Feb 3 '15 at 16:13
2

The current version of QGIS (QGIS 3.0+) has the option to Force segments to be exactly of a given length, except for the last one using v.split. v.split is accessed from the Processing Toolbox under GRASS --> Vector

enter image description here

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service, privacy policy and cookie policy

Not the answer you're looking for? Browse other questions tagged or ask your own question.