<?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 Collapse small polygons into surrounding larger ones? in Data Management Questions</title>
    <link>https://community.esri.com/t5/data-management-questions/collapse-small-polygons-into-surrounding-larger/m-p/402351#M23105</link>
    <description>&lt;HTML&gt;&lt;HEAD&gt;&lt;/HEAD&gt;&lt;BODY&gt;&lt;SPAN&gt;Hi All,&lt;/SPAN&gt;&lt;BR /&gt;&lt;BR /&gt;&lt;SPAN&gt;I have what I thought would be a simple editing task, but has turned out to be cumbersome to put it mildly.&lt;/SPAN&gt;&lt;BR /&gt;&lt;BR /&gt;&lt;SPAN&gt;I have a set of land cover polygons from image data classified at a resolution of 1 foot.&amp;nbsp; Because the resolution of the reference data are so precise, I'm getting small 1 sqft polygons in the middle of the larger ones.&amp;nbsp; For example, a 1 sqft impervious surface poly surrounded by 50 sqft of managed turf.&amp;nbsp; I would like to be able to dissolve these tiny polygons into the bigger ones.&lt;/SPAN&gt;&lt;BR /&gt;&lt;BR /&gt;&lt;SPAN&gt;I've tried topologies, but that doesn't work correctly because I don't want to lose the resolution of the data that are already there, which happens with high cluster tolearances.&amp;nbsp; I can delete the polygons of less than a certain area, but then I'm left with tiny gaps that I have to hand edit out, which could potentially be in the hundreds of thousands.&lt;/SPAN&gt;&lt;BR /&gt;&lt;BR /&gt;&lt;SPAN&gt;Is there any way to programmatically collapse polygons under a certain size, without losing the integrity of the rest of the data?&amp;nbsp; I'm just trying to clean it up a little bit.&lt;/SPAN&gt;&lt;BR /&gt;&lt;BR /&gt;&lt;SPAN&gt;Thanks.&lt;/SPAN&gt;&lt;BR /&gt;&lt;BR /&gt;&lt;SPAN&gt;Pam&lt;/SPAN&gt;&lt;/BODY&gt;&lt;/HTML&gt;</description>
    <pubDate>Tue, 08 Feb 2011 14:59:36 GMT</pubDate>
    <dc:creator>PamTurner</dc:creator>
    <dc:date>2011-02-08T14:59:36Z</dc:date>
    <item>
      <title>Collapse small polygons into surrounding larger ones?</title>
      <link>https://community.esri.com/t5/data-management-questions/collapse-small-polygons-into-surrounding-larger/m-p/402351#M23105</link>
      <description>&lt;HTML&gt;&lt;HEAD&gt;&lt;/HEAD&gt;&lt;BODY&gt;&lt;SPAN&gt;Hi All,&lt;/SPAN&gt;&lt;BR /&gt;&lt;BR /&gt;&lt;SPAN&gt;I have what I thought would be a simple editing task, but has turned out to be cumbersome to put it mildly.&lt;/SPAN&gt;&lt;BR /&gt;&lt;BR /&gt;&lt;SPAN&gt;I have a set of land cover polygons from image data classified at a resolution of 1 foot.&amp;nbsp; Because the resolution of the reference data are so precise, I'm getting small 1 sqft polygons in the middle of the larger ones.&amp;nbsp; For example, a 1 sqft impervious surface poly surrounded by 50 sqft of managed turf.&amp;nbsp; I would like to be able to dissolve these tiny polygons into the bigger ones.&lt;/SPAN&gt;&lt;BR /&gt;&lt;BR /&gt;&lt;SPAN&gt;I've tried topologies, but that doesn't work correctly because I don't want to lose the resolution of the data that are already there, which happens with high cluster tolearances.&amp;nbsp; I can delete the polygons of less than a certain area, but then I'm left with tiny gaps that I have to hand edit out, which could potentially be in the hundreds of thousands.&lt;/SPAN&gt;&lt;BR /&gt;&lt;BR /&gt;&lt;SPAN&gt;Is there any way to programmatically collapse polygons under a certain size, without losing the integrity of the rest of the data?&amp;nbsp; I'm just trying to clean it up a little bit.&lt;/SPAN&gt;&lt;BR /&gt;&lt;BR /&gt;&lt;SPAN&gt;Thanks.&lt;/SPAN&gt;&lt;BR /&gt;&lt;BR /&gt;&lt;SPAN&gt;Pam&lt;/SPAN&gt;&lt;/BODY&gt;&lt;/HTML&gt;</description>
      <pubDate>Tue, 08 Feb 2011 14:59:36 GMT</pubDate>
      <guid>https://community.esri.com/t5/data-management-questions/collapse-small-polygons-into-surrounding-larger/m-p/402351#M23105</guid>
      <dc:creator>PamTurner</dc:creator>
      <dc:date>2011-02-08T14:59:36Z</dc:date>
    </item>
    <item>
      <title>Re: Collapse small polygons into surrounding larger ones?</title>
      <link>https://community.esri.com/t5/data-management-questions/collapse-small-polygons-into-surrounding-larger/m-p/402352#M23106</link>
      <description>&lt;HTML&gt;&lt;HEAD&gt;&lt;/HEAD&gt;&lt;BODY&gt;&lt;SPAN&gt;Hi Pam,&lt;/SPAN&gt;&lt;BR /&gt;&lt;BR /&gt;&lt;SPAN&gt;This is code I use in an application (in VB.NET, ArcGIS 9.2) where the user can select whether to merge polygons smaller than a specified area with the largest adjacent polygon or the polygon with the longer adjacent border.&lt;/SPAN&gt;&lt;BR /&gt;&lt;BR /&gt;&lt;PRE class="lia-code-sample line-numbers language-none"&gt;
