欢迎您访问程序员文章站本站旨在为大家提供分享程序员计算机编程知识!
您现在的位置是: 首页  >  IT编程

arcEngine开发之IMapControl接口

程序员文章站 2022-07-05 16:22:47
简介 IMapControl接口最重要的是包含IMap属性,还提供另外的属性用于:管理一般的外观显示,管理图层,加载地图文档以及跟踪在界面上显示的图形。 小知识点:一般一个接口的最新实现是 Default ,如果又多个实现,是通过数字区分,数字越大,其版本也越新。 属性介绍 1. IActiveVi ......

简介

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

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