Geographic Information Systems Stack Exchange is a question and answer site for cartographers, geographers and GIS professionals. It's 100% free, no registration required.

Sign up
Here's how it works:
  1. Anybody can ask a question
  2. Anybody can answer
  3. The best answers are voted up and rise to the top

We need to split large complex polygons into smaller chunks ( Where the area <= x). The tricky bit is that they can only be split where the distance from one side of the polygon to the other is <= y which in this case is 80 metres. They can still be split if the area is not <= x, we just try and reduce the larger chunks to smaller chunks so the more that are <= x the better..

share|improve this question
this answer could help you – geogeek Mar 9 '13 at 11:24
An illustration or clearer description of what is desired would be most helpful in making this question less ambiguous. – whuber Mar 9 '13 at 22:12
Welcome to SE GIS John. I suspect a solution will be along the lines of trying to identify your "narrow necks" first - this may be easier using raster rather than vector tools - the output would probably be a point feature class. Then I think it will need to identify any "oversize" polygons that have "narrow necks" within them - this bit should be easy. From there I think the last step will be to decide which "narrow neck" to split at first (if there is more than one) & what line angle to use through that point to cut the "oversize" polygon through its chosen "narrow neck". – PolyGeo Mar 10 '13 at 0:53
Some other suggestions to get as many eyeballs as possible on your problem are to add tags (and text) for the software and version you are likely to try first and perhaps a more descriptive title in the form of a question e.g. How to Split large complex polygons at their narrow necks? – PolyGeo Mar 10 '13 at 0:57

Something that I think might work but which I don't currently have sufficient licensing to test is:

  1. Use Create TIN (requires 3D Analyst) to create a triangulated irregular network of your large complex polygon. Eyeball the result and you should see that at the "narrow necks" there are triangles with one (the shortest?) side being a candidate for performing a cut.
  2. Export the triangles out to a polygon feature class using TIN Triangle (requires 3D Analyst)
  3. Convert the triangles (polygons) to line features using Feature To Line (requires Advanced)
  4. Select By Attribute any large complex polygons larger than x in area
  5. Select By Attribute any triangle line smaller than y in length
  6. Use Select By Location to select from the currently selected those small triangle edge lines which are within (and touching the edge of) a large polygon targeted for splitting.
  7. Now start iterating through the shortest remaining lines and try using each to split the polygon it overlaps using an approach to split polygons using line features perhaps from here
  8. At each iteration see whether the split makes two largish polygons or not - I suspect there will be some short lines that have resulted from coordinates close together at the edge and are not "narrow necks". If you get two largish polygons then keep the results of that split.
share|improve this answer
Thanks heaps. Will give it a go. JM – John Marshall Mar 12 '13 at 11:53

Your Answer


By posting your answer, you agree to the privacy policy and terms of service.

Not the answer you're looking for? Browse other questions tagged or ask your own question.