Hi,
I'm using v.overlay to intersect two layers : mpnetwork and
management_polygones.
The output layer is base_cells.
I'm wondering why some of the initial attribute values aren't kept in
the outputted merged table :
Vector 14 of management_polygons has a value for area_tot attribute :
GRASS 6.2.0 (ALMERIA):~/Documents/ucl/alert/grass > v.db.select
map=management_polygones column=cat,area_tot where="cat=14"
cat|area_tot
14|1195927.2564
In the merged attribute table, it seems that b_area_tot for b_cat 14 is
null ... :
GRASS 6.2.0 (ALMERIA):~/Documents/ucl/alert/grass > v.db.select
map=base_cells column=cat,a_cat,b_cat,b_area_tot where="b_cat=14"
cat|a_cat|b_cat|b_area_tot
62|18|14|0
63|2|14|0
65|2|14|0
67|41|14|0
70|35|14|0
73|1|14|0
86|13|14|0
87|8|14|0
105|31|14|0
113|32|14|0
118|39|14|0
119|37|14|0
121|40|14|0
131|3|14|0
132|6|14|0
133|28|14|0
How is this possible ? The merged attribute table should keep all the
input values according to the documentation. Am I wrong ?
Didrik
PS : running Grass 6.2.0 on a Debian system
Stranger,
I've tested the following : create the intersection from layer B to
layer A compared with intersection from layer A to layer B :
CASE 1 :
v.overlay ainput=mpnetwork atype=area binput=management_polygones
atype=area output=base_cells operator=and
CASE 2 :
v.overlay ainput=management_polygones atype=area binput=mpnetwork
atype=area output=base_cells operator=and
The resulting intersection are different and seems to be uncorrect :
CASE 1 :
GRASS 6.2.0 (ALMERIA):~/Documents/ucl/alert/grass > v.db.select
map=base_cells column=a_cat,b_cat,a_area_tot,b_area_tot where="a_cat=37"
a_cat|b_cat|a_area_tot|b_area_tot
37|10|1000000|15000
37|13|1000000|0
37|1|1000000|0
37|8|1000000|0
37|14|1000000|0
37|11|1000000|1527000
CASE 2 :
GRASS 6.2.0 (ALMERIA):~/Documents/ucl/alert/grass > v.db.select
map=base_cells column=a_cat,b_cat,a_area_tot,b_area_tot where="b_cat=37"
a_cat|b_cat|a_area_tot|b_area_tot
... this is a very strange behaviour ... the CASE 1 gives the correct
intersection and not the CASE2 ...
Didrik
I've made some progress :
Using two grid generated to test the intersection problem, I get correct
intersection and correct attribute table.
So the problem is related to the input file I'm using...
Here is a screenshot of the two layers :
http://downloads.itae.be/grass_overlay.jpg
Is there any reason why the overlay operation seems to be correctly done
but the attribute table is not correctly created ?
Didrik
Le jeudi 11 janvier 2007 à 17:08 +0100, Didrik Pinte a écrit :
I've made some progress :
Using two grid generated to test the intersection problem, I get correct
intersection and correct attribute table.
So the problem is related to the input file I'm using...
Here is a screenshot of the two layers :
http://downloads.itae.be/grass_overlay.jpg
Is there any reason why the overlay operation seems to be correctly done
but the attribute table is not correctly created ?
Didrik
After lots of investigation, it seems all of this was related to the use
of the DBF backend.
I've switched to postgres and everything works fine now.
I've reported a bug on the grass bugtracker but I cannot add comments to
it. Does anybody knows how to get a login on Intevation RT ?
Didrik