简介

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

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

arcEngine开发之IMapControl接口的更多相关文章

  1. ArcEngine开发之Command控件使用篇

    转自原文 ArcEngine开发之Command控件使用篇 在ArcEngine类库中有大量的Command控件用来与地图控件进行操作和交互.比如有一系列的地图浏览控件.地图查询控件.图斑选取控件.编 ...

  2. arcEngine开发之IMap、ILayer、IFeatureLayer和IFeatureClass关系

    刚开时学习 Engine 开发时,对于这几个接口之间的关系总是理不清,因此写下这篇文章做个总结. 是什么 在 engine 开发中,我觉得使用过程中应该将每个接口对应到 ArcMap 中的具体事物中, ...

  3. Linux企业级开发技术(2)——epoll企业级开发之epoll接口

    epoll的接口非常简单,总共只有三个函数: 1.int epoll_create(intsize); 生成一个 Epoll 专用的文件描述符,size用来告诉内核这个监听的数目一共有多大.这个参数不 ...

  4. arcEngine开发之activeView.PartialRefresh(译)

    为什么要使用partialRefresh arcMap应用程序窗口操作主要是由 IActiveView 控制的,并且它有 Map(data view) 和 PageLayout(layout view ...

  5. Mybatis-Dao层开发之Mapper接口

    Mapper接口开发方法只需要程序员编写Mapper接口(相当于Dao接口),由Mybatis框架根据接口定义创建接口的动态代理对象,代理对象的方法体同上边Dao接口实现类方法. Mapper接口开发 ...

  6. DSP5509开发之FPGA接口

    1. DSP5509和FPGA或者CPLD之间是什么接口,DSP相对普通MCU,具有专门的硬件乘法器,程序和数据分开的哈弗结构,特殊的DSP指令,快速的实现各种数字信号处理算法.在一个周期内可以完成一 ...

  7. ArcGIS Engine开发之旅08--和查询相关的对象和接口

    原文:ArcGIS Engine开发之旅08--和查询相关的对象和接口 查询在GIS领域应该是一个很频繁的操作,在GIS中除了具有属性查询(和其他关系型数据库的查询类似),还提供了空间查询.在介绍查询 ...

  8. ArcGIS Engine开发之旅04---ARCGIS接口详细说明

    原文:ArcGIS Engine开发之旅04---ARCGIS接口详细说明 ArcGIS接口详细说明... 1 1.      IField接口(esriGeoDatabase)... 2 2.    ...

  9. ArcGIS Engine开发之旅01---产品组成、逻辑体系结构

    原文:ArcGIS Engine开发之旅01---产品组成.逻辑体系结构 ArcGIS Engine 由两个产品组成:  面向开发人员的软件开发包(ArcGIS Engine Developer k ...

随机推荐

  1. Android 上滑上拉菜单SlidingDrawer 不全屏显示的方法

    这里来说一个已经被废弃的SlidingDrawer.. 他可以实现上拉,下拉的菜单. 但是有个问题就是上拉以后,是全屏显示的. 首先 写一个布局: <RelativeLayout xmlns:a ...

  2. 【翻译】在Sencha Touch中创建离线/在线代理

    原文:Creating an Online/Offline proxy in Sencha Touch 概述 在Sencha Touch中,一个常见的需求就是,当设备在没有连接互联网的时候,应用程序必 ...

  3. [转]Android长度单位详解

    android中定义的dimension单位有以下这些:px(Pixels ,像素):对应屏幕上的实际像素点.in(Inches ,英寸):屏幕物理长度单位.mm(Millimeters ,毫米):屏 ...

  4. Swift基础之UITableView(之前写的知识点都是最新的2.2版本样式,欢迎大家参考,可以相互交流)

    //这里只是列举了经常使用的UITableView的属性和方法,其他的都可以类似使用,注意用法即可     //设置全局变量UITableView     var myTableView = UITa ...

  5. 网站开发进阶(二十四)HTML颜色代码表

    HTML颜色代码表 设置背景色:style='background-color:red' 设置字体颜色:style='color:red' 生活在于学习,知识在于积累.

  6. Android listView异步下载和convertView复用产生的错位问题

    1:Item图片显示重复 这个显示重复是指当前行Item显示了之前某行Item的图片. 比如ListView滑动到第2行会异步加载某个图片,但是加载很慢,加载过程中ListView已经滑动到了第14行 ...

  7. android动画介绍--Animation 实现loading动画效果

    Animation的使用方法并不难.这里简单的介绍一下使用方法. 先看效果图: 效果还是不错的吧. 下面来看看使用方法. 动画效果是通过Animation来实现的,一共有四种,分别为: AlphaAn ...

  8. Gradle 1.12用户指南翻译——第二十七章. Ear 插件

    其他章节的翻译请参见: http://blog.csdn.net/column/details/gradle-translation.html 翻译项目请关注Github上的地址: https://g ...

  9. Java开发机器上的配置及zookeeper配置

    Java开发机器上的配置及zookeeper配置 /etc/profile 文件的后面加入下面的内容: # jdk, zookeeper, kafka, ant, maven export APACH ...

  10. 新闻网站开发-手机端-基于Wordpress

    暂时写下来下面记录整个网站制作流程,由于是边学便用,代码质量和性能不能保证,仅仅为之前没做过的朋友提供个小小的参考: 下面先贴出网站,记得用手机或者[Opera Mobile Emulator]打开, ...