5

How can i identify all polygons that are large enough to contain a given rectangle? (Tabular area is not sufficient as i want to exclude polygons that are long and skinny.)

What i want to do is select all properties that are large enough to fit a given #of parking stalls. Some lots are irregularly shaped like flag lots or very narrow. Given the range of shape configurations, i want to be able to select only those lots or polygons that can fit say 4 parking stalls, configured as a minimum bounding rectangle.

1

Possible approach for 80m*200m rectangle.

  • Define possible candidates by computing negative (height/2) buffers for original polygons: enter image description here
  • Call candidates PARENT and place variable number of random points inside
  • Use copy of PARENT to compute horizontal rectangle ("CHILD") for each of them. You'll need to compute coordinate of any point inside and run field calculator expression on Shape field

Expression:

def rectangle(xc,yc):
 LL=arcpy.Point(xc-100,yc-40) 
 UL=arcpy.Point(xc-100,yc+40) 
 UR=arcpy.Point(xc+100,yc+40) 
 LR=arcpy.Point(xc+100,yc-40) 
 return arcpy.Polygon(arcpy.Array([LL,UL,UR,LR])).area
#------------
rectangle( !Centroid_X! , !Centroid_Y! )

enter image description here

Let me know if you can get to to this point and willing to proceed. I'll update my solution with the script, that I used to produce this:

enter image description here

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.