[GRASS5] Q. How do you find the islands for a given area?

Eric G. Miller egm2 at jps.net
Sat Feb 24 17:30:20 EST 2001


I've been looking into the d.area island drawing problem.  Anyway, I'm
trying to figure out how you find out:
 
  For a given area A:
    How many interior boundary islands does it have?
    How do I get line_pnts struct(s) for just these interior islands?


I've discovered I can get the total number of islands in the map with

   Map.n_isles

And, I can get an island using:
   Vect_get_isle_points (&Map, isle_num, &pnts)

Problem is, I want to know just the islands for the current area.  Even
with V2_get_area (&Map, area_num, &area_ptr), the area_ptr->n_isles
gives me nothing (even though I'm using a little test vector that has
two areas each with one interior island).

My idea for a solution to the filled area drawing routines would
basically connect all the islands to their outer area where the
island is closest to the area boundary. (Make any sense).  I don't know
how else these holes could be handled.

Before:
     _________
    |     _   |<= Area
    |    / \  |
    |    \_/  |
    | Isle^   |
    |_________|

After:
     _________
    |     |   | (Area "line points" now loops down and around island,
    |    / \  |  then back up to where it dropped down to the island
    |    \_/  |  to continue the rest of the area boundary) 
    |         |
    |_________|


What am I missing?

-- 
Eric G. Miller <egm2 at jps.net>

---------------------------------------- 
If you want to unsubscribe from GRASS Development Team mailing list write to:
minordomo at geog.uni-hannover.de with
subject 'unsubscribe grass5'



More information about the grass-dev mailing list