[GRASS-user] Redefining computational region for vector overlay

Hernán De Angelis dhdeangelis at comhem.se
Sun May 13 04:21:51 PDT 2018


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!

Thanks in advance!

Hernán




More information about the grass-user mailing list