Use dmax parameter to control query distance tolerance (how far points/centroids can be from query_map features). For more options, use v.distance instead.
In case of a multipoint input map 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 query_map 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).
g.copy vect=hospitals,myhospitals v.db.addcolumn myhospitals column="urb_name varchar(25)" v.what.vect myhospitals query_map=urbanarea column=urb_name query_column=NAME # verification: v.db.select myhospitals
In this example, city names, population data and more from Geonames.org 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 query_map=geonames_IT_cities column=gnameid \ query_column=geonameid dmax=3000 # now gnameid can be used for v.db.join to join further # attributes in from geonames.org
Last changed: $Date$