&amp;nbsp; Friend Sub EliminateSlivers(ByVal m_app As ESRI.ArcGIS.Framework.IApplication, ByVal pFLayer As ESRI.ArcGIS.Carto.IFeatureLayer, ByVal MMU As Double, ByVal EliminateType As String)

&amp;nbsp;&amp;nbsp;&amp;nbsp; Dim IsEditing As Boolean = True
&amp;nbsp;&amp;nbsp;&amp;nbsp; Dim pDataset As ESRI.ArcGIS.Geodatabase.IDataset
&amp;nbsp;&amp;nbsp;&amp;nbsp; Dim pEditor As ESRI.ArcGIS.Editor.IEditor
&amp;nbsp;&amp;nbsp;&amp;nbsp; Dim pEditLayers As ESRI.ArcGIS.Editor.IEditLayers
&amp;nbsp;&amp;nbsp;&amp;nbsp; Dim pFCursor As ESRI.ArcGIS.Geodatabase.IFeatureCursor
&amp;nbsp;&amp;nbsp;&amp;nbsp; Dim pFeature As ESRI.ArcGIS.Geodatabase.IFeature
&amp;nbsp;&amp;nbsp;&amp;nbsp; Dim pArea As ESRI.ArcGIS.Geometry.IArea
&amp;nbsp;&amp;nbsp;&amp;nbsp; Dim pAdjFeature As ESRI.ArcGIS.Geodatabase.IFeature
&amp;nbsp;&amp;nbsp;&amp;nbsp; Dim pTopoOp As ESRI.ArcGIS.Geometry.ITopologicalOperator

