arcEngine开发之IMapControl接口

简介

IMapControl接口最重要的是包含IMap属性,还提供另外的属性用于:管理一般的外观显示,管理图层,加载地图文档以及跟踪在界面上显示的图形。

小知识点:一般一个接口的最新实现是Default ,如果又多个实现,是通过数字区分,数字越大,其版本也越新。**

属性介绍

1. IActiveView

  • 这个属性接口主要是用于管理应用程序的视图以及绘图的操作。IPageLayout和IMap实现了这个接口,这两个接口分别代表ArcMap中的两个视图。当需要使用IMap视图时,可以使用IMxDocument.FocusMap,另外一个则是使用IMxDocument.PageLayout来获取。
  • ArcMap中就只能有一个激活的视图,那么IMxDocument.ActiveView就是当前激活的视图。
  • ShowRulers ShowScrollBars ShowSelection
    既然IActiveView能够管理地图的绘图操作,那么应该设置几个属性对此进行操作,这三个属性分别用于显示标尺 滚动条 选择集。
  • ISelection
    这个属性用于操作选择集

2.Extent 和 FullExtent

  • Extent属于IEnvelope接口(实现Geometry接口),该属性表示当前地图的视图范围。FullExtent表示的是Map的视图。
  • IEnvelope是一个矩形框,至少有四个坐标属性,XMin,XMax,YMin,YMax,CenterAt方法就是根据坐标点来进行操作的。
  • 既然是一个矩形框,那么就可以对这个矩形框的大小进行调整,也可以通过计算和另外一个矩形框的交集、并集来获取一个新的矩形框元素。

方法介绍

IMapControlDefault的方法主要是用于管理图层的,例如AddLayer 、DeleteLayer,还有便是在控件上进行绘制,除此之外,介绍几个我认为比较重要的方法。

1. AddLayerFromFile 和 AddShapeFile

  • 这是两个用于添加数据的方法。这里可以引申出一个思考,为什么需要不同的方法来进行数据的添加?这是因为在ArcMap中存在很多数据格式,不同的数据格式存储的方法是不一样的,因此也需要用不同的方法来打开。

    2. DrawShape

  • IMapControl除了管理图层和数据之外,还有的功能便是进行绘制操作管理,在地图上绘制图形就是使用这个方法。

    3. FromMapPoint ToMapPoint

  • ToMapPoint为将图形设备坐标表示的一个点(X,Y)转换为地图上的一个点对象
  • FromMapPoint为将地图上的点转换为图形设备坐标。

    4. TrackPolygon TrackLine TrackLine

  • 当我们需要跟踪在地图 上所画的图形时,可以使用这几个方法。

相关推荐