在ArcGIS Desktop中创建凸包?


15

我希望能够在ArcGIS Desktop 9.x中创建凸包,但是找不到合适的工具。

一个人如何去创造一个人呢?

我对所有许可级别的答案都感兴趣:ArcView,ArcEditor和ArcInfo。


1
qgis 1.7.4地理处理工具中有一个凸包选项,它看起来与Arcgis 10中带有凸包和组选项的工具完全一样

Answers:



14

在版本10中,现在提供了“ 最小边界几何(数据管理)”地理处理工具,该工具可以:

创建一个包含多边形的要素类,这些多边形表示包围每个输入要素或每组输入要素的指定的最小边界几何。

然而:

几何类型(geometry_type)选项CONVEX_HULL,CIRCLE和ENVELOPE仅在ArcInfo许可证中可用。


1
哇,新的“最小边界几何”工具看起来很棒。不幸的是,CONVEX_HULL,CIRCLE和ENVELOPE仅适用于ArcInfo许可。更多信息:help.arcgis.com/en/arcgisdesktop/10.0/help/index.html#//…
Charles Roper 2010年

5
在版本10中,请参阅 resources.arcgis.com/gallery/file/geoprocessing/…,无论许可证级别如何,该文件都会生成所有文件

@DanPatterson Esri最近对网站的清理破坏了您的链接-您知道新的URL吗?工具/脚本的名称是什么?
斯蒂芬·利德

该站点似乎处于不断变化的状态...我必须检查Geonet内的迁移,因为我知道迁移正在进行。当我发现时我将更新...


3

这是一个老问题,但是由于在搜索“凸包外壳弧线”时显得很高,因此我想添加“ 创建凸包地理处理示例”。

这使用了几何凸面()方法(要求10.1或更高版本,已在10.2中进行测试)。在ArcGIS Basic中可以正常工作,(python)工具箱中的代码也是在其他地方使用此方法的很好参考。



1

这是一个效果很好的旧版本,http: //arcscripts.esri.com/details.asp dbid = 12084 (忽略359kb的0k文件大小错误,它是359kb)会创建一组点的凸包或凸包(点的最小边界框)

注意:使用VBA,但可在arcview,arctitor arc / info中使用。


1

由于该问题的公认答案是Hawth的工具(现已被取代),我决定将其发布为地理空间建​​模环境的继任者。

命令genmcp(生成最小凸多边形)将做的工作。该工具接受点输入和可选的唯一标识符,然后输出多边形。可以指定where子句以标识输入要素的子集。

注意,GME具有某些依赖性:最重要的是ArcGIS和R。


1

ArcGIS 10开始,arcpy.geometryclass具有只读属性hullRectangle,该属性将返回凸包矩形的坐标对的以空格分隔的字符串。

您可以轻松地遍历创建凸包的每个特征,然后根据需要保留它们。在所有许可证级别中都可用。

g = [f for f in arcpy.da.SearchCursor("CityStreets","SHAPE@","OBJECTID=47")][0][0]
c = g.hullRectangle

输出:

u'1592326,2415 7543305,0318 1592303,39647295 7543680,88044691 1594546,11624981 7543817,19860157 1594568,96127687 7543441,34995466'

ArcGIS 10.1开始,有一种convexHull()直接返回几何对象的方法:

g = [f for f in arcpy.da.SearchCursor("CityStreets","SHAPE@","OBJECTID=47")][0][0]
c = g.convexHull()
arcpy.CopyFeatures_management(c,'outhull')

折线要素的凸包示例:

在此处输入图片说明

参考链接:

By using our site, you acknowledge that you have read and understand our Cookie Policy and Privacy Policy.
Licensed under cc by-sa 3.0 with attribution required.