&amp;nbsp;&amp;nbsp;&amp;nbsp; Try
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; pDataset = pFLayer
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; pEditor = m_app.FindExtensionByName("ESRI Object Editor")
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; If pEditor.EditState &amp;lt;&amp;gt; ESRI.ArcGIS.Editor.esriEditState.esriStateEditing Then
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; IsEditing = False
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; pEditor.StartEditing(pDataset.Workspace)
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; End If
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; pEditLayers = pEditor
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; pEditLayers.SetCurrentLayer(pFLayer, 0)
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; pEditor.StartOperation()
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; pFCursor = pFLayer.FeatureClass.Search(Nothing, False)
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; pFeature = pFCursor.NextFeature
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; Do Until pFeature Is Nothing
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; pArea = pFeature.Shape
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; If pArea.Area &amp;lt; MMU Then
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; If EliminateType = "Border" Then
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; pAdjFeature = GetLongestBorderAdjacent(pFeature)
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; Else
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; pAdjFeature = GetLargestAdjacent(pFeature)
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; End If
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; If pAdjFeature IsNot Nothing Then
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; pTopoOp = pAdjFeature.ShapeCopy
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; pAdjFeature.Shape = pTopoOp.Union(pFeature.ShapeCopy)
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; pAdjFeature.Store()
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; pFeature.Delete()
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; End If
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; End If
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; pFeature = pFCursor.NextFeature
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; Loop

&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; pEditor.StopOperation("Merge")
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; If Not IsEditing Then
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; pEditor.StopEditing(True)
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; End If

&amp;nbsp;&amp;nbsp;&amp;nbsp; Catch ex As Exception
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; ExceptionMessage(ex, "Eliminate Slivers")
&amp;nbsp;&amp;nbsp;&amp;nbsp; Finally
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; Release(pFCursor)
&amp;nbsp;&amp;nbsp;&amp;nbsp; End Try

&amp;nbsp; End Sub

&amp;nbsp; Private Function GetArea(ByVal pArea As ESRI.ArcGIS.Geometry.IArea) As Double
&amp;nbsp;&amp;nbsp;&amp;nbsp; GetArea = pArea.Area
&amp;nbsp; End Function

&amp;nbsp; Public Function GetBorderLen(ByVal pPoly1 As ESRI.ArcGIS.Geometry.IPolygon, ByVal pPoly2 As ESRI.ArcGIS.Geometry.IPolygon) As Double

&amp;nbsp;&amp;nbsp;&amp;nbsp; Dim pTopoOp As ESRI.ArcGIS.Geometry.ITopologicalOperator = pPoly1
&amp;nbsp;&amp;nbsp;&amp;nbsp; Dim pGeo As ESRI.ArcGIS.Geometry.IGeometry = pTopoOp.Intersect(pPoly2, ESRI.ArcGIS.Geometry.esriGeometryDimension.esriGeometry1Dimension)

&amp;nbsp;&amp;nbsp;&amp;nbsp; If Not pGeo.IsEmpty Then
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; Dim pPoly3 As ESRI.ArcGIS.Geometry.IPolyline = pGeo
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; Return pPoly3.Length
&amp;nbsp;&amp;nbsp;&amp;nbsp; Else
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; Return 0.0
&amp;nbsp;&amp;nbsp;&amp;nbsp; End If

&amp;nbsp; End Function

&amp;nbsp; Friend Function GetLargestAdjacent(ByVal pFeat As ESRI.ArcGIS.Geodatabase.IFeature) As ESRI.ArcGIS.Geodatabase.IFeature

&amp;nbsp;&amp;nbsp;&amp;nbsp; Dim pSF As ESRI.ArcGIS.Geodatabase.ISpatialFilter = New ESRI.ArcGIS.Geodatabase.SpatialFilter
&amp;nbsp;&amp;nbsp;&amp;nbsp; Dim pFC As ESRI.ArcGIS.Geodatabase.IFeatureClass
&amp;nbsp;&amp;nbsp;&amp;nbsp; Dim pFCur As ESRI.ArcGIS.Geodatabase.IFeatureCursor
&amp;nbsp;&amp;nbsp;&amp;nbsp; Dim pFeat2 As ESRI.ArcGIS.Geodatabase.IFeature
&amp;nbsp;&amp;nbsp;&amp;nbsp; Dim pLargestFeat As ESRI.ArcGIS.Geodatabase.IFeature
&amp;nbsp;&amp;nbsp;&amp;nbsp; Dim dMaxArea As Double

