arcengine 放大到选择集,Zoom to selected features using ArcObjects

本文介绍如何利用VBA和ArcObjects技术在ArcMap中实现对选定图层特征的缩放功能。通过编写VBA代码,可以轻松地使地图视图聚焦到已选择的地理特征上。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

Summary
In ArcMap you can zoom to the selected features for a layer by right-clicking the layer and selecting Selection > Zoom to Selected Features. This article shows how to do this task using VBA and ArcObjects.

 

Procedure
  1. Start ArcMap.
  2. Create a new UIButtonControl.
  3. Right-click the UIButtonControl and select View Source.
  4. Copy this code into the
    Private   Sub UIButtonControl1_Click()
      
    Dim pDoc As IMxDocument
      
    Set pDoc = ThisDocument
      
    Dim pMap As IMap
      
    Set pMap = pDoc.FocusMap

      
    Dim pLayer As IFeatureLayer
      
    Dim pFSel As IFeatureSelection
      
    Set pLayer = pMap.Layer(0)
      
    Set pFSel = pLayer

      
    'Get the selected features
      Dim pSelSet As ISelectionSet
      
    Set pSelSet = pFSel.SelectionSet

      
    Dim pEnumGeom As IEnumGeometry
      
    Dim pEnumGeomBind As IEnumGeometryBind

      
    Set pEnumGeom = New EnumFeatureGeometry
      
    Set pEnumGeomBind = pEnumGeom
      pEnumGeomBind.BindGeometrySource 
    Nothing, pSelSet

      
    Dim pGeomFactory As IGeometryFactory
      
    Set pGeomFactory = New GeometryEnvironment

      
    Dim pGeom As IGeometry
      
    Set pGeom = pGeomFactory.CreateGeometryFromEnumerator(pEnumGeom)

      pDoc.ActiveView.Extent 
    = pGeom.Envelope
      pDoc.ActiveView.Refresh

    End Sub
    's click event.

    来自:http://www.cnblogs.com/iswszheng/archive/2009/05/15/1457598.html
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值