<a href="http://osgeo-org.1560.x6.nabble.com/file/n5077579/MyTest.rar" target="_top" rel="nofollow" link="external">MyTest.rar</a>I have uploaded my MyTest.shp created in ArcGIS. If you open it, you will see that it has nine polygons and in the attribute table of the layer, I have explained about the features of each polygon.  

My problem is:  
I'm developing a Visual C++ MFC application with GDAL/OGR library that will show shapefiles in an OpenGL window. And I have created this shapefile to test some parts of my application. <b>My application will only support ESRI shapefiles.</b>   
As you know, the OGRPolygon class has only a member function <b>getNumInteriorRings</b> and not such function for exterior rings. I mean it supports multiple interior rings but not multiple exterior rings. So I decided to fetch one of the rings of each polygon with <b>getExteriorRing()</b> and the others with <b>getInteriorRing(int)</b> and decide with <b>isClockwise()</b> method whether it is an exterior or interior ring. 
This approch is best for the polygons with <b>FIDs : 0,1,2,3,4,5,6 </b> in my MyTest.shp. When I use this code for them:  

<i>int NumberOfInnerRings = poPolygon ->getNumInteriorRings();</i>  

I get these results:  
FID = 0 -> 5
FID = 1 -> 1
FID = 2 -> 0
FID = 3 -> 1
FID = 4 -> 2
FID = 5 -> 0
FID = 6 -> 2  
showing that one of the rings has been accepted as exterior and the others as interior polygons. You see that the polygons with the above FIDs are simple polygons, multipart polygons and polygons with holls inside.  

But for the two other polygons this is not the case. These are polygons that have islands in as you see in this link:  
<a href="http://help.arcgis.com/en/arcgisdesktop/10.0/help/index.html#/Creating_new_donut_holes_and_island_polygons/001t0000003p000000/" target="_top" rel="nofollow" link="external">http://help.arcgis.com/en/arcgisdesktop/10.0/help/index.html#/Creating_new_donut_holes_and_island_polygons/001t0000003p000000/</a>  

I get these wrong results for them as the number of Interior rings:  

FID = 7 -> 1
FID = 8 -> 2  
meaning that islands are not known niether as interior nor exterior polygons!!!  

Can you tell me how can I support islands with GDAL/OGR library or introduce me another open source that does this?



        
        
        
<br/><hr align="left" width="300" />
View this message in context: <a href="http://osgeo-org.1560.x6.nabble.com/How-can-I-support-polygons-with-islands-in-my-APPLICATION-USING-gdal-ogr-library-tp5077579.html">How can I support polygons with islands in my APPLICATION USING gdal/ogr library?</a><br/>
Sent from the <a href="http://osgeo-org.1560.x6.nabble.com/GDAL-Dev-f3742093.html">GDAL - Dev mailing list archive</a> at Nabble.com.<br/>