I'm trying to measure the compactness (roundness) of some 800 polygons of different shape and size. I created the centroids and what I want to do now is to buffer those centroids with the exact same area of their polygons. Sorry if this is too simple but I just can't find the way to do it.
- If not done already, calculate the area in a field for your polygons
- Create centroids. Area field should carry over to the points.
Create and calculate a radius field that corresponds to a circle of the given area, for each point. The formula for circle area is A = pi*r^2, so r = Sqr(A/pi). Pi = 4*Atn(1). The exact VBScript field calculation is:
Sqr ( [area]/(4*Atn(1) ) )
Run Buffer using the values in your radius field as the distance.