13

How to split a line layer using another point layer in QGIS?

I have one point layer and one line layer. I want to split the line layer between two points (those two points belongs to point layer) using QGIS. how can I perform this splitting using QGIS?

I used v.split for splitting the line layer, but I am not getting any output.

2
  • 2
    I don't think you can split lines based on points unless the points overlap the lines, if you want to split lines between two points that are not overlapping the line, you can try to convert your points to a line first ( make a line using the points you want to split the original line with) and use that to split your lines. Commented Mar 10, 2016 at 5:43
  • Please, do not forget about "What should I do when someone answers my question?"
    – Taras
    Commented Oct 5, 2021 at 5:01

4 Answers 4

18

There is the SAGA's "Split Lines at Points" module (search in the Processing Toolbox Ctrl+Alt+T: QGIS Processing Toolbox > SAGA > Vector line tools)

enter image description here

In the above example all my points are within 2.8 m (or 2.9 m) from those white lines. Setting Epsilon to 3.0 covers these gaps.

enter image description here

2

I just added the algorithm "Split Lines At Nearest Points By Condition" to ProcessX Plug-In. It can also handle Multilines, Z and M values, but only gives good results in projected CRS'. You can also use a maximum distance to points or two optional expression/attribute conditions to find matching points.

enter image description here

Disclaimer: I am the author of the Plug-In. I tried to explain the used method of this algorithm in this answer.

1
  1. Shortest line between features, to create a line between each point and nearest line. Maximum number of neighbors = 1 and set a maximum distance.
  2. Extend lines to make it a little bit longer in each end to be sure it overlaps the line that should be split
  3. Split with lines

enter image description here

-3

A practical non programming answer is to make a buffer of the points you want to use. Then cut them into the lines so that you run a snap process knowing the threshold you have to use from the previous buffer.

1
  • 1
    this will produce multiple cuts.
    – sutan
    Commented May 12, 2023 at 15:03

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service and acknowledge you have read our privacy policy.

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