The rmdangle tool in v.clean usually behaves exactly the way I would expect it to, but occasionally it does not.

I have a vector generated from a raster using r.thin and r.to.vect that has numerous dangles. In the attached screenshot there are what appear to be two dangles with lengths of ~2 and ~5 ft. The two terminal polylines of what appears to be the core vector are 16 ft and 11 ft (27 ft combined). The pre-clean vector is gray, the cleaned vector is red, vertices are displayed as points derived using v.to.points.

After running v.clean tool=rmdangle thresh=30 the resulting vector (in red) removes one of the dangles plus what appears to be the two terminal polylines of the core vector, while leaving the smaller dangle attached. I tried running v.edit tool=merge or v.build.polylines before cleaning, but got the same results.

How does v.clean decide which line segment to remove as a dangle? Is there a way to force it to remove the line segment that leaves the longest possible remaining vector?

My workaround has been to run v.clean repeatedly with increasing thresholds, which I think removes the shortest line segment on each pass.

Thanks, -Dwight

<<inline: v.clean_rmdangle.png>>


_______________________________________________
grass-user mailing list
[email protected]
http://lists.osgeo.org/mailman/listinfo/grass-user

Reply via email to