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
当我们需要跟踪在地图 上所画的图形时,可以使用这几个方法。
arcEngine开发之IMapControl接口的更多相关文章
- ArcEngine开发之Command控件使用篇
转自原文 ArcEngine开发之Command控件使用篇 在ArcEngine类库中有大量的Command控件用来与地图控件进行操作和交互.比如有一系列的地图浏览控件.地图查询控件.图斑选取控件.编 ...
- arcEngine开发之IMap、ILayer、IFeatureLayer和IFeatureClass关系
刚开时学习 Engine 开发时,对于这几个接口之间的关系总是理不清,因此写下这篇文章做个总结. 是什么 在 engine 开发中,我觉得使用过程中应该将每个接口对应到 ArcMap 中的具体事物中, ...
- Linux企业级开发技术(2)——epoll企业级开发之epoll接口
epoll的接口非常简单,总共只有三个函数: 1.int epoll_create(intsize); 生成一个 Epoll 专用的文件描述符,size用来告诉内核这个监听的数目一共有多大.这个参数不 ...
- arcEngine开发之activeView.PartialRefresh(译)
为什么要使用partialRefresh arcMap应用程序窗口操作主要是由 IActiveView 控制的,并且它有 Map(data view) 和 PageLayout(layout view ...
- Mybatis-Dao层开发之Mapper接口
Mapper接口开发方法只需要程序员编写Mapper接口(相当于Dao接口),由Mybatis框架根据接口定义创建接口的动态代理对象,代理对象的方法体同上边Dao接口实现类方法. Mapper接口开发 ...
- DSP5509开发之FPGA接口
1. DSP5509和FPGA或者CPLD之间是什么接口,DSP相对普通MCU,具有专门的硬件乘法器,程序和数据分开的哈弗结构,特殊的DSP指令,快速的实现各种数字信号处理算法.在一个周期内可以完成一 ...
- ArcGIS Engine开发之旅08--和查询相关的对象和接口
原文:ArcGIS Engine开发之旅08--和查询相关的对象和接口 查询在GIS领域应该是一个很频繁的操作,在GIS中除了具有属性查询(和其他关系型数据库的查询类似),还提供了空间查询.在介绍查询 ...
- ArcGIS Engine开发之旅04---ARCGIS接口详细说明
原文:ArcGIS Engine开发之旅04---ARCGIS接口详细说明 ArcGIS接口详细说明... 1 1. IField接口(esriGeoDatabase)... 2 2. ...
- ArcGIS Engine开发之旅01---产品组成、逻辑体系结构
原文:ArcGIS Engine开发之旅01---产品组成.逻辑体系结构 ArcGIS Engine 由两个产品组成: 面向开发人员的软件开发包(ArcGIS Engine Developer k ...
随机推荐
- MySQL错误“Specified key was too long; max key length is 1000 bytes”的解决办法
MySQL错误"Specified key was too long; max key length is 1000 bytes"的解决办法 经过查询才知道,是Mysql的字段设置 ...
- [leetcode]经典算法题- String to Integer (atoi)
题目描述: 把字符串转化为整数值 原文描述: Implement atoi to convert a string to an integer. Hint: Carefully consider al ...
- [案例]某体育用品公司在零售领域BI的产品应用解决方案
随着某体育用品公司集团经营规模的不断扩大,信息化的建设也在不断的深入,从POS系统到ERP系统,从MAIL系统到OA系统,整个集团的每项工作都与信息系统密不可分,可以说是行业内信息化建设的先导者.但是 ...
- saiku中文维度,补充说明
saiku在筛选中文维度 会出现浏览器白屏 停止响应的现象,经过跟踪源代码,分析原来在linux 操作系统中 数据库读取的中文和界面选取的编码是不一致的 解决方法, classes\saiku-dat ...
- 【Visual C++】游戏编程学习笔记之九:回合制游戏demo(剑侠客VS巡游天神)
本系列文章由@二货梦想家张程 所写,转载请注明出处. 作者:ZeeCoder 微博链接:http://weibo.com/zc463717263 我的邮箱:michealfloyd@126.com ...
- PS 图像调整算法——阈值
PS里面这个算法,先将图像转成灰度图像,然后根据给定的阈值,大于该阈值的像素赋值为1,小于该阈值的赋值为0. if x>T, x=1; if x<T, x=0; 原图: 效果图:阈值为 1 ...
- Notice to users of DB Query Analyzer in Windows 7, Windows 8 and Windows 10
UnlikeWinXP, VISTA, Windows2000, Windows Nt and Win98,Windows 7 / Windows 8 / Windows 10 select ...
- how tomcat works 总结 二
第五章 servlet容器 第 5 章讨论 container 模块.container 指的是 org.apache.catalina.Container 接口,有4 种类型的 container: ...
- How tomcat works 读书笔记十二 StandardContext 上
在tomcat4中,StandardContext.java是最大的一个类,有117k.废话不说,开始分析吧. 其实要分析StandardContext,也就主要分析两个方法,一个start,一个in ...
- C++之虚函数
<span style="font-size:18px;">#include <iostream> using namespace std ; class ...