<?xml version="1.0" encoding="UTF-8"?>
<rss xmlns:content="http://purl.org/rss/1.0/modules/content/" xmlns:dc="http://purl.org/dc/elements/1.1/" xmlns:rdf="http://www.w3.org/1999/02/22-rdf-syntax-ns#" xmlns:taxo="http://purl.org/rss/1.0/modules/taxonomy/" version="2.0">
  <channel>
    <title>topic Re: Inside Buffer in Geoprocessing Questions</title>
    <link>https://community.esri.com/t5/geoprocessing-questions/inside-buffer/m-p/345589#M12042</link>
    <description>&lt;HTML&gt;&lt;HEAD&gt;&lt;/HEAD&gt;&lt;BODY&gt;&lt;SPAN&gt;Original User: clm42&lt;/SPAN&gt;&lt;BR /&gt;&lt;BR /&gt;&lt;SPAN&gt;Well there is a very tedious method of the trace tool. Just set it to off set the buffer distance and trace around the lake. Than finish only that part of the polygon and trace around again with an off set of zero. When you finish the polygon it will be "buffered". I just had to do this very thing to the entire coastline of my county because it wouldnt buffer the crazy geometry.&lt;/SPAN&gt;&lt;/BODY&gt;&lt;/HTML&gt;</description>
    <pubDate>Wed, 07 Jul 2010 19:30:30 GMT</pubDate>
    <dc:creator>Anonymous User</dc:creator>
    <dc:date>2010-07-07T19:30:30Z</dc:date>
    <item>
      <title>Inside Buffer</title>
      <link>https://community.esri.com/t5/geoprocessing-questions/inside-buffer/m-p/345586#M12039</link>
      <description>&lt;HTML&gt;&lt;HEAD&gt;&lt;/HEAD&gt;&lt;BODY&gt;&lt;SPAN&gt;Hi everyone,&lt;/SPAN&gt;&lt;BR /&gt;&lt;SPAN&gt;I'm using 9.2 SP6.&lt;/SPAN&gt;&lt;BR /&gt;&lt;SPAN&gt;I have a a fairly complex lakes feature class (shown in attached picture).&amp;nbsp; I am trying to create a buffer 20 meters inside each feature and none of the methods seems to be working.&lt;/SPAN&gt;&lt;BR /&gt;&lt;SPAN&gt;The buffer tool with a negative distance produces some kind of error before the process can be completed.&lt;/SPAN&gt;&lt;BR /&gt;&lt;SPAN&gt;The buffer wizard tool produces the result shown in brown in the other attached image.&amp;nbsp; First of all it's the blue area that I want to keep, so I would have to add the extra erase step, and second, it completely ignored the more complicated and larger polygon on top.&lt;/SPAN&gt;&lt;BR /&gt;&lt;SPAN&gt;I used ArcMap advanced settings utility to change the buffer wizard method to "feature optimized coordinate system" which produced the same results.&lt;/SPAN&gt;&lt;BR /&gt;&lt;BR /&gt;&lt;SPAN&gt;Does anyone know how, using a script, tool, or anything, how to create a buffer inside a polygon, keeping in mind that this process will have to be run MANY times.&lt;/SPAN&gt;&lt;BR /&gt;&lt;BR /&gt;&lt;SPAN&gt;Thank-You!&lt;/SPAN&gt;&lt;/BODY&gt;&lt;/HTML&gt;</description>
      <pubDate>Wed, 07 Jul 2010 13:29:19 GMT</pubDate>
      <guid>https://community.esri.com/t5/geoprocessing-questions/inside-buffer/m-p/345586#M12039</guid>
      <dc:creator>LornaMurison</dc:creator>
      <dc:date>2010-07-07T13:29:19Z</dc:date>
    </item>
    <item>
      <title>Re: Inside Buffer</title>
      <link>https://community.esri.com/t5/geoprocessing-questions/inside-buffer/m-p/345587#M12040</link>
      <description>&lt;HTML&gt;&lt;HEAD&gt;&lt;/HEAD&gt;&lt;BODY&gt;&lt;SPAN&gt;Try:&lt;/SPAN&gt;&lt;BR /&gt;&lt;BR /&gt;&lt;SPAN&gt;1. Breaking the input FC into singlepart geometry using the MultipartToSinglepart tool&lt;/SPAN&gt;&lt;BR /&gt;&lt;SPAN&gt;2. Running the RepairGeometry tool. Are there any "errors"?&lt;/SPAN&gt;&lt;BR /&gt;&lt;SPAN&gt;3. Then run the negative buffer.&lt;/SPAN&gt;&lt;BR /&gt;&lt;BR /&gt;&lt;SPAN&gt;Does it work then?&lt;/SPAN&gt;&lt;BR /&gt;&lt;BR /&gt;&lt;SPAN&gt;The issue of course is the extreemly complex geometry of the lake polygons. If the buffer tools fails on the original FC, maybe try writing a script that will loop through the features and make a buffer for each feature in a try/except block. That way you will be able to figure out the offending features (maybe it's only a few of them?).&lt;/SPAN&gt;&lt;/BODY&gt;&lt;/HTML&gt;</description>
      <pubDate>Wed, 07 Jul 2010 16:43:43 GMT</pubDate>
      <guid>https://community.esri.com/t5/geoprocessing-questions/inside-buffer/m-p/345587#M12040</guid>
      <dc:creator>ChrisSnyder</dc:creator>
      <dc:date>2010-07-07T16:43:43Z</dc:date>
    </item>
    <item>
      <title>Re: Inside Buffer</title>
      <link>https://community.esri.com/t5/geoprocessing-questions/inside-buffer/m-p/345588#M12041</link>
      <description>&lt;HTML&gt;&lt;HEAD&gt;&lt;/HEAD&gt;&lt;BODY&gt;&lt;SPAN&gt;Original User: Lady_Jane&lt;/SPAN&gt;&lt;BR /&gt;&lt;BR /&gt;&lt;SPAN&gt;Thank-you for your reply, Chris.&lt;/SPAN&gt;&lt;BR /&gt;&lt;BR /&gt;&lt;SPAN&gt;I have found 2 polygons that the buffer tool is ignoring.&amp;nbsp; If I select all polygons except for those 2, then the process works.&amp;nbsp; Of course, they are the two most complicated polygons in the shapefile.&lt;/SPAN&gt;&lt;BR /&gt;&lt;SPAN&gt;Does anyone know of a way to simplify the polygons before buffering, or of allowing complex polygons to be buffered?&lt;/SPAN&gt;&lt;/BODY&gt;&lt;/HTML&gt;</description>
      <pubDate>Wed, 07 Jul 2010 18:43:19 GMT</pubDate>
      <guid>https://community.esri.com/t5/geoprocessing-questions/inside-buffer/m-p/345588#M12041</guid>
      <dc:creator>Anonymous User</dc:creator>
      <dc:date>2010-07-07T18:43:19Z</dc:date>
    </item>
    <item>
      <title>Re: Inside Buffer</title>
      <link>https://community.esri.com/t5/geoprocessing-questions/inside-buffer/m-p/345589#M12042</link>
      <description>&lt;HTML&gt;&lt;HEAD&gt;&lt;/HEAD&gt;&lt;BODY&gt;&lt;SPAN&gt;Original User: clm42&lt;/SPAN&gt;&lt;BR /&gt;&lt;BR /&gt;&lt;SPAN&gt;Well there is a very tedious method of the trace tool. Just set it to off set the buffer distance and trace around the lake. Than finish only that part of the polygon and trace around again with an off set of zero. When you finish the polygon it will be "buffered". I just had to do this very thing to the entire coastline of my county because it wouldnt buffer the crazy geometry.&lt;/SPAN&gt;&lt;/BODY&gt;&lt;/HTML&gt;</description>
      <pubDate>Wed, 07 Jul 2010 19:30:30 GMT</pubDate>
      <guid>https://community.esri.com/t5/geoprocessing-questions/inside-buffer/m-p/345589#M12042</guid>
      <dc:creator>Anonymous User</dc:creator>
      <dc:date>2010-07-07T19:30:30Z</dc:date>
    </item>
    <item>
      <title>Re: Inside Buffer</title>
      <link>https://community.esri.com/t5/geoprocessing-questions/inside-buffer/m-p/345590#M12043</link>
      <description>&lt;HTML&gt;&lt;HEAD&gt;&lt;/HEAD&gt;&lt;BODY&gt;&lt;SPAN&gt;run a Check Geometry and if needed a Repair Geometry on the input file to rule out geometry errors.&lt;/SPAN&gt;&lt;BR /&gt;&lt;SPAN&gt;If the shapes are multipart shapes, try using the multiparttosinglepart tool on the file prior to interior buffering&lt;/SPAN&gt;&lt;/BODY&gt;&lt;/HTML&gt;</description>
      <pubDate>Wed, 07 Jul 2010 19:49:14 GMT</pubDate>
      <guid>https://community.esri.com/t5/geoprocessing-questions/inside-buffer/m-p/345590#M12043</guid>
      <dc:creator>DanPatterson_Retired</dc:creator>
      <dc:date>2010-07-07T19:49:14Z</dc:date>
    </item>
    <item>
      <title>Re: Inside Buffer</title>
      <link>https://community.esri.com/t5/geoprocessing-questions/inside-buffer/m-p/345591#M12044</link>
      <description>&lt;HTML&gt;&lt;HEAD&gt;&lt;/HEAD&gt;&lt;BODY&gt;&lt;SPAN&gt;Original User: Lady_Jane&lt;/SPAN&gt;&lt;BR /&gt;&lt;BR /&gt;&lt;SPAN&gt;Unfortunately it is not a geometry issue.&amp;nbsp; I have checked geometry, found no errors, ran repair geometry anyway, and the large complex polygon is still causing an error.&lt;/SPAN&gt;&lt;BR /&gt;&lt;SPAN&gt;I am going to try converting to a coverage first.&lt;/SPAN&gt;&lt;BR /&gt;&lt;SPAN&gt;Thanks everyone, still looking for ideas &lt;span class="lia-unicode-emoji" title=":slightly_smiling_face:"&gt;🙂&lt;/span&gt;&lt;/SPAN&gt;&lt;/BODY&gt;&lt;/HTML&gt;</description>
      <pubDate>Thu, 08 Jul 2010 11:42:55 GMT</pubDate>
      <guid>https://community.esri.com/t5/geoprocessing-questions/inside-buffer/m-p/345591#M12044</guid>
      <dc:creator>Anonymous User</dc:creator>
      <dc:date>2010-07-08T11:42:55Z</dc:date>
    </item>
    <item>
      <title>Re: Inside Buffer</title>
      <link>https://community.esri.com/t5/geoprocessing-questions/inside-buffer/m-p/345592#M12045</link>
      <description>&lt;HTML&gt;&lt;HEAD&gt;&lt;/HEAD&gt;&lt;BODY&gt;&lt;SPAN&gt;If workstation fails (try the regionbuffer tool), you might try this in ArcGIS:&lt;/SPAN&gt;&lt;BR /&gt;&lt;BR /&gt;&lt;SPAN&gt;1. Convert your lake polys to a line (FeatureToLine tool)&lt;/SPAN&gt;&lt;BR /&gt;&lt;SPAN&gt;2. Buffer the lines 20m (on both sides, round ends). If the shoreline buffer fails try:&lt;/SPAN&gt;&lt;BR /&gt;&lt;SPAN&gt;&amp;nbsp;&amp;nbsp; a. Build a fishnet polygon (CreateFishnet tool and then FeatureToPolygon) of sufficient # of cells to break the large contiguous line features into smaller segments. This might take a couple tries to get right. &lt;/SPAN&gt;&lt;BR /&gt;&lt;SPAN&gt;&amp;nbsp;&amp;nbsp; b Buffer the "chopped up" lines.&lt;/SPAN&gt;&lt;BR /&gt;&lt;SPAN&gt;3. Erase the buffer from the lake poly. If the erase fails try:&lt;/SPAN&gt;&lt;BR /&gt;&lt;SPAN&gt;&amp;nbsp;&amp;nbsp; a. Intersect the lake polys with the fishnet you created for the buffers&lt;/SPAN&gt;&lt;BR /&gt;&lt;SPAN&gt;&amp;nbsp;&amp;nbsp; b. Try the intersect again with the "chopped up" lake polys&lt;/SPAN&gt;&lt;BR /&gt;&lt;BR /&gt;&lt;SPAN&gt;Generally, the issue is that ArcGIS chokes when you try to do some sort of geoprocessing operation with a feature that has a kajillion vertices. The reason being that all the feature's x,y, pairs need to get loaded into memory in order to do the operation, and often the number of vertrices in a complex feature exceed the limits of the ArcGIS algorithm. The solution is to break your input features into small enough pieces to allow the algorithms to run without maxing out the memory limitations.&lt;/SPAN&gt;&lt;/BODY&gt;&lt;/HTML&gt;</description>
      <pubDate>Thu, 08 Jul 2010 15:17:22 GMT</pubDate>
      <guid>https://community.esri.com/t5/geoprocessing-questions/inside-buffer/m-p/345592#M12045</guid>
      <dc:creator>ChrisSnyder</dc:creator>
      <dc:date>2010-07-08T15:17:22Z</dc:date>
    </item>
    <item>
      <title>Re: Inside Buffer</title>
      <link>https://community.esri.com/t5/geoprocessing-questions/inside-buffer/m-p/345593#M12046</link>
      <description>&lt;HTML&gt;&lt;HEAD&gt;&lt;/HEAD&gt;&lt;BODY&gt;&lt;SPAN&gt;Original User: Lady_Jane&lt;/SPAN&gt;&lt;BR /&gt;&lt;BR /&gt;&lt;SPAN&gt;I don't know what you mean by fishnet, I've never used that tool before, I will have to look into it.&lt;/SPAN&gt;&lt;BR /&gt;&lt;SPAN&gt;Right now I have run the simplify polygon tool and the output still has sufficient detail.&amp;nbsp; I am now attempting to buffer the simplified features which has been going on for almost 3 hours now.&amp;nbsp; I take this as a good sign though, since previously it would crash after a minute or so.&lt;/SPAN&gt;&lt;BR /&gt;&lt;SPAN&gt;Provided this buffer works, my plan will be to calculate the number of vertices on each feature, select those over a given threshold and simplify them before performing the buffer.&lt;/SPAN&gt;&lt;BR /&gt;&lt;SPAN&gt;If this doesn't work I will look into your suggestions.&lt;/SPAN&gt;&lt;BR /&gt;&lt;SPAN&gt;Thank-You!&lt;/SPAN&gt;&lt;/BODY&gt;&lt;/HTML&gt;</description>
      <pubDate>Thu, 08 Jul 2010 16:18:38 GMT</pubDate>
      <guid>https://community.esri.com/t5/geoprocessing-questions/inside-buffer/m-p/345593#M12046</guid>
      <dc:creator>Anonymous User</dc:creator>
      <dc:date>2010-07-08T16:18:38Z</dc:date>
    </item>
    <item>
      <title>Re: Inside Buffer</title>
      <link>https://community.esri.com/t5/geoprocessing-questions/inside-buffer/m-p/345594#M12047</link>
      <description>&lt;HTML&gt;&lt;HEAD&gt;&lt;/HEAD&gt;&lt;BODY&gt;&lt;SPAN&gt;The fishnet tool is basically a way to make a polygon layer that looks like, well, a fishnet that has adjacent rectangualr (or square) polygons (like a checkerboard). I do a lot of large-dataset processing in Python, and the Fishnet tool is always my step #1 in being able to break up large datasets to get them to work with the ESRI tools.&lt;/SPAN&gt;&lt;BR /&gt;&lt;BR /&gt;&lt;SPAN&gt;For example:&lt;/SPAN&gt;&lt;BR /&gt;&lt;BR /&gt;&lt;PRE class="lia-code-sample line-numbers language-none"&gt;# Description
# -----------
# This creates an area of interest feature class, a few buffers of the area of interest, and a fishnet polygon to use for tile-by-tile psudo-parallel processing. 
# Written for Python version: 2.5.1 (PythonWin)
# Written for ArcGIS version: 9.3.1 (should be forward compatible).
# Author: Chris Snyder, WA Department of Natural Resources, chris.snyder(at)wadnr.gov
# Date created:
# Last Updated: 20090923, csny490

try:
&amp;nbsp;&amp;nbsp;&amp;nbsp; #Import system modules and creates the Geoprocessor object (the v9.2 way)
&amp;nbsp;&amp;nbsp;&amp;nbsp; import sys, string, os, glob, shutil, time, traceback, arcgisscripting
&amp;nbsp;&amp;nbsp;&amp;nbsp; gp = arcgisscripting.create(9.3)
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; 
&amp;nbsp;&amp;nbsp;&amp;nbsp; #Defines some functions
&amp;nbsp;&amp;nbsp;&amp;nbsp; def showGpMessage():
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; try:
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; print &amp;gt;&amp;gt; open(logFile, 'a'), "\n" + gp.GetMessages() + "\n"
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; print "\n" + gp.GetMessages() + "\n"
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; except:
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; pass
&amp;nbsp;&amp;nbsp;&amp;nbsp; def showPyMessage():
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; try:
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; print &amp;gt;&amp;gt; open(logFile, 'a'), str(time.ctime()) + " - " + str(message)
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; print str(time.ctime()) + " - " + str(message)
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; except:
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; pass
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; 
&amp;nbsp;&amp;nbsp;&amp;nbsp; #Sets a date/time stamp variable in the format yyyymmddhhmmss (example: 20060330132345)
&amp;nbsp;&amp;nbsp;&amp;nbsp; dateTimeStamp = time.strftime('%Y%m%d%H%M%S')

&amp;nbsp;&amp;nbsp;&amp;nbsp; #Specifies the root variable, makes the logFile variable, and does some error checking...
&amp;nbsp;&amp;nbsp;&amp;nbsp; root = sys.argv[1]
&amp;nbsp;&amp;nbsp;&amp;nbsp; if os.path.exists(root)== False:
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; print "Specified root directory: " + root + " does not exist... Bailing out!"
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; sys.exit()
&amp;nbsp;&amp;nbsp;&amp;nbsp; scriptName = sys.argv[0].split("\\")[len(sys.argv[0].split("\\")) - 1][0:-3] #Gets the name of the script without the .py extension&amp;nbsp; 
&amp;nbsp;&amp;nbsp;&amp;nbsp; logFile = root + "\\log_files\\" + scriptName + "_" + dateTimeStamp[:8] + ".log" #Creates the logFile variable
&amp;nbsp;&amp;nbsp;&amp;nbsp; if os.path.exists(root + "\\log_files") == False:
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; os.mkdir(root + "\\log_files")
&amp;nbsp;&amp;nbsp;&amp;nbsp; if os.path.exists(logFile)== True:
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; os.remove(logFile)
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; message = "Deleting log file with the same name and datestamp... Recreating " + logFile; showPyMessage()
&amp;nbsp;&amp;nbsp;&amp;nbsp; workspaceDir = "overlay_index"
&amp;nbsp;&amp;nbsp;&amp;nbsp; if os.path.exists(root + "\\" + workspaceDir)== False:
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; message = "Creating layer directory: " + root + "\\" + workspaceDir; showPyMessage()
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; os.mkdir(root + "\\" + workspaceDir)

&amp;nbsp;&amp;nbsp;&amp;nbsp; #Attempts to check out the highest grade license available...
&amp;nbsp;&amp;nbsp;&amp;nbsp; if gp.CheckProduct("ArcInfo") == "Available":
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; gp.SetProduct("ArcInfo")
&amp;nbsp;&amp;nbsp;&amp;nbsp; elif gp.CheckProduct("ArcEditor") == "Available":
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; gp.SetProduct("ArcEditor")
&amp;nbsp;&amp;nbsp;&amp;nbsp; elif gp.CheckProduct("ArcView") == "Available":
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; gp.SetProduct("ArcView")
&amp;nbsp;&amp;nbsp;&amp;nbsp; else:
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; messsage =&amp;nbsp; "No ArcGis licesnses are available... Exiting script!"; showPyMessage(); sys.exit()
&amp;nbsp;&amp;nbsp;&amp;nbsp; message =&amp;nbsp; "Selected an " + gp.ProductInfo() + " license"; showPyMessage()

&amp;nbsp;&amp;nbsp;&amp;nbsp; #Sets some environment variables&amp;nbsp;&amp;nbsp;&amp;nbsp; 
&amp;nbsp;&amp;nbsp;&amp;nbsp; gp.overwriteoutput = True
&amp;nbsp;&amp;nbsp;&amp;nbsp; gp.loghistory = False
&amp;nbsp;&amp;nbsp;&amp;nbsp; sr = 'PROJCS["NAD_1983_HARN_StatePlane_Washington_South_FIPS_4602_Feet",GEOGCS["GCS_North_American_1983_HARN",DATUM["D_North_American_1983_HARN",SPHEROID["GRS_1980",6378137.0,298.257222101]],PRIMEM["Greenwich",0.0],UNIT["Degree",0.0174532925199433]],PROJECTION["Lambert_Conformal_Conic"],PARAMETER["False_Easting",1640416.666666667],PARAMETER["False_Northing",0.0],PARAMETER["Central_Meridian",-120.5],PARAMETER["Standard_Parallel_1",45.83333333333334],PARAMETER["Standard_Parallel_2",47.33333333333334],PARAMETER["Latitude_Of_Origin",45.33333333333334],UNIT["Foot_US",0.3048006096012192]]'
&amp;nbsp;&amp;nbsp;&amp;nbsp; gp.OutputCoordinateSystem = sr
&amp;nbsp;&amp;nbsp;&amp;nbsp; gp.XYTolerance = "0.001 METERS"
&amp;nbsp;&amp;nbsp;&amp;nbsp; gp.XYResolution = "0.0005 METERS"
&amp;nbsp;&amp;nbsp;&amp;nbsp; gp.workspace = root + "\\" + workspaceDir

&amp;nbsp;&amp;nbsp;&amp;nbsp; #Process: Creates a FGDB to hold all the spatial layers
&amp;nbsp;&amp;nbsp;&amp;nbsp; fgdbName = "overlay_index"
&amp;nbsp;&amp;nbsp;&amp;nbsp; fgdbPath = gp.workspace + "\\" + fgdbName + ".gdb"
&amp;nbsp;&amp;nbsp;&amp;nbsp; gp.CreateFileGDB_management(gp.workspace, fgdbName); showGpMessage()

&amp;nbsp;&amp;nbsp;&amp;nbsp; #Process: Makes a FC of the PLS polys we want
&amp;nbsp;&amp;nbsp;&amp;nbsp; plsFC = root + "\\gis_layers\\pls.gdb\\pls"
&amp;nbsp;&amp;nbsp;&amp;nbsp; plsFL = "pls_feature_layer"
&amp;nbsp;&amp;nbsp;&amp;nbsp; gp.MakeFeatureLayer_management(plsFC, plsFL, "SUR_OWN_CD &amp;gt; 0 OR TIM_OWN_CD &amp;gt; 0", "", ""); showGpMessage()
&amp;nbsp;&amp;nbsp;&amp;nbsp; dnrMgmtAllFC = fgdbPath + "\\dnr_mgmt_all"
&amp;nbsp;&amp;nbsp;&amp;nbsp; gp.Dissolve_management(plsFL, dnrMgmtAllFC, "", "", "SINGLE_PART"); showGpMessage()

&amp;nbsp;&amp;nbsp;&amp;nbsp; #Process: Creates a fishnet layer (the basis of the index polygons)
&amp;nbsp;&amp;nbsp;&amp;nbsp; fishnetLine1FC = fgdbPath + "\\fishnet_line1"
&amp;nbsp;&amp;nbsp;&amp;nbsp; dsc = gp.describe(dnrMgmtAllFC)
&amp;nbsp;&amp;nbsp;&amp;nbsp; xMin = dsc.extent.xmin
&amp;nbsp;&amp;nbsp;&amp;nbsp; yMin = dsc.extent.ymin
&amp;nbsp;&amp;nbsp;&amp;nbsp; xMax = dsc.extent.xmax
&amp;nbsp;&amp;nbsp;&amp;nbsp; yMax = dsc.extent.ymax
&amp;nbsp;&amp;nbsp;&amp;nbsp; bufferWidth = 1 #Buffer width expands the the extent of the fishnet by that many map units (to make sure it extends past DNR lands a bit)
&amp;nbsp;&amp;nbsp;&amp;nbsp; numberOfRows = 6
&amp;nbsp;&amp;nbsp;&amp;nbsp; numberOfColumns = 6
&amp;nbsp;&amp;nbsp;&amp;nbsp; gp.CreateFishnet_management(fishnetLine1FC, str(xMin - bufferWidth) + " " + str(yMin - bufferWidth), str(xMin - bufferWidth) + " " + str(yMin), "0", "0", numberOfRows, numberOfColumns, str(xMax + bufferWidth) + " " + str(yMax + bufferWidth), "NO_LABELS", ""); showGpMessage()
&amp;nbsp;&amp;nbsp;&amp;nbsp; fishnet1FC = fgdbPath + "\\fishnet_poly1"
&amp;nbsp;&amp;nbsp;&amp;nbsp; gp.FeatureToPolygon_management(fishnetLine1FC, fishnet1FC, "", "", ""); showGpMessage()
&amp;nbsp;&amp;nbsp;&amp;nbsp; gp.Delete_management(fishnetLine1FC, ""); showGpMessage()

&amp;nbsp;&amp;nbsp;&amp;nbsp; #Process: Creates a 2nd fishnet layer (that is more dense than the original)
&amp;nbsp;&amp;nbsp;&amp;nbsp; fishnetLine2FC = fgdbPath + "\\fishnet_line2"
&amp;nbsp;&amp;nbsp;&amp;nbsp; densificationFactor = 12 #this densification factor ABSOLUTELY NEEDS to be a multiple of 2 (e.g. 2,4,6,8,etc)
&amp;nbsp;&amp;nbsp;&amp;nbsp; gp.CreateFishnet_management(fishnetLine2FC, str(xMin - bufferWidth) + " " + str(yMin - bufferWidth), str(xMin - bufferWidth) + " " + str(yMin), "0", "0", str(numberOfRows * densificationFactor), str(numberOfColumns * densificationFactor), str(xMax + bufferWidth) + " " + str(yMax + bufferWidth), "NO_LABELS", ""); showGpMessage()
&amp;nbsp;&amp;nbsp;&amp;nbsp; fishnet2FC = fgdbPath + "\\fishnet_poly2"
&amp;nbsp;&amp;nbsp;&amp;nbsp; gp.FeatureToPolygon_management(fishnetLine2FC, fishnet2FC, "", "", ""); showGpMessage()
&amp;nbsp;&amp;nbsp;&amp;nbsp; gp.Delete_management(fishnetLine2FC, ""); showGpMessage()

&amp;nbsp;&amp;nbsp;&amp;nbsp; #Process: Updates fishnet1FC with fishnet2FC for specified areas
&amp;nbsp;&amp;nbsp;&amp;nbsp; hcpUnitFC = root + "\\gis_layers\\hcpunit.gdb\\hcpunit"
&amp;nbsp;&amp;nbsp;&amp;nbsp; oesfFC = fgdbPath + "\\oesf"
&amp;nbsp;&amp;nbsp;&amp;nbsp; gp.Select_analysis(hcpUnitFC, oesfFC, "HCPUNIT_ID = 1", "", ""); showGpMessage()
&amp;nbsp;&amp;nbsp;&amp;nbsp; fishnet1FL = "fishnet_1_feature_layer"
&amp;nbsp;&amp;nbsp;&amp;nbsp; gp.MakeFeatureLayer_management(fishnet1FC, fishnet1FL, "", "", ""); showGpMessage()
&amp;nbsp;&amp;nbsp;&amp;nbsp; gp.SelectLayerByLocation_management(fishnet1FL, "INTERSECT", oesfFC, "", "NEW_SELECTION"); showGpMessage()
&amp;nbsp;&amp;nbsp;&amp;nbsp; fishnet2FL = "fishnet_2_feature_layer"
&amp;nbsp;&amp;nbsp;&amp;nbsp; gp.MakeFeatureLayer_management(fishnet2FC, fishnet2FL, "", "", ""); showGpMessage()
&amp;nbsp;&amp;nbsp;&amp;nbsp; gp.SelectLayerByLocation_management(fishnet2FL, "HAVE_THEIR_CENTER_IN", fishnet1FL, "", "NEW_SELECTION"); showGpMessage()
&amp;nbsp;&amp;nbsp;&amp;nbsp; gp.Delete_management(oesfFC, ""); showGpMessage()
&amp;nbsp;&amp;nbsp;&amp;nbsp; fishnetFC = fgdbPath + "\\fishnet_poly"
&amp;nbsp;&amp;nbsp;&amp;nbsp; gp.Update_analysis(fishnet1FC, fishnet2FL, fishnetFC, "BORDERS", ""); showGpMessage()

&amp;nbsp;&amp;nbsp;&amp;nbsp; #Process: Make a line FC version of fishnetFC
&amp;nbsp;&amp;nbsp;&amp;nbsp; fishnetLineFC = fgdbPath + "\\fishnet_lines"
&amp;nbsp;&amp;nbsp;&amp;nbsp; gp.FeatureToLine_management(fishnetFC, fishnetLineFC, "", "NO_ATTRIBUTES"); showGpMessage()
&amp;nbsp;&amp;nbsp;&amp;nbsp; 
&amp;nbsp;&amp;nbsp;&amp;nbsp; #Process: Unions everything together
&amp;nbsp;&amp;nbsp;&amp;nbsp; union1FC = fgdbPath + "\\union1"
&amp;nbsp;&amp;nbsp;&amp;nbsp; gp.Union_analysis(fishnetFC + ";" + dnrMgmtAllFC, union1FC, "ONLY_FID", "", "GAPS"); showGpMessage()

&amp;nbsp;&amp;nbsp;&amp;nbsp; #BLAH BLAH BLAH - I had to trim this part out to post it to the forum (stupid 10,000 charater limit!!!)


&amp;nbsp;&amp;nbsp;&amp;nbsp; #Process: Compacts the PGDB
&amp;nbsp;&amp;nbsp;&amp;nbsp; gp.Compact_management(fgdbPath); showGpMessage()

&amp;nbsp;&amp;nbsp;&amp;nbsp; #Process: Creates a .txt file that indicates to other scripts how many tiles there are (this is used so that the run_union_master script doesn't have to use the gp and waste memory)&amp;nbsp;&amp;nbsp;&amp;nbsp; 
&amp;nbsp;&amp;nbsp;&amp;nbsp; print &amp;gt;&amp;gt; open(root + "\\log_files\\" + "therearethismanytiles_" + str(numberOfTiles) + ".txt", 'a'), "therearethismanytiles_" + str(numberOfTiles)
&amp;nbsp;&amp;nbsp;&amp;nbsp; 
&amp;nbsp;&amp;nbsp;&amp;nbsp; message = "ALL DONE!"; showPyMessage()
&amp;nbsp;&amp;nbsp;&amp;nbsp; print &amp;gt;&amp;gt; open(root + "\\log_files\\" + scriptName + "_isalldone.txt", 'a'), scriptName + "_isalldone.txt"
except:
&amp;nbsp;&amp;nbsp;&amp;nbsp; print &amp;gt;&amp;gt; open(root + "\\log_files\\" + scriptName + "_bombed.txt", 'a'), scriptName + "_bombed.txt"
&amp;nbsp;&amp;nbsp;&amp;nbsp; message = "\n*** LAST GEOPROCESSOR MESSAGE (may not be source of the error)***"; showPyMessage()
&amp;nbsp;&amp;nbsp;&amp;nbsp; showGpMessage()
&amp;nbsp;&amp;nbsp;&amp;nbsp; message = "\n*** PYTHON ERRORS *** "; showPyMessage()
&amp;nbsp;&amp;nbsp;&amp;nbsp; message = "Python Traceback Info: " + traceback.format_tb(sys.exc_info()[2])[0]; showPyMessage()
&amp;nbsp;&amp;nbsp;&amp;nbsp; message = "Python Error Info: " +&amp;nbsp; str(sys.exc_type)+ ": " + str(sys.exc_value) + "\n"; showPyMessage()
&amp;nbsp;&amp;nbsp;&amp;nbsp; message = "\n*** PYTHON LOCAL VARIABLE LIST ***"; showPyMessage()
&amp;nbsp;&amp;nbsp;&amp;nbsp; variableCounter = 0&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; 
&amp;nbsp;&amp;nbsp;&amp;nbsp; while variableCounter &amp;lt; len(locals()):
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; message =&amp;nbsp; str(list(locals())[variableCounter]) + " = " + str(locals()[list(locals())[variableCounter]]); showPyMessage()
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; variableCounter = variableCounter + 1
&amp;nbsp;&amp;nbsp;&amp;nbsp; showPyMessage()&lt;/PRE&gt;&lt;/BODY&gt;&lt;/HTML&gt;</description>
      <pubDate>Sat, 11 Dec 2021 16:16:41 GMT</pubDate>
      <guid>https://community.esri.com/t5/geoprocessing-questions/inside-buffer/m-p/345594#M12047</guid>
      <dc:creator>ChrisSnyder</dc:creator>
      <dc:date>2021-12-11T16:16:41Z</dc:date>
    </item>
    <item>
      <title>Re: Inside Buffer</title>
      <link>https://community.esri.com/t5/geoprocessing-questions/inside-buffer/m-p/345595#M12048</link>
      <description>&lt;HTML&gt;&lt;HEAD&gt;&lt;/HEAD&gt;&lt;BODY&gt;&lt;SPAN&gt;Original User: whuber&lt;/SPAN&gt;&lt;BR /&gt;&lt;BR /&gt;&lt;BLOCKQUOTE class="jive-quote"&gt;Thanks everyone, still looking for ideas &lt;span class="lia-unicode-emoji" title=":slightly_smiling_face:"&gt;🙂&lt;/span&gt;&lt;/BLOCKQUOTE&gt;&lt;BR /&gt;&lt;SPAN&gt; &lt;/SPAN&gt;&lt;BR /&gt;&lt;SPAN&gt;Part of the complexity of the large lakes lies in their many islands, Lorna, so here's a thought: instead of negatively buffering the lakes, why not positively buffer their complement?&amp;nbsp; Normally the complement is easily obtained: create a feature surrounding the lakes (a rectangle will do, but a feature drawn to closely surround the problem lakes would be better), form its union with the lakes, and remove the problem lake features from the union.&amp;nbsp; What's left is their complement.&amp;nbsp; In this case, each island will be a separate feature in the complement and will therefore get separately buffered, which might be easier for ArcGIS to do.&amp;nbsp; The big question is whether ArcGIS will be able to perform the union at all, but there is a hope: my experience is that buffering tends to have more bugs than other geoprocessing operations (it uses algorithms that differ in some important ways from the more basic set-theoretic operations of union and intersection).&amp;nbsp; Of course if you succeed in externally buffering the complement, you will then proceed to form &lt;/SPAN&gt;&lt;SPAN style="font-style:italic;"&gt;its&lt;/SPAN&gt;&lt;SPAN&gt; complement to produce the internal lake buffer you're looking for.&lt;/SPAN&gt;&lt;BR /&gt;&lt;BR /&gt;&lt;SPAN&gt;If this doesn't succeed, another approach is to convert the lakes to their polyline boundaries and attempt to buffer the polylines.&amp;nbsp; A subsequent union of that buffer with the original lake polygons--if it succeeds--will produce a mess, but in that mess will be the negative buffers you want.&lt;/SPAN&gt;&lt;BR /&gt;&lt;BR /&gt;&lt;SPAN&gt;Raster analysis offers another route that is likely to succeed, but its solutions will have some grid discretization error.&amp;nbsp; Whether that's acceptable or not depends on what you'll be doing with these buffers.&lt;/SPAN&gt;&lt;/BODY&gt;&lt;/HTML&gt;</description>
      <pubDate>Fri, 09 Jul 2010 13:15:36 GMT</pubDate>
      <guid>https://community.esri.com/t5/geoprocessing-questions/inside-buffer/m-p/345595#M12048</guid>
      <dc:creator>Anonymous User</dc:creator>
      <dc:date>2010-07-09T13:15:36Z</dc:date>
    </item>
    <item>
      <title>Re: Inside Buffer</title>
      <link>https://community.esri.com/t5/geoprocessing-questions/inside-buffer/m-p/345596#M12049</link>
      <description>&lt;HTML&gt;&lt;HEAD&gt;&lt;/HEAD&gt;&lt;BODY&gt;&lt;SPAN&gt;FYI&lt;/SPAN&gt;&lt;BR /&gt;&lt;SPAN&gt;This problem is part of the larger problem I am trying to solve in this thread:&lt;/SPAN&gt;&lt;BR /&gt;&lt;A href="http://forums.arcgis.com/threads/7695-Challenge-Lake-vs.-River"&gt;http://forums.arcgis.com/threads/7695-Challenge-Lake-vs.-River&lt;/A&gt;&lt;BR /&gt;&lt;BR /&gt;&lt;SPAN&gt;I have had success creating a negative buffer from a simplified polygon by converting the polygon to a line, buffering the line, and erasing the line buffer from the simplified polygon.&lt;/SPAN&gt;&lt;BR /&gt;&lt;SPAN&gt;Creating the complement of the lakes is a really interesting idea, but I have such a huge number of lakes to do this for that I don't think it is feasible.&lt;/SPAN&gt;&lt;BR /&gt;&lt;BR /&gt;&lt;SPAN&gt;As part of a process further down the line I need to re-buffer my buffers to get a more accurate reading of lake area and to help with creating pour points for catchment delineation.&amp;nbsp; This second buffer process is giving me errors as well.&lt;/SPAN&gt;&lt;/BODY&gt;&lt;/HTML&gt;</description>
      <pubDate>Fri, 09 Jul 2010 13:41:32 GMT</pubDate>
      <guid>https://community.esri.com/t5/geoprocessing-questions/inside-buffer/m-p/345596#M12049</guid>
      <dc:creator>LornaMurison</dc:creator>
      <dc:date>2010-07-09T13:41:32Z</dc:date>
    </item>
    <item>
      <title>Re: Inside Buffer</title>
      <link>https://community.esri.com/t5/geoprocessing-questions/inside-buffer/m-p/345597#M12050</link>
      <description>&lt;HTML&gt;&lt;HEAD&gt;&lt;/HEAD&gt;&lt;BODY&gt;&lt;SPAN&gt;Original User: whuber&lt;/SPAN&gt;&lt;BR /&gt;&lt;BR /&gt;&lt;BLOCKQUOTE class="jive-quote"&gt;Creating the complement of the lakes is a really interesting idea, but I have such a huge number of lakes to do this for that I don't think it is feasible.&lt;/BLOCKQUOTE&gt;&lt;BR /&gt;&lt;BR /&gt;&lt;SPAN&gt;You can do it all in one step, Lorna.&amp;nbsp; I wrote about focusing on just the problem lakes because they are problems!&amp;nbsp; But if buffering them succeeds, then you should be able to buffer all the lakes by computing their mutual complement (one operation) and buffering it (one operation).&lt;/SPAN&gt;&lt;BR /&gt;&lt;BR /&gt;&lt;BR /&gt;&lt;BLOCKQUOTE class="jive-quote"&gt;As part of a process further down the line I need to re-buffer my buffers to get a more accurate reading of lake area and to help with creating pour points for catchment delineation.&amp;nbsp; This second buffer process is giving me errors as well.&lt;/BLOCKQUOTE&gt;&lt;BR /&gt;&lt;BR /&gt;&lt;SPAN&gt;Yes, it will give you problems, because all the "round" parts of buffers contain many, many vertices.&amp;nbsp; That creates a huge complex feature to buffer, potentially causing difficulties (or at least taking a lot of time).&amp;nbsp; Usually it's better not to re-buffer a buffer but to re-buffer the original feature by the difference in buffer radii.&lt;/SPAN&gt;&lt;/BODY&gt;&lt;/HTML&gt;</description>
      <pubDate>Fri, 09 Jul 2010 20:08:51 GMT</pubDate>
      <guid>https://community.esri.com/t5/geoprocessing-questions/inside-buffer/m-p/345597#M12050</guid>
      <dc:creator>Anonymous User</dc:creator>
      <dc:date>2010-07-09T20:08:51Z</dc:date>
    </item>
    <item>
      <title>Re: Inside Buffer</title>
      <link>https://community.esri.com/t5/geoprocessing-questions/inside-buffer/m-p/345598#M12051</link>
      <description>&lt;HTML&gt;&lt;HEAD&gt;&lt;/HEAD&gt;&lt;BODY&gt;&lt;BLOCKQUOTE class="jive-quote"&gt;You can do it all in one step, Lorna.&amp;nbsp; I wrote about focusing on just the problem lakes because they are problems!&amp;nbsp; But if buffering them succeeds, then you should be able to buffer all the lakes by computing their mutual complement (one operation) and buffering it (one operation).&lt;/BLOCKQUOTE&gt;&lt;BR /&gt;&lt;SPAN&gt; &lt;/SPAN&gt;&lt;BR /&gt;&lt;SPAN&gt;You're right, I could do it in one step more or less.&amp;nbsp; I'm satisfied, however, with converting polygons to lines, buffering the lines, and erasing the buffers.&lt;/SPAN&gt;&lt;BR /&gt;&lt;SPAN&gt;This does a good job of getting rid of narrow areas, or splitting polygons where they narrow.&amp;nbsp; As you can see in the attached picture.&amp;nbsp; The red line represents the original lake outline, and the purple is the buffered lake (26 meter buffer).&lt;/SPAN&gt;&lt;BR /&gt;&lt;BR /&gt;&lt;SPAN&gt;The reason why I was wanting to re-buffer the negative buffer is to get a more accurate reading of the lake area.&amp;nbsp; By re-buffering the lakes, the rivers would still be gone, except the area calculations would be more accurate.&lt;/SPAN&gt;&lt;BR /&gt;&lt;BR /&gt;&lt;SPAN&gt;I am now hoping that I can just add a field to my negatively buffered lakes with an estimation of lake area.&amp;nbsp; But that is another question entirely.&amp;nbsp; Is there a way to estimate the area of a buffer polygon if you know the buffer distance and the area of the original polygon?&lt;/SPAN&gt;&lt;/BODY&gt;&lt;/HTML&gt;</description>
      <pubDate>Mon, 12 Jul 2010 17:38:55 GMT</pubDate>
      <guid>https://community.esri.com/t5/geoprocessing-questions/inside-buffer/m-p/345598#M12051</guid>
      <dc:creator>LornaMurison</dc:creator>
      <dc:date>2010-07-12T17:38:55Z</dc:date>
    </item>
    <item>
      <title>Re: Inside Buffer</title>
      <link>https://community.esri.com/t5/geoprocessing-questions/inside-buffer/m-p/345599#M12052</link>
      <description>&lt;HTML&gt;&lt;HEAD&gt;&lt;/HEAD&gt;&lt;BODY&gt;&lt;SPAN&gt;Original User: whuber&lt;/SPAN&gt;&lt;BR /&gt;&lt;BR /&gt;&lt;BLOCKQUOTE class="jive-quote"&gt;&amp;nbsp; Is there a way to estimate the area of a buffer polygon if you know the buffer distance and the area of the original polygon?&lt;/BLOCKQUOTE&gt;&lt;BR /&gt;&lt;SPAN&gt; &lt;/SPAN&gt;&lt;BR /&gt;&lt;SPAN&gt;No, but if you're willing to do the (easy) calculation of perimeter, then there is a way: the additional buffer area is approximately equal to the buffer radius times the perimeter.&amp;nbsp; The approximation is good when the radius is small compared to the polygon's size (as measured by the square root of its area, say) and the polygon's boundary is not too tortuous.&amp;nbsp; In particular, it should work well for situations like the one you illustrated.&amp;nbsp; (If you add to the approximation the area of a circle whose radius equals the buffer radius, this approximation often gives &lt;/SPAN&gt;&lt;SPAN style="font-style:italic;"&gt;exact&lt;/SPAN&gt;&lt;SPAN&gt; answers.)&lt;/SPAN&gt;&lt;BR /&gt;&lt;BR /&gt;&lt;STRONG&gt;For example&lt;/STRONG&gt;&lt;SPAN&gt;: suppose the polygon area is 10,000 square meters, its perimeter is 500 meters, and the buffer radius is 1 meter.&amp;nbsp; Then the (externally) buffered polygon area is estimated as&lt;/SPAN&gt;&lt;BR /&gt;&lt;BR /&gt;&lt;SPAN&gt;[INDENT]10,000 + 500 * 1 [+ Pi * 1^2]&lt;/SPAN&gt;&lt;BR /&gt;&lt;SPAN&gt;= 10,500 [or 10,503.14] square meters.&lt;/SPAN&gt;&lt;BR /&gt;&lt;BR /&gt;&lt;SPAN&gt;[/INDENT]We expect this to work well in the example because (a) sqrt(10,000) : 1 = 100:1 shows the polygon is much larger than the buffer radius and (b) 500 : sqrt(10,000) = 5:1, a number that measures the tortuosity, is small.&lt;/SPAN&gt;&lt;/BODY&gt;&lt;/HTML&gt;</description>
      <pubDate>Tue, 13 Jul 2010 12:06:10 GMT</pubDate>
      <guid>https://community.esri.com/t5/geoprocessing-questions/inside-buffer/m-p/345599#M12052</guid>
      <dc:creator>Anonymous User</dc:creator>
      <dc:date>2010-07-13T12:06:10Z</dc:date>
    </item>
    <item>
      <title>Re: Inside Buffer</title>
      <link>https://community.esri.com/t5/geoprocessing-questions/inside-buffer/m-p/345600#M12053</link>
      <description>&lt;HTML&gt;&lt;HEAD&gt;&lt;/HEAD&gt;&lt;BODY&gt;&lt;BLOCKQUOTE class="jive-quote"&gt;&lt;BR /&gt;&lt;BR /&gt;&lt;STRONG&gt;For example&lt;/STRONG&gt;: suppose the polygon area is 10,000 square meters, its perimeter is 500 meters, and the buffer radius is 1 meter.&amp;nbsp; Then the (externally) buffered polygon area is estimated as&lt;BR /&gt;&lt;BR /&gt;[INDENT]10,000 + 500 * 1 [+ Pi * 1^2]&lt;BR /&gt;= 10,500 [or 10,503.14] square meters.&lt;BR /&gt;[/INDENT]&lt;BR /&gt;&lt;/BLOCKQUOTE&gt;&lt;BR /&gt;&lt;SPAN&gt; &lt;/SPAN&gt;&lt;BR /&gt;&lt;SPAN&gt;Thank you so much, this is exactly what I am looking for, it's going to be a huge help!&lt;/SPAN&gt;&lt;BR /&gt;&lt;SPAN&gt;Could you please clarify the formula though?&lt;/SPAN&gt;&lt;BR /&gt;&lt;SPAN&gt;I am not sure what the buffer radius is being multiplied by and what pi is being added to.&amp;nbsp; Is it 1(10,000 + 500)+(pi*1^2) ?&lt;/SPAN&gt;&lt;BR /&gt;&lt;SPAN&gt;Thanks&lt;/SPAN&gt;&lt;BR /&gt;&lt;BR /&gt;&lt;BR /&gt;&lt;SPAN&gt;*edit&lt;/SPAN&gt;&lt;BR /&gt;&lt;SPAN&gt;I have tested out the formula and now understand it to be BufferRadius(Perimeter)+Area+(BufferRadius^2*pi)&lt;/SPAN&gt;&lt;BR /&gt;&lt;SPAN&gt;It works extremely well, thank you.&lt;/SPAN&gt;&lt;/BODY&gt;&lt;/HTML&gt;</description>
      <pubDate>Tue, 13 Jul 2010 12:44:12 GMT</pubDate>
      <guid>https://community.esri.com/t5/geoprocessing-questions/inside-buffer/m-p/345600#M12053</guid>
      <dc:creator>LornaMurison</dc:creator>
      <dc:date>2010-07-13T12:44:12Z</dc:date>
    </item>
  </channel>
</rss>

