如何在ArcMap中获取要素类中所有要素的包络?


10

我想得到一个要素类中所有要素的单个信封。有没有办法在ArcMap中做到这一点?


1
当我阅读答案时,我意识到我的问题不够具体。我一直在寻找在ArcMap GUI中找到信封的工具。Swingley的答案只需一步就可以完成。但是,我正在使用没有该工具的ArcMap 9.3.1,但是gkh的答案在ArcMap 9.3.1(我猜是9.x)中分两个步骤完成了该任务。Swingley和gkh的答案都需要INFO许可证。我也没有指定,但就我而言,这很好。
steenhulthin

Answers:



5

FeatureClass支持IGeoDataset接口,该接口具有一个Extent属性,其中包含所有功能使用的IEnvelope

欢呼布莱恩


1
嗨,布莱恩(Brian)-使用10.0时,我看到“缩放到图层”有一些奇怪的行为(它缩放得太大了)。我认为“缩放到图层”使用IGeoDataset.Extent,但不确定。我以编程方式将特征添加到空shapefile后,会出现问题。添加功能后,我通过调用IFeatureClassManage.UpdateExtent解决了该问题。
Kirk Kuykendall,2010年

嘿,柯克-我无法确切地说出发生了什么,但是我猜想它可能会使用空间参考的全部范围,直到它具有几何形状。也许他们使UpdateExtent调用(或其等效功能)成为手动过程(出于性能原因?),谁知道,10.0充满了错误。强大的功能,但有很多问题...
bFlood 2010年

2

如果要在9.3x中使用arcgisscripting Python模块:

import arcgisscripting

gp = arcgisscripting.create(9.3)

fc = "C:/workshop/exercises/exercise1/data/stlouis_cities_geog.shp"

fcDesc = gp.describe(fc)

shpExtent = fcDesc.extent
print("Bounding Box: " + str(shpExtent.XMin) + "," + str(shpExtent.YMin) + "," +  str(shpExtent.XMax) + "," + str(shpExtent.YMax))

del fc, gp

1

在9.3中,可以使用“将特征包络为多边形”工具。您可能需要将输出分解为多部分功能,然后再次运行“信封”工具。


0

一个粗略的技巧:在“数据框属性”,“数据框”选项卡中,“完整范围命令所使用的范围”-转到“其他” |“指定范围”,选择“功能概述”和感兴趣的FC。在所有对话框中单击确定,返回到“指定范围”,FC的范围现在应该是“自定义范围”顶部,右侧,底部,左侧字段中显示的内容。我们这样做是为了在ArcGIS Server地图服务中设置自定义全图范围,但它应该为您提供所需的FC范围。

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.