[GRASS-user] keeping simple areas after v.buffer

Moritz Lennert mlennert at club.worldonline.be
Tue Mar 7 04:50:05 PST 2017


On 07/03/17 13:39, Ken Mankoff wrote:
> Hi List,
>
> I have a vector layer of points. After I expand the points to areas
> with:
>
> v.buffer -t input=in output=out distance=500
>
> some of the out areas overlap. I'd like to plot one area like this:
>
> d.vect out where="cat == 2" fill_color=none

If border lines are not important, you could do the contrary:

d.vect out where="cat == 2" color=none

> I can't seem to to use v.clean on the entire vector. Before plotting
> one area I can extract it with v.extract and then v.clean with
> tool=rmarea,

Just running v.extract -d is enough, no need for v.clean.

> but this seems like an overly complicated approach, and
> the original DB still has the issue.

We do not consider this an issue, but a feature ;-)

> Is there another tool to clean
> this up, or another way to generate the buffers around the points, to
> avoid this issue?

No, AFAIK, the only two solutions you have are to either

1) loop over the points and call v.buffer on each one on its own
2) after creating all buffers at once, loop over the cat values and 
extract each buffer into a separate map using v.extract -d.

The big question is: besides the question of aesthetics in 
visualisation, do you have another reason why you wish to have each 
buffer (including overlapping ones) separate ?

Moritz


More information about the grass-user mailing list