On Mar 19, 2008, at 12:53 PM, Nikos Alexandris wrote:
On Wed, 2008-03-19 at 12:12 -0700, John C. Tull wrote:
On Mar 19, 2008, at 11:08 AM, Nikos Alexandris wrote:
John,

maybe you could try

v.clean with type=line,boundary,centroid,area tool=snap,break,rmdupl
thresh=.01

Not sure but I suspect the "break" tool is what you might need.

And then of course the rest with v.centroids


Nikos,

Thanks for the suggestion. I seem to be getting closer. I ran v.clean
as you suggested, then ran v.clean with tool=chdangle and a really big
threshold value.
Ah.. ok!


Now many more areas are available, but there are
still quite a few apparently closed polygons that are not being picked up as areas. I'm playing around with different thresholds for snap and
various permutations of the various operations.

So, if I understand, the idea is:

lines to boundaries (v.type) > snap (close open boundaries) + chdangle
(dangles from boundary to line) >  v.centroids

Maybe I misunderstood the "break" tool here. I thought it would help but
maybe it's irrelevant (?)

If it's not too much work could you copy-paste your commands (if
successful)?


Thank you,

Nikos



Here was what worked best for me. My snap value needed to be pretty large because I noticed the leftover polygons that were not available as areas had disconnected lines in the midst of the polygon or unconnected boundaries. The break option could not have hurt, so it was a good suggestion. Below is what I ended up doing, although there may yet be better methods yet undiscovered...

Clean the original road vector
v.clean in=roads_plus out=roads_clean type=line,boundary,centroid,area tool=snap,break,rmdupl,rmline thresh=40 --o
Change the lines to boundariess
        v.type in=roads_clean out=roads_bounds type=line,boundary --o
Clean the vector again to rid boundaries where they should be lines
v.clean in=roads_bounds out=roads_clean type=line,boundary,centroid,area tool=chdangle,chbridge thresh=1000000000,0.01 --o
Make areas
        v.centroids in=roads_clean out=roads_areas --o

I lose some resolution when I increase the snap threshold because snapping seems to prune vertices in lines by snapping those vertices within the threshold to a single vertex. Is there a way to suppress this so only vertices at the end of lines are snapped?

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

Reply via email to