I'm doing my internship in a consulting office which is switching from MapInfo to QGIS/GRASS 1.8.0.

I posted here a few days ago about the way to clean a polyline from a Lidar data with v.clean.

I've tried all algorithms possible, made every test I could try, without obtaining a cleaned polyline without any topological error.

Now I'm working on many other projects, and I realize that most of data coming from MapInfo or ArcGIS users are full of topological errors for QGIS/GRASS.

I'm feeling fear growing up, because I still didn't find the way to clean all those data with QGIS/GRASS. And I've tried all I could.

I used break then rmdangle to erase dangles with a good threshold, but it didn't work every time. I tried rmarea to erase some little islands of lines but it don't work if you want to keep the main polyline, I tried snap to full the holes in the line but it creates more artifacts if the threshold is too high, and it don't snap if the threshold is too small.

I think that it is obviously a big question that anyone working with QGIS/GRASS in a professional environment must face. But on the other hand I'm very surprised to see that many people like me asking help for this problem finally never find answers. Is it a taboo subject ? Or is it so simple to use v.clean that there's no comment to do ?

So I'm addressing those who often need at work to clean their layers with a hundred errors of all kind (double geometry, dangles, self-intersection...).

How do you success at cleaning it until you have 0 errors ?

Usually, people says "v.clean is powerful, you just need to launch rmdangle for dangles...". I just give you a quote from GRASS documentation : " Topological errors can be corrected either manually within v.digit or, to some extent, automatically in v.clean."

What is "some extent" ? From my small experience, it seems not to be a very large extent...and if this extent is very small, do you correct all the other errors manually ? Is there more option than v.clean to correct topology ?

I promise that if I find the answer, I'll post a very complete tutorial for beginners and idiots like me.

Thank you very much for your help, I think we are numerous to struggle with topology !!

  • Is the question about topology for lidar or for all other possible forms of datasets from a number of different sources?
    – gm70560
    Apr 30 '13 at 14:14
  • What do you mean by "polyline from LIDAR data"?
    – Micha
    Apr 30 '13 at 14:34
  • The question is about how do you clean your geometry when you're confronted to topological errors from .shp or .tab layer from a non topological database. The lidar example is just to illustrate how I failed trying cleaning a layer using v.clean. Don't focus on this specific example but tell me how YOU do when you're confronted to this kind of situation. Thanks again
    – Samy-DT
    Apr 30 '13 at 14:45
  • Did you find solutions to this? A 'very complete tutorial' would be extremely welcome, since there still doesn't seem to be any good guidance I can find. Even a set of good cleaning examples ...
    – Simbamangu
    Feb 5 '15 at 10:08
  • Same (or related) problem here: So, I imported a .shp file to QGis with polygons from a non-topological database. Polygons were adjacent and shared borders, but most nodes didn't coincide. I then proceeded to fix all nodes and intersections manually (more than 3000) enabling snapping (with a 10 pixel tolerance) and topological editing. Sometimes topology worked and moving the node moved both borders, most of the time it did not. I finished correcting and checking all the nodes, topology checker indicates that there are no invalid geometries but a whole lot of gaps and intersections... except t
    – AmaG
    Apr 23 '18 at 16:32

My favorite saying from one of my professors is, "Garbage in, Garbage Out." No matter the algorithm or method used, there will be no "magic button" that will fix a crummy dataset. Sometimes, the tools will make the data less accurate. No errors, but incorrect.

Each project you will work on will have different requirements. I don't feel a quick map made for a visual aid (not legal purposes) should have to, or need to be be topologically correct. If it is a major city's infrastructure you are working on and you want to trace a burst gas pipe to the nearest valve, then your data had best be in tip top shape. Or if you are digitizing boundaries for legal purposes, your work should be clean, neat, correct.

If making new data, start with a well developed plan and work from there. And then learn from your mistakes. I've taught myself more than any number of classes, lessons by being inexperienced and shortsighted. If going over older data, decide if it is necessary to try to fix it and how, keep it as is, or remake it.

  • Hello, I fully agree with that point of view. Unfortunately, the layers that I have to use are for a green-blue corridor mapping. A lot of data treatment to be expected...The fact is the people who do the digitizing are often not specialist in Geomatics and don't care about topology. And the layers travel from one company to an other, going worst and worst :).
    – Samy-DT
    May 1 '13 at 8:03

Refer to my answer at https://gis.stackexchange.com/a/59566/17606 it might help. Fully agree with gm70560's points!

  • Hello Francesco and thank you for your answer. I answered again in the same link. Bye
    – Samy-DT
    May 1 '13 at 8:07

Some GIS rather hide than show topological errors. In terms of GRASS GIS, you may want to check the related Wiki pages at http://grasswiki.osgeo.org/wiki/Topology . Note that the current GRASS GIS 7 development versions now makes suggestions for snap thresholds in order to assist the user to clean topological errors. Upon import it is also possible to write out the problematic vectors into a separate map for inspection.

  • Is the separate map only for inspection or if you delete the wrong features, it's delete it in the "good layer" too ? I'm gonna test GRASS GIS 7 to see if it's do it better.
    – Samy-DT
    May 1 '13 at 8:06
  • The separate map is a separate map... :-)
    – markusN
    May 3 '13 at 13:43

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.