[GRASS5] line types

Radim Blazek blazek at itc.it
Tue Apr 9 02:52:28 EDT 2002


On Tuesday 09 April 2002 02:27 am, Roger Miller wrote:
> An alternative would be to fix all the modules so that they actually work
> on either line type.  In the case of the two modules I was talking about
> that means modifying v.llabel to label lines that are typed as either lines
> or area edges and modifying v.extract so that it can extract "area edge"
> lines based on the category of the line, not on the category number of the
> enclosed area.
>
> At this time GRASS offers no control of line types that are practical on
> realistically-sized vector maps.  Besides, the limitation in v.out.shape
> required that everything form closed areas, so being able to alter a line
> type in v.digit was of no value anyway.
>
> As a result of the lack of practical control there are probably few users
> who care about the distinction.
>
> I can blather on and on about the practical problems caused by the
> distinction between lines and area edges.  What i've talked about so far
> only scratches the surface.  As it is I see no value in making the
> distinction and a lot of problems caused by it.  The simplest solution
> would probably be to treat every line as a (potential) area edge.

I cannot agree. You are still talking about your one special case. 
You are missing some functionality for some modules. I think that what you 
need is 'type=edge,line' instead of only 'type=line', you can add 'edge'
type to that modules. 

Instead, you propose as a solution, to limit grass funcionality to only area 
edges. I don't think that it is good idea, to resolve problems of missing 
funcionality by another reduction of existing functionality. Better is to 
extend existing options.

I can give you some examples where to distinguish edges and lines is usefull:

1) map with mixed area and line features:
- line feature in area, obviously it may not be area edge, otherwise build
   fails
- report size for lines (length) and areas (area), of course here we don't
   want lengt of areas' perimeters (BTW, I used this many times)

2) map with one feature type
- imagine road network, if you use only area edges, build process will
   try to build ares (lost time), it will report problems with topology
   because some areas are not closed (free ends of roads), and if user query
   the map with d.what.vect, he will get report on area sizes - is not that
   confusing for road network?

Radim






More information about the grass-dev mailing list