[GRASS-user] Overlapping polygons and v.distance
Adam Wilson
adammichaelwilson2 at gmail.com
Wed Dec 10 09:13:03 EST 2008
Greetings all,
Summary: I would like to request that the v.distance function be updated
(with a flag?) to allow reporting of multiple categories in one layer.
Example of why this can be important:
I am working with historical forest fire data and want to extract histories
for different points. I start with a shapefile that contains many (1000s)
of polygons, many of which overlap in x-y space but vary over time (time
information is in the attribute table). I could separate this into separate
shapefiles (one for each year) prior to importing to GRASS, but this would
result in almost 100 different layers and I would rather avoid it. When I
import it into grass using v.in.ogr, it is topologically cleaned and the
result is a layer of (intersected) polygons, many of which have multiple
categories that link to the attribute table. For example, a single polygon
could have burned in multiple years, so it is linked to multiple rows in the
attribute table. These multiple categories are visible with "v.category -g
input=fire option=print" which results in something like this:
2452
2452/2540
2452/2526/2540/2543
2540/2575
2406/2420/2517/2563/2581/2584
2406/2420/2517/2563/2581
2416/2452/2536
Where each row is a unique polygon and the different elements are the
various categories (rows in the attribute table) that are linked to it. So
far so good. But what I want to do is extract the fire history for a number
of points, but v.distance only reports the last category for each polygon
(which in my case is usually only the most recent fire) and reports "*WARNING:
more cats of to_layer*." So there seems to be a hidden ID value for each
polygon (which would correspond to the invisible row number in the output
above) but I cannot seem to access it directly. If I could, then it would
be possible to v.distance to that ID, then use the output above to link a
given point to several fire records.
If v.distance was updated to include multiple categories in the same layer,
I would be able to do this easily. This has been proposed before:
http://www.mail-archive.com/grass-user@lists.osgeo.org/msg02056.html. I
would like to encourage this revision (though maybe with a -m flag so you
could turn this feature on if wanted). It would ideally (for me) return a
table with multiple records for each point, each with an attribute from the
polygon layer. For example, something like this:
point | fireyear
1 1950
1 1975
1 2002
2 1960
2 1972
3 1954
In the short term, does anyone have any ideas on how I can get extract this
data?
Thanks for any ideas,
Adam Wilson
-------------- next part --------------
An HTML attachment was scrubbed...
URL: http://lists.osgeo.org/pipermail/grass-user/attachments/20081210/1f1fb8e3/attachment-0001.html
More information about the grass-user
mailing list