[GIS] Split polygon with holes to get several hole-less polygons

algorithmarcobjectspolygon

Unlike this thread I actually need to split the polygons into several hole-less polygons. I'm not sure on how to approach to this problem.

I have polygons with holes of many diferent shapes, like buildings, esplanades, rivers, etc. And I need to split them in a coherent way (if the polygon is a river it should be splitted perpendiculary to his axis) and with less splits as possible.

I need to do it programatically. I'm using ArcObjects 9.3, but if there is no other way I could try to use a specific algorithm to solve this problem.

Best Answer

Are you always going to split using a straight line?

If so, you could try something like:

  1. Find the center point of the hole.
  2. Determine the orientation of the splitting line through that point (i.e. based on whatever rules you have for building, rivers, etc.) -- this might required other algorithms based on polygon type.
  3. Split the polygon.
Related Question