[GRASS-user] Redefining computational region for vector overlay

Moritz Lennert mlennert at club.worldonline.be
Sun May 13 08:05:42 PDT 2018


Le Sun, 13 May 2018 13:21:51 +0200,
Hernán De Angelis <dhdeangelis at comhem.se> a écrit :

> Hello GRASS users!
> 
> I am working to make a certain vector process faster and more
> effective and would like to ask you for some advice on how to proceed.
> 
> I have a vector map containing points and a collection of vector maps 
> containing polygons. My task is to calculate the area covered by
> these polygons en each polygon map but only under buffers of certain
> sizes around each of the points. I understand how to do this. My
> problem is how to do it faster and more effectively.
> 
> Each polygon map contains around 2 million of them. The point map has 
> only ~60 points. Both cover the entire country (Sweden). The buffer 
> zones extend only a relatively small area around each point (up to
> some tens of km). Selecting points and generating buffers around them
> is easy and fast. The problem appears in the overlay operation. The
> vast majority of polygons are not involved in the computations but
> both v.clip and v.overlay seem to need to process them all. This
> takes a long time.
> 
> I wish there could be a way of limiting the number of features
> involved in the computation to the size of each buffer zone in order
> to cut down the processing time. I understand (and confirmed
> empirically!) that setting the computational region does not work for
> vector operations in GRASS (except for v.in.region). I therefore
> wonder what can be done in this respect.
> 
> I am not new to GRASS but have not used it for heavy duty tasks in a 
> long time, my skills have become rusty! Any hint will be greatly 
> appreciated!

I'm a bit surprised that v.overlay is so slow for you. In the the
little alternative (faster) script in [1] I got quite fast results
using v.overlay with other modules. Maybe it can help you identify a
faster way.

Moritz

[1] https://trac.osgeo.org/grass/ticket/3361. 


More information about the grass-user mailing list