I have a vector with some points (about 80) and im generating a buffer around then:
g.run_command(‘v.buffer’, input=‘PocosUTM22s’, output=‘boreholesGrassBuffer’, type=‘point’, distance=‘1000’)
then i want to extract then one by one so i can make a 3d area with extrude command, the problem is that when i run the extract:
my test1 vector has all the points, if a undestand correct the list parameter of v.extract is related with the category, but how can i categorize each area of boreholesGrassBuffer vector?
Well i found out that the problem is that my attribute table is not been copied when i run the v.buffer command, so i dont have a ‘cat’ column as i do on PocosUTM22s vector.
I run the v.buffer with the -t flag and everything is ok now
I have a vector with some points (about 80) and im generating a buffer around then:
g.run_command(‘v.buffer’, input=‘PocosUTM22s’, output=‘boreholesGrassBuffer’, type=‘point’, distance=‘1000’)
then i want to extract then one by one so i can make a 3d area with extrude command, the problem is that when i run the extract:
my test1 vector has all the points, if a undestand correct the list parameter of v.extract is related with the category, but how can i categorize each area of boreholesGrassBuffer vector?
I run the v.buffer with the -t flag and everything is ok now
I wonder if attributes should be copied by default (without need to
set up any flag).
v.buffer fusions the geometries of buffers by default. Keeping the attribute table does not make sens in that case as one buffer geometry can be the result of many different input geometries. This also means that you cannot retrieve the buffer of a specific input geometry.
When you use the -t flag, buffers are cut up into separate parts and each one that is the result of several overlapping buffers has multiple categories. As the man page says: "The resulting buffer areas can have multiple categories, and multiple buffer areas can have the same category. The buffer for the input feature with category X can thus be retrieved by selecting all buffer areas with category X".
Keeping in mind GRASS' topological vector format the current behavior seems the most adequate to me.
I run the v.buffer with the -t flag and everything is ok now
I wonder if attributes should be copied by default (without need to
set up any flag).
v.buffer fusions the geometries of buffers by default. Keeping the
attribute table does not make sens in that case as one buffer geometry can
be the result of many different input geometries. This also means that you
cannot retrieve the buffer of a specific input geometry.
When you use the -t flag, buffers are cut up into separate parts and each
one that is the result of several overlapping buffers has multiple
categories. As the man page says: "The resulting buffer areas can have
multiple categories, and multiple buffer areas can have the same category.
The buffer for the input feature with category X can thus be retrieved by
selecting all buffer areas with category X".
The above is actually a nice and more explicit explanation of what v.buffer
does, especially for (new) users that get confused by the consequences of
GRASS' topological vector format and handling. Why not add this to the
manual page, perhaps something along the line of:
"v.buffer fusions the geometries of buffers by default. Categories and
attribute table will not be transferred (this would not make sense as one
buffer geometry can be the result of many different input geometries). To
transfer the categories and attributes can be done with the *t* flag. This
will result in buffers being cut up where buffers of individual input
geometries overlap. Each part that is the result of overlapping buffers of
multiple geometries will have multiple categories corresponding to those
geometries. Multiple buffer areas can also have the same category. The
buffer for the input feature with category X can thus be retrieved by
selecting all buffer areas with category X (see example below). "
(this would replace: "Categories and attributes can be transferred with the
*t* flag. The resulting buffer areas can have multiple categories, and
multiple buffer areas can have the same category. The buffer for the input
feature with category X can thus be retrieved by selecting all buffer areas
with category X (see example below).")
Keeping in mind GRASS' topological vector format the current behavior
seems the most adequate to me.
I run the v.buffer with the -t flag and everything is ok now
I wonder if attributes should be copied by default (without need to
set up any flag).
v.buffer fusions the geometries of buffers by default. Keeping the
attribute table does not make sens in that case as one buffer
geometry can be the result of many different input geometries. This
also means that you cannot retrieve the buffer of a specific input
geometry.
When you use the -t flag, buffers are cut up into separate parts and
each one that is the result of several overlapping buffers has
multiple categories. As the man page says: "The resulting buffer
areas can have multiple categories, and multiple buffer areas can
have the same category. The buffer for the input feature with
category X can thus be retrieved by selecting all buffer areas with
category X".
The above is actually a nice and more explicit explanation of what
v.buffer does, especially for (new) users that get confused by the
consequences of GRASS' topological vector format and handling. Why not
add this to the manual page, perhaps something along the line of:
"v.buffer fusions the geometries of buffers by default. Categories and
attribute table will not be transferred (this would not make sense as
one buffer geometry can be the result of many different input
geometries). To transfer the categories and attributes can be done with
the *t* flag. This will result in buffers being cut up where buffers of
individual input geometries overlap. Each part that is the result of
overlapping buffers of multiple geometries will have multiple categories
corresponding to those geometries. Multiple buffer areas can also have
the same category. The buffer for the input feature with category X can
thus be retrieved by selecting all buffer areas with category X (see
example below). "
(this would replace: "Categories and attributes can be transferred with
the *t* flag. The resulting buffer areas can have multiple categories,
and multiple buffer areas can have the same category. The buffer for the
input feature with category X can thus be retrieved by selecting all
buffer areas with category X (see example below).")
Done in trunk: r67143. If the result suits you, we can backport to grass70.