&amp;nbsp;&amp;nbsp;&amp;nbsp; Try
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; pSF.Geometry = pFeat.Shape
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; pSF.SpatialRel = ESRI.ArcGIS.Geodatabase.esriSpatialRelEnum.esriSpatialRelIntersects

&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; pFC = pFeat.Class
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; pFCur = pFC.Search(pSF, False)
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; pFeat2 = pFCur.NextFeature
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; Do Until pFeat2 Is Nothing
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; If pLargestFeat Is Nothing Then
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; pLargestFeat = pFeat2
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; dMaxArea = GetArea(pFeat2.Shape)
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; Else
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; If GetArea(pFeat2.Shape) &amp;gt; dMaxArea Then
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; pLargestFeat = pFeat2
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; dMaxArea = GetArea(pFeat2.Shape)
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; End If
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; End If

&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; pFeat2 = pFCur.NextFeature
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; Loop

&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; Return pLargestFeat

&amp;nbsp;&amp;nbsp;&amp;nbsp; Catch ex As Exception
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; ExceptionMessage(ex, "Get Largest Feature")
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; Return Nothing
&amp;nbsp;&amp;nbsp;&amp;nbsp; End Try

&amp;nbsp; End Function

&amp;nbsp; Public Function GetLongestBorderAdjacent(ByVal pFeat As ESRI.ArcGIS.Geodatabase.IFeature) As ESRI.ArcGIS.Geodatabase.IFeature
&amp;nbsp;&amp;nbsp;&amp;nbsp; Dim pSF As ESRI.ArcGIS.Geodatabase.ISpatialFilter = New ESRI.ArcGIS.Geodatabase.SpatialFilter
&amp;nbsp;&amp;nbsp;&amp;nbsp; Dim pFC As ESRI.ArcGIS.Geodatabase.IFeatureClass
&amp;nbsp;&amp;nbsp;&amp;nbsp; Dim pFCur As ESRI.ArcGIS.Geodatabase.IFeatureCursor
&amp;nbsp;&amp;nbsp;&amp;nbsp; Dim pFeat2 As ESRI.ArcGIS.Geodatabase.IFeature
&amp;nbsp;&amp;nbsp;&amp;nbsp; Dim pLongestBorderFeat As ESRI.ArcGIS.Geodatabase.IFeature
&amp;nbsp;&amp;nbsp;&amp;nbsp; Dim dMaxLen As Double

&amp;nbsp;&amp;nbsp;&amp;nbsp; Try
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; pSF.Geometry = pFeat.Shape
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; pSF.SpatialRel = ESRI.ArcGIS.Geodatabase.esriSpatialRelEnum.esriSpatialRelIntersects

&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; pFC = pFeat.Class
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; pFCur = pFC.Search(pSF, False)

&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; pFeat2 = pFCur.NextFeature
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; Do Until pFeat2 Is Nothing
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; If pFeat2.OID &amp;lt;&amp;gt; pFeat.OID Then
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; If pLongestBorderFeat Is Nothing Then
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; pLongestBorderFeat = pFeat2
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; dMaxLen = GetBorderLen(pFeat.Shape, pFeat2.Shape)
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; Else
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; If GetBorderLen(pFeat.Shape, pFeat2.Shape) &amp;gt; dMaxLen Then
&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; pLongestBorderFeat = pFeat2
&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; dMaxLen = GetBorderLen(pFeat.Shape, pFeat2.Shape)
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; End If
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; End If
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; End If
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; pFeat2 = pFCur.NextFeature
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; Loop

&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; Return pLongestBorderFeat

&amp;nbsp;&amp;nbsp;&amp;nbsp; Catch ex As Exception
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; ExceptionMessage(ex, "Get Longest Feature")
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; Return Nothing
&amp;nbsp;&amp;nbsp;&amp;nbsp; Finally
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; Release(pFCur)
&amp;nbsp;&amp;nbsp;&amp;nbsp; End Try

&amp;nbsp; End Function
&lt;/PRE&gt;&lt;/BODY&gt;&lt;/HTML&gt;</description>
      <pubDate>Sat, 11 Dec 2021 18:20:29 GMT</pubDate>
      <guid>https://community.esri.com/t5/data-management-questions/collapse-small-polygons-into-surrounding-larger/m-p/402352#M23106</guid>
      <dc:creator>KenBuja</dc:creator>
      <dc:date>2021-12-11T18:20:29Z</dc:date>
    </item>
    <item>
      <title>Re: Collapse small polygons into surrounding larger ones?</title>
      <link>https://community.esri.com/t5/data-management-questions/collapse-small-polygons-into-surrounding-larger/m-p/402353#M23107</link>
      <description>&lt;HTML&gt;&lt;HEAD&gt;&lt;/HEAD&gt;&lt;BODY&gt;&lt;SPAN&gt;I have tried to implement this code but am getting errors. I am somewhat green on using VB in ArcGIS so any assistance would be appreciated.&lt;/SPAN&gt;&lt;BR /&gt;&lt;BR /&gt;&lt;SPAN&gt;Thank you for any assistance&lt;/SPAN&gt;&lt;BR /&gt;&lt;SPAN&gt;Brian&lt;/SPAN&gt;&lt;/BODY&gt;&lt;/HTML&gt;</description>
      <pubDate>Wed, 15 Feb 2012 12:37:49 GMT</pubDate>
      <guid>https://community.esri.com/t5/data-management-questions/collapse-small-polygons-into-surrounding-larger/m-p/402353#M23107</guid>
      <dc:creator>BrianKozar</dc:creator>
      <dc:date>2012-02-15T12:37:49Z</dc:date>
    </item>
    <item>
      <title>Re: Collapse small polygons into surrounding larger ones?</title>
      <link>https://community.esri.com/t5/data-management-questions/collapse-small-polygons-into-surrounding-larger/m-p/402354#M23108</link>
      <description>&lt;HTML&gt;&lt;HEAD&gt;&lt;/HEAD&gt;&lt;BODY&gt;&lt;SPAN&gt;Brian - If you have the ArcInfo licensing level there's a tool called "Eliminate" in the Generalization toolbox that does this. I found it a little bit ago, unfortuately it was several months after I needed it :).&lt;/SPAN&gt;&lt;BR /&gt;&lt;BR /&gt;&lt;SPAN&gt;Good Luck!&lt;/SPAN&gt;&lt;/BODY&gt;&lt;/HTML&gt;</description>
      <pubDate>Wed, 15 Feb 2012 13:51:19 GMT</pubDate>
      <guid>https://community.esri.com/t5/data-management-questions/collapse-small-polygons-into-surrounding-larger/m-p/402354#M23108</guid>
      <dc:creator>PamTurner</dc:creator>
      <dc:date>2012-02-15T13:51:19Z</dc:date>
    </item>
    <item>
      <title>Re: Collapse small polygons into surrounding larger ones?</title>
      <link>https://community.esri.com/t5/data-management-questions/collapse-small-polygons-into-surrounding-larger/m-p/402355#M23109</link>
      <description>&lt;HTML&gt;&lt;HEAD&gt;&lt;/HEAD&gt;&lt;BODY&gt;&lt;SPAN&gt;Thanks Pam but I don't have ArcInfo license so unless I can find this as a tool, dll or script I can't use it. Thanks though&lt;/SPAN&gt;&lt;/BODY&gt;&lt;/HTML&gt;</description>
      <pubDate>Wed, 15 Feb 2012 14:18:10 GMT</pubDate>
      <guid>https://community.esri.com/t5/data-management-questions/collapse-small-polygons-into-surrounding-larger/m-p/402355#M23109</guid>
      <dc:creator>BrianKozar</dc:creator>
      <dc:date>2012-02-15T14:18:10Z</dc:date>
    </item>
  </channel>
</rss>

