I'm working on a polyline network where there are a lot of open-ended lines that I do want, but also a lot that I don't. QGIS's topology checker flags all cases, making it a major hassle to go through everything.

Are there better QGIS plugins for topology, or a way that I can narrow my topology rules?

I am currently going through each case manually, but I'm only on error 350 out of 4500 lol

Situation in detail:

  • Approximately 60k line segments
  • Every line must be connected to at least one other line
  • Many lines have only one connection on purpose
  • Many lines have only one connection because of gaps (mistake)
  • Lots of actual dangles, but also situations flagged as dangles that are correct
  • All errors are at a threshold of <1m, but some purposeful lines are also <1m

Edit: I've used GRASS v.clean, and it's better than the topology checker, but still have to do extensive manual checking.

  • How do you know which dangles are true dangles and which are false positives? Are you deciding this based purely on your own knowledge of the network or are there criteria you know of? Dec 4, 2018 at 15:45
  • @TeddyTedTed my knowledge of the network.
    – jyingling
    Dec 4, 2018 at 16:16
  • If there are no rules for catching true dangles then it won't matter how powerful a topology checker you have. I had a similar issue recently and I found the Join Multiple Lines plugin useful, although that merges lines into a single line and you can't control which line's attributes the new line takes so it may not work for you. Dec 4, 2018 at 16:29

1 Answer 1


While you're in GRASS, it may help to run your layer through v.clean.snp which would allow you to take care of your missing connections by snapping ends within a given tolerance. It will be hard to be able to keep 'purposeful lines' <1m if the tolerance for snapping is the same. The v.clean.rmdangles can set a tolerance but not sure how you will distinguish.

The only thing that comes to mind for distinguishing purposeful and arbitrary is checking out the network tools v.net.components (which will allow you to get strong and weak visualizations of pieces of your network) and v.net.spanningtree. I have not used them that much but may help you figure out how to attribute pieces you want to keep and what you don't. I would read the GRASS manual for these and see if they may help you.

Hope this helps


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.