ArcGIS Engine开发之地图基本操作(2)

地图数据的加载

1.加载地图文档

ArcGIS Engine支持加载多种类型的数据,有矢量数据的Coverage、Shapefile、dwg/dxf文件,栅格数据的BMP、GRID、控件数据库等。很多情况下加载通过ArcGIS桌面制作的地图文档是最合适的(*.mxd格式)。

加载地图的第三种方式:

  1. 使用IMAPControl接口的LoadMxfile方法加载。
  2. 通过IMAPDocument接口加载。
  3. 使用ArcGIS Engine中封装好的类库资源ControlsOpenDocCommandClass加载。

1.使用IMAPControl接口的LoadMxFile方法加载地图文档

思路如下:

  1. 通过.NET框架类提供的打开文件对话框选择要打开的地图文档。
  2. 用IMapControl接口提供的CheckMxFile方法检查是否为有效的地图数据,若有效则调用IMapControl接口提供的LoadMxfile方法进行加载。
    1. CheckMxFile方法:该方法的作用就是确定选中的地图文档是否是一个可以记载到MapControl控件中的有效地图文档。它能验证文件是否存在、文件的内部结构是否符合预期的存储格式。
    2. LoadMxFile方法:该方法的作用是想MapControl控件中加载地图文档,地图文档可以用索引或文件名指示。函数原型为public void LoadMxFile(string mxPath,object mapNameOrIndex,object password).
    3. 参数的说明表:
      参数 描述
      mxPath 选择,表示文件路径的字符串表达式
      mapNameOrIndex 可选,表示地图名或者索引号
      password 可选,表示密码
时间: 2024-09-28 06:16:09

ArcGIS Engine开发之地图基本操作(2)的相关文章

ArcGIS Engine开发之地图基本操作(4)

ArcGIS Engine开发中数据库的加载 1.加载个人地理数据库数据 个人地理数据库(Personal Geodatabase)使用Miscrosoft Access文件(*.mdb)进行空间数据的存储和管理,它将不同的数据统一纳入Access文件中,便于数据的管理与迁移,容量限制为2GB.个人地理数据库支持单用户编辑,不支持版本管理.在进行ArcGIS软件操作和开发的学习过程中,一般建议采用个人地理数据库进行数据的 组织和存储,同时也便于直接导到ArcSDE空间数据库中.加载个人地理数据库

ArcGIS Engine开发之地图基本操作(3)

地图数据的加载 一.加载Shapefile数据 Shapefile文件是目前主流的一种空间数据的文件存储方式,也是不同GIS软件进行数据格式转换常用的中间格式.加载Shapefile数据的方式有两种:①通过工作空间加载.②通过MapControl控件的AddShapefile方法加载. 1.通过工作空间加载Shapefile文件 通过工作空间加载Shapefile文件主要用到IMap.ILayer.IFeatureLayer和IFeatureClass四个接口. 1)IMap接口 IMap接口是

ArcGIS Engine开发之地图浏览

地图的浏览功能包括缩放.移动.量测旋转等. 1.放大与缩小 无论是放大还是缩小,都是通过改变MapControl中当前视图的范围Extent属性来实现的,主要用到包络线(Envelope)类. 包络线是一个矩形区域,它是一个几何形体的最小包络边框,每一个Geometry对象都拥有一个包络线对象.包络线通过它的最大与最小X,Y坐标来定义一个矩形形状,因此包络线对象相对于它的空间参考而言总是直角.IEnvelop接口是Expand方法的用于缩放包络线的范围,进而产生一个新的包络线对象,从而实现放大和

ArcGIS Engine开发之地图导出

关于地图导出的方法有很多,但是核心技术就那么一点.下面是从项目实战中总结的一部分地图导出的方法:(以全域导出和区域导出为例) 1.由于地图导出用到的函数和方法容易重复,增加了工作量故首先将其进行封装成类(ExportMap类):用到的主要接口为:IActiveView(活动视图接口).IGeometry(几何接口).IRgbColor(颜色接口).IElement(要素接口)等. 具体的封装代码如下: 1 class ExportMap 2 { 3 #region 输出视图 4 public s

ArcGIS Engine开发前基础知识(2)

ArcGIS基本控件简介 ArcGIS Engine控件是一组可视化的开发组件,每个ArcGIS Engine控件都是一个COM组件.这些组件包括MapControl,PageLayoutControl,TOCControl.ToolbarControl,GlobeControl,和SceneControl等 MapControl控件 MapControl控件对应于ARCMap中的数据视图,主要用于显示.操作和分析地理数据.它封装了Map对象,可以加载已有的地图文档(*mxd文档)或者直接添加矢

ArcGIS Engine开发的ArcGIS 版本管理的功能

原文:ArcGIS Engine开发的ArcGIS 版本管理的功能 转自:http://blog.csdn.net/linghe301/article/details/7965901 这是以前的ArcGIS Engine开发成果,主要是Geodatabase方面的,模仿ArcGIS版本的流程系统环境: VS2010.ArcGIS Engine10.DevExpress721(第三方控件,比较常用易于下载) ---------------------------------------------

ArcGIS Engine 开发(二)线、圆、矩形、面、文本编辑功能

ArcGIS Engine 开发(二)线.圆.矩形.面.文本编辑功能,这些都是实现课上的源代码,自己调试好了,直接可以放到vs2010下跑,希望能对大家有所帮助 好了,先来看效果 二.下面是调试好的代码 using System; using System.Collections.Generic; using System.ComponentModel; using System.Data; using System.Drawing; using System.Text; using Syste

ArcGIS Engine开发鹰眼图的功能(代码优化篇)

在上一篇,ArcGIS Engine开发鹰眼图的功能(基础篇) 上一篇的实现效果图如下, 如果仔细观察,会发现一个问题,即在“鹰眼”的区域,只要在红色线框内的注记会被覆盖. 如果红色框包括整张图的话,图上的注记都将不会显示. 是什么原因造成的呢? 原因是使用IFillShapeElement向鹰眼视图添加绘图框后,标注与绘图框冲突造成互相压盖. 我们来看一张表, 在基础篇中,我们使用的是IFillShapeElement面要素进行刷新的,现在我们改换为线要素的IScreenDisplay Dra

ArcGIS Engine开发前基础知识(1)

ArcGIS二次开发是当前gis领域的一项重要必不可少的技能.下面介绍它的基本功能 一.ArcGIS Engine功能 在使用之前首先安装和部署arcgis sdk,(在这里不在赘述相关知识)可以实现的功能主要有地图的基本操作.信息查询.专题地图制作.数据编辑.网络分析.空间统计分析.三维分析等. 1.地图的基本操作 地图的基本操作主要包括加载矢量.栅格数据,浏览缩放地图,保存地图,在地图上显示文本注记,绘制点线面几何体等. 2.信息查询 信息查询主要通过矩形圆形或多边形来选中地图上的要素,或者