[GRASS-user] V.overlay very slow

Markus Metz markus.metz.giswork at googlemail.com
Tue Dec 15 09:56:26 EST 2009


If you just want to create one big vector with all features present in 
several other vectors, try v.patch followed by v.clean.

For cleaning after patching areas, you will need at least to break 
polygons and remove duplicates. If topology is still not correct, try 
cleaning small angles at nodes followed by breaking lines, then remove 
duplicates. If topology is still not correct, snapping vertices may be 
necessary, here try a very small threshold first. Also see the v.patch 
manual.

Hope that helps,

Markus


incanus wrote:
> Hi all,
> I'm trying to join a large set of "vectorial tiles" that i have, into a
> unique vectorial map. What i'm doing is something like this, for each "tile"
> (in the example is called filaN):
>
> v.overlay ainput=sumaFilas atype=area alayer=1 binput=fila6 btype=area
> blayer=1 output=sumaFilas2 operator=or olayer=1,0,0
> v.db.addcol map=sumaFilas2 layer=1 'columns=union INTEGER'
> v.db.update map=sumaFilas2 layer=1 column=union value=1 
> v.dissolve input=sumaFilas2 output=sumaFilas2 layer=1 column=union
> --overwrite
> g.remove vect=sumaFilas
> g.rename vect=sumaFilas2,sumaFilas
>
> At first, the v.overlay is instant, but when processing the map number 100,
> it can be several hours.
>
> Anyone knows an alternate way to do this?
> The first solution I adopted was making this by rows of 100 "tiles", and
> then joining the rows (what i'm doing in the example above). It worked for
> me since i only has todo a "small" map (1 week of processing), but now i
> need to do one MUCH more big.
>
> Thanx in advance if anyone knows something.. or not :)
> Andres
>   


More information about the grass-user mailing list