[GRASS-user] Large vector files

Hamish hamish_nospam at yahoo.com
Thu Oct 12 03:17:25 EDT 2006


Hamish wrote:
> Ok, this is the key -- step 1 is to crop the data to your region of
> interest. After that (presumably) less than several million points
> remain and you can use the vector engine without further problems.
> Then just repeat for each management polygon.
> 
> So what is needed is a point in polygon pre-filter.
> 
> I can see a couple of ways to do this, the easiest is to find the
> extent of the management polygon (v.extract + "g.region vect=" or
> "v.info -g") and only import values within that range. Then if the
> polygon isn't just the region rectangle you can use v.select on the
> cropped point dataset  to refine it.
> 
> the pre-filter:
> * simple awk script if(x<Max && x>=Min), ...
> 
> * add a "-r" flag to v.in.ascii to only import points falling within
> the current region.


Hi,

here is a quick prototype of a "-r" flag. If it is useful we can clean
it up and add it to CVS.

http://bambi.otago.ac.nz/hamish/grass/r.in.xyz/v.in.ascii_RegionCrop.tgz

* use g.region to set region of interest first
    (use "g.region vect=" or "v.info -g" ?)
* "r.in.xyz -s" is useful for scanning data file's extent
* DDD:MM:SS input should be ok, but untested


Hamish


n.b. The v.in.ascii code is a real mess! I feel bad about grafting yet
another feature into the pile.




More information about the grass-user mailing list