Provided by: grass-doc_6.4.3-3_all bug


       v.what.vect  - Uploads vector values at positions of vector points to the table.


       vector, database, attribute table


       v.what.vect help
       v.what.vect  vector=name   [layer=integer]   column=string  qvector=name  [qlayer=integer]
       qcolumn=string  [dmax=float]   [--verbose]  [--quiet]

           Vector map to modify

           Layer in the vector to be modified
           Default: 1

           Column to be updated with the query result

           Vector map to be queried

           Layer of the query vector containing data
           Default: 1

           Column to be queried

           Maximum query distance in map units
           Default: 0.0


       v.what.vect transfers attributes from the qvector's map attribute table into the attribute
       table of points present in the vector map. The script is based on v.distance.


       The  upload column, into which the query results are stored, must be present in the vector
       map. Use v.db.addcolumn to add one if needed.

       Use dmax parameter to control query distance tolerance (how far  points/centroids  can  be
       from qvector features). For more options, use v.distance instead.

       In  case  of  a  multipoint input vector map, with several points having the same category
       number, it can happen, that the query result is NULL, if the same  category  number  falls
       into different qvector polygons.

       When  transferring  attributes  from  a point map to a polygon map, usually dmax has to be
       larger than zero (determined by distance between query points and polygon centroids).


       In this example, the 'hospitals' point map in the North Carolina location is copied to the
       current  mapset,  a new attribute column is added and the urban names from the 'urbanarea'
       polygon map are transferred to the 'myhospitals' map at the hospital points' locations:
       g.copy vect=hospitals,myhospitals
       v.db.addcol myhospitals column="urb_name varchar(25)"
       v.what.vect myhospitals qvect=urbanarea column=urb_name qcolumn=NAME
       # verification: myhospitals

       In this example, city names, population data and more from country files  are
       transferred  to  selected  EU CORINE landuse/landcover classes ("Continuous urban fabric",
       111, and "Discontinuous urban fabric", 112).  Note: Example in UTM projection to which the
       input maps have been projected beforehand to have metric distances support:
       # extract populated places from geonames
       v.extract geonames_IT where="featurecla='P'" output=geonames_IT_cities
       # add new column
       v.db.addcol corine_code111_112_cities column="gnameid double precision"
       # transfer geonameid (3000m maximal distance between points and centroids)
       v.what.vect corine_code111_112_cities qvect=geonames_IT_cities column=gnameid \
                   qcolumn=geonameid dmax=3000
       # now gnameid can be used for v.db.join to join further
       # attributes in from


        v.db.addcol,, v.distance, v.rast.stats, v.what.rast


       Markus Neteler

       Last changed: $Date: 2012-11-26 03:49:24 -0800 (Mon, 26 Nov 2012) $

       Full index

       © 2003-2013 GRASS Development Team