在ArcMap中,进行属性查询时候,Arcmap中提供了选中字.doc

在ArcMap中,进行属性查询时候,Arcmap中提供了选中字.doc

  1. 1、本文档共18页,可阅读全部内容。
  2. 2、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
  3. 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  4. 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
在ArcMap中,进行属性查询的时候,Arcmap中提供了选中字段的属性的Unique Value。这样就可以从列表中选择了。以前也遇到类似问题,一直不知道怎么做,好在当时使用的ArcSDE Oracle数据,使用了一个SQL语句解决了。不过要是Coverage就没有办法了。其实AO中提供了这样的功能了,可通过IDataStatistics来实现,做了一个函数,参数为图层和字段,返回该图层该字段的所有Unique Value 1.下面程序段是用来列出ArcMap中,指定图层和字段中,所有Unique Value Public Function listUniqueValue(pLayer As IFeatureLayer, pFieldName As String) As String()  Dim pCursor As ICursor  Set pCursor = pLayer.Search(Nothing, False)  Dim pDataStat As IDataStatistics  Dim pValue As Variant  Set pDataStat = New DataStatistics  pDataStat.Field = pFieldName  Set pDataStat.Cursor = pCursor  Dim pEnumVar As IEnumVariantSimple  Set pEnumVar = pDataStat.UniqueValues  pValue = pEnumVar.Next  Dim i As Long  Dim count As Long  count = pDataStat.UniqueValueCount  i = 0  Dim value(200) As String 数组的长度按说应该使用pDataStat.UniqueValueCount来控制,但是编译只能使用               常数,不能使用变量  Do Until IsEmpty(pValue)   value(i) = pValue   i = i + 1   pValue = pEnumVar.Next  Loop  listUniqueValue = value() End Function 2.打开图层属性表 (ArcMap VBA) 下面程序段是用来列出ArcMap中,指定图层和字段中,所有Unique Value Public Sub OpenFeatureLayerTable() Dim pMxDoc As IMxDocument Dim pMap As IMap Dim pLayer As IFeatureLayer Dim pTable As ITableWindow Set pMxDoc = ThisDocument Set pMap = pMxDoc.FocusMap Set pLayer = pMap.Layer(0) Instantiate the Table window Set pTable = New TableWindow Associate the table and a feature layer Set pTable.FeatureLayer = pLayer Set pTable.Application = Application Open the table pTable.Show True End Sub 3.AO中加载SDE中的Raster数据 (ArcMap VBA/VB AO) Public Function GetRasterFromSDE(sServer As String, sInstance As String, _ sUser As String, sPassword As String, sSDERaster As String, Optional version As String = SDE.DEFAULT) As IRasterDataset   加载栅格函数 sServer,sInstance,sDB,sUser,sPasswd: ArcSDE connection info sSDERaster: the ArcSDE raster dataset name Dim pSDEWs As IWorkspaceName Dim pSDEPropertySet As IPropertySet Dim pSDERasterDataset As IRasterDataset Dim pDsName As IDatasetName Dim pName As IName Dim sQualifiedName

文档评论(0)

00625 + 关注
实名认证
内容提供者

该用户很懒,什么也没介绍

1亿VIP精品文档

相关文档