[GRASS-user] More on buffering and overlays

First, thanks to Mortiz for pointing out the buffering issue. By adding centroids to the buffered output, that now corresponds to the source set of points.

Overlaying is still causing some pain - I need to explain what I have to ask my question, so bear with me.

One input is a population map divided into adjacent areas. The second input is (mostly) non-overlapping polygons. The aim is to calculate the population which lies inside / outside these polygons (rather like John Field's query which was provided by Mortiz under the recent "strategy required" thread.

ainput = populations
binput = catchment

When I run v.overlay, I get a table output:
cat, a_cat, population, b_cat, catchment_name

However: there are areas within the catchment polygons for which b_cat and catchment_name are null. In this state, they can't be used to count populations, so I have to then run v.distance (dmax=0) to assign the correct b_cat and catchment_names to the nulls.

While it's merely inconvenent rather than being a crisis, I'd be interested to know whether the overlay problem is my own fault, or whether something is going wrong with v.overlay.

Richard

On 27/06/08 02:21, Richard Chirgwin wrote:

First, thanks to Mortiz for pointing out the buffering issue. By adding centroids to the buffered output, that now corresponds to the source set of points.

Overlaying is still causing some pain - I need to explain what I have to ask my question, so bear with me.

One input is a population map divided into adjacent areas. The second input is (mostly) non-overlapping polygons. The aim is to calculate the population which lies inside / outside these polygons (rather like John Field's query which was provided by Mortiz under the recent "strategy required" thread.

ainput = populations
binput = catchment

When I run v.overlay, I get a table output:
cat, a_cat, population, b_cat, catchment_name

However: there are areas within the catchment polygons for which b_cat and catchment_name are null.

I'm not sure I understand: b_cat and catchment_name should only be null in areas where you have ainput, but no binput. In all places where you have binput, these two should be filled in, unless the original binput polygon has null values (i.e. does not have a centroid with a category).

Moritz