# Create Pseudo Drilling Spacing Units - Polygon inside another polygon from its boundaries

I am trying to create pseudo Drilling Spacing Units. That corresponded with the section, township and range that they are generated from.

I am working with Sections from the Land grid in Oklahoma; Section Township and Range.

I need to generate a new polygon inside each section, with specific distances from the section boundary that it is generated inside of. The new polygon needs to be parallel with the boundary line and 165' from the north line, 165' from the south line, 330' from the west line and 330' from the east line.

This is ruffly what one new DSU (Drilling Spacing Unit) would look like

This is a schematic for what dimensions and the boundaries that are generated from.

The finished product would auto-generate the polygons like so:

I have used the buffer tool to create a polygon from the midpoint, however the boundary's that the new polygon draws from will change as you move across townships / ranges. so i need to go off each sections unique boundary.

• Are they all horizontal? Dec 6, 2017 at 3:03
• Could you Clairify please @FelixIP? Are you asking about wells that will be drilled in the DSU's or if the Sections Boundaries are Horizontal. Dec 6, 2017 at 14:20
• Section boundaries. Does upper/lower boundary go west/east? Similarly with left/right? Dec 6, 2017 at 17:47
• Yes you are correct. Dec 6, 2017 at 20:14

Add geometry attributes to your polygons. Create a copy of them and run this field calculator expression on field Shape:

def squeeze(xMin,yMin,xMax,yMax,dX,dY):
LL=arcpy.Point(xMin+dX,yMin+dY)
UL=arcpy.Point(xMin+dX,yMax-dY)
UR=arcpy.Point(xMax-dX,yMax-dY)
LR=arcpy.Point(xMax-dX,yMin+dY)
arr=arcpy.Array([LL,UL,UR,LR])
pgon=arcpy.Polygon(arr)
return pgon
#------------------
squeeze( !EXT_MIN_X!, !EXT_MIN_Y!, !EXT_MAX_X!, !EXT_MAX_Y!,100,250)

If your copy stored in database, you need to start editing session.

• I ran into some issues: - I was able to create a copy of the polygons. - I added the geometry attributes. - "Create a copy of them and run this field calculator expression on field Shape:" this is where i get stuck. I have the following fields EXT_MIN_X, EXT_MIN_X, EXT_MIN_Y, EXT_MAX_X,EXT_MAX_Y. Thank you FelixIP, and sorry for delay. Dec 11, 2017 at 15:30
• it worked! Thank you so much! I didn't realize what you were saying at first, i am still very new to scripting. This was so much help! Dec 11, 2017 at 17:01