10

I am generalizing geological map. In the initial step I am dealing with small polygons which should be either deleted, enlarged, aggregated and etc.

Before applying operations mentioned above I would like to start with the shape analysis, such as elongated polygons or more round polygons and so on, as this may be key factor to deal with.

Geological maps have quite complex shapes which should be considered and maintained as much as possible.

Is there any way that identifies the shapes of the polygons based on the geometry?

I am using ArcGIS, Python basically.

12

The main shape index is obtained by dividing the area by the square of the perimeter of the polygon. If you multiply this value by 4Pi, you obtain a normalized value that is 1 for a disk and close to zero for an very elongated polygon. This index is one of the most robust that I know.

You can also divide the area of your polygon with the area of its convex hull (see minimum bounding geometry tool). This will allow you to discriminate convex and concave polygons (for a man-made structure, you can use bounding rectangle instead of convex hull. This is called the "rectangular-fit", but I don't think that it is the most usefull in your case).

Further indices imply to construction of the skeleton of the polygon, but this is more complex. For instance, you can count the number of ramifications and measure the length of the longest component. See here for an example on how to build skeletons if you want to go this way.

  • What is a squeletton? I tried a quick search, but it turned up a bunch dancing skeletons. – Radar Dec 22 '16 at 23:30
  • my spelling wasn't very good: I updated it + added a link to wikipedia – radouxju Dec 23 '16 at 10:51
  • Can you please recommend some reliable reference, how to understand simple and the complex methods you have proposed? Thanks in advance. – peter Dec 23 '16 at 13:01

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service, privacy policy and cookie policy

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