[GRASS-user] Re: [GRASSLIST:1175] add centroids automatically to area boundaries

Moritz Lennert mlennert at club.worldonline.be
Fri Aug 11 07:33:59 EDT 2006


Ulrich Leopold wrote:
> On Thu, August 10, 2006 15:48, Moritz Lennert wrote:
>> On Thu, August 10, 2006 15:33, Ulrich Leopold wrote:
>>>>> I have a patched vector map with lines. These lines should be converted
>>>>> into area boundaries in order to receive areas. Once boundaries are
>>>>> retrieved I still need  to attach centroids to them in order to overlay
>>>>> with *another* vector map which already consists of boundaries and
>>>>> areas
>>>>> including centroids. How can I achieve this?
>>>>>
>>>>> I tried to convert all lines into boundaries with
>>>>> v.type type=line,boundary
>>>>>
>>>>> It seems to work as there are only boundaries left. Next step would be
>>>>> to add automatically centroids to these boundaries. How can this be
>>>>> done?
>>>> Hi,
>>>>
>>>> see v.category for this. I have added a micro FAQ for this:
>>>> http://grass.gdf-hannover.de/wiki/Convert_vector_types
>>> I tried that already but it did not work. It even changes the polygons
>>> back to
>>> single lines. But good that you opened a micro FAQ to add the solution
>>> later.
>>> Any other ideas?
>> Are you sure your lines are closed, thus defining real areas ? You can
>> check with v.digit.
> 
> I put a screenshot on the WiKi page:
> http://grass.gdf-hannover.de/wiki/Convert_vector_types
> 
> The lines seem to be closed. 

No, all the red nodes are nodes with only one line connected to them, so 
they are not closed.

> But a lot of boundaries are without areas as you
> can see from the legend on the right hand side.
> 
> And v.clean does not do the job. 

could you be more precise ? What options did you use ? Did you try the 
"snap" tool ? With what threshold ? What does "does not do the job" mean ?

> I used v.type to convert from lines to
> boundaries.

This means you just converted the types, but if the lines are not closed 
it is not enough.

> So possibly that the problem are boundaries with no areas? But then how can I
> change that?

Close the lines.

Moritz




More information about the grass-user mailing list