[GRASSLIST:9436] v.extract and vector table

I'm trying to dissolve the boundaries between adjacent areas which have common attributes in their vector database. I understand that the best tool for this is v.extract. The maps are derived from vmap0 political boundary coverages; the problem with these is that the maps were tiled, so regions span across adjacent ex-tiles, with the same names and other attributes. I'd like to end up with a single area and centroid for each region, with the original database attributes.

As a test I tried it with one regional unit, BURDUR. If I run

v.extract input=polbndr output=burdur type=point,line,boundary,centroid,area,face layer=1 new=-1 where=a_nam='BURDUR' -d

with new=-1, it doesn't merge the two areas because the category values are different in the two areas. So I try assigning a new category:

v.extract input=polbndr output=burdur2 type=point,line,boundary,centroid,area,face layer=1 new=500 where=a_nam='BURDUR' -d

This merges the vectors properly, but this doesn't seem to create a new table for the newly created vector. The centroid has the proper category, but there is no table associated. Do I have to create a new table by hand and then link the vector to this table? Or is there an easier way to do this? I don't look forward to doing each administrative unit which spans different tiles on these vmap0 maps.

Any help would be gratefully appreciated.

Nick Cahill

Until somebody adds -d to v.reclass you have to do it in 2 steps:

v.reclass (to get the same cat for areas you want to merge)
v.extract (to dissolve common boundaries)

Radim

On 12/13/05, Nick Cahill <ndcahill@facstaff.wisc.edu> wrote:

I'm trying to dissolve the boundaries between adjacent areas which
have common attributes in their vector database. I understand that
the best tool for this is v.extract. The maps are derived from vmap0
political boundary coverages; the problem with these is that the maps
were tiled, so regions span across adjacent ex-tiles, with the same
names and other attributes. I'd like to end up with a single area and
centroid for each region, with the original database attributes.

As a test I tried it with one regional unit, BURDUR. If I run

v.extract input=polbndr output=burdur
type=point,line,boundary,centroid,area,face layer=1 new=-1
where=a_nam='BURDUR' -d

with new=-1, it doesn't merge the two areas because the category
values are different in the two areas. So I try assigning a new
category:

v.extract input=polbndr output=burdur2
type=point,line,boundary,centroid,area,face layer=1 new=500
where=a_nam='BURDUR' -d

This merges the vectors properly, but this doesn't seem to create a
new table for the newly created vector. The centroid has the proper
category, but there is no table associated. Do I have to create a new
table by hand and then link the vector to this table? Or is there an
easier way to do this? I don't look forward to doing each
administrative unit which spans different tiles on these vmap0 maps.

Any help would be gratefully appreciated.

Nick Cahill