C#二次开发ArcGIS查询功能 联系客服

发布时间 : 星期日 文章C#二次开发ArcGIS查询功能更新完毕开始阅读20adc4bcd0f34693daef5ef7ba0d4a7302766c08

目录

一、ArcGIS简介 ......................................................................................................................... 2 二、ArcGIS开发方法介绍 ......................................................................................................... 2 三、数据库设计 ........................................................................................................................... 2 1、数据库的建立 ..................................................................................................................... 2 2、数据表的设计 ..................................................................................................................... 3 四、地理数据入库(地图扫描矢量化方法介绍) ................................................................... 3 五、功能设计(流程图) ........................................................................................................... 5 六、程序运行界面介绍 ............................................................................................................... 6 1、用户登录界面 ..................................................................................................................... 6 2、主程序界面 ......................................................................................................................... 6 3、属性查询界面 ..................................................................................................................... 7 4、三角网及泰森多边形 ......................................................................................................... 7 七、程序解析说明 ....................................................................................................................... 8 1、用户登录界面程序解析说明 ............................................................................................. 8 2、属性查询程序解析说明 ..................................................................................................... 9 3、自定义控件命令解析 ....................................................................................................... 11 4、三角网及泰森多边形构建解析 ....................................................................................... 11 八、源代码附录 ......................................................................................................................... 14 1、用户登录源码 ................................................................................................................... 14 2、属性查询源码 ................................................................................................................... 17 3、DisplayToDataGridDAL类源码 ......................................................................................... 21 4、FixedZoomIn类源码 ......................................................................................................... 22 5、FixedZoomOut类源码 ...................................................................................................... 24 6、FullExtent类源码 .............................................................................................................. 26 7、Pan类源码 ........................................................................................................................ 28 8、ZoomIn类源码 ................................................................................................................. 31 9、ZoomOut类源码 .............................................................................................................. 34

[地理信息系统课程设计报告]

一、ArcGIS简介

ArcGIS是美国ESRI(Environmental Systems Research Institute, Inc. 美国环境系统研究所公司)推出的一条为不同需求层次用户提供的全面的、可伸缩的GIS产品线和解决方案。ESRI是GIS领域的拓荒者和领导者,而ArcGIS也代表了当前GIS行业最高的技术水平。

ArcGIS是一个可伸缩的GIS平台,可以运行在桌面端、服务器端和移动设备上。它包含了一套建设完整GIS系统的应用软件,这些软件可以互相独立或集成配合使用,为不同需求的用户提供完善的解决之道。

ArcGIS是基于一套共享的GIS组件开发实现的,这套组件被命名为ArcObjects,它包含了大量可编程组件,实现了ArcGIS的全部功能。因此,ArcObjects可以被认为是ArcGIS产品的核心,熟悉ArcObjects的过程同时也是熟悉ArcGIS Engine的过程。

二、ArcGIS开发方法介绍

Gis的开发方法有三种,即独立开发,宿主型二次开发,基于gis组件的二次开发,其中独立开发为底层开发,不依赖于任何gis工具软件,开发难度太大,后两者是基于一种软件的二次开发,这样的二次开发则相对较简单,他的好处也是显而易见的。

Esri公司推出的ArcGIS产品不仅仅包含基础平台软件,也包含供用户二次开发的组件,那么这些组件也包含C/S、B/S、移动端的。C/S架构主要是应用于局域网方面,一般是安装开发软件,一般情况下机器都不连互联网,主要处理数据编辑、数据入库、地图整饰等对机器性能要求比较高。B/S架构主要应用于局域网或者互联网,一般情况下使用浏览器,主要是进行数据查询、分析等。

ArcGIS Engine开发工具包是一个基于组件的软件开发产品,用于建立和部署自定义GIS和制图应用程序。ArcGIS Engine开发工具包不是一个终端用户产品,而是一个应用程序开发人员的工具包。可以用ArcGIS Engine开发工具包建立基本的地图浏览器或综合、动态的GIS编辑工具。使用ArcGIS Engine开发工具包,开发人员在建立定制的地图接口方面具有前所未有的灵活性。开发人员可以使用几个API中的任何一个来建立独一无二的应用程序,或者将ArcGIS Engine组件与其他软件组件组合起来实现地图与用户管理信息之间的协同关系。

三、数据库设计 1、数据库的建立

通过ArcCatalog创建个人地理数据库>>要素集>>要素类>>编辑属性

[地理信息系统课程设计报告]2 / 38

[地理信息系统课程设计报告]

2、数据表的设计

(1)房屋 字段名称 ID Name Owner Layers Material Add BuildArea Remark (2)道路 字段名称 ID Name Material Width Remark 等等 字段解释 ID号 名称 所有者 层数 材质 地址 建筑面积 备注 字段解释 ID号 名称 铺设材料 道路宽度 备注 类型 Long Char Char Integer Char Char Float Char 类型 Long Char Char Float Char 长度 20 20 20 20 40 40 长度 20 20 40 备注 备注 四、地理数据入库(地图扫描矢量化方法介绍)

1、打开ArcMap,添加“影像配准”工具栏。把需要进行配准的影像—“校内平面图测绘14级.dwg”添加到ArcMap中,会发现“影像配准”工具栏中的工具被激活。 2、在“影像配准”工具栏上,点击“添加控制点(add control point)”按钮。使用该工具在扫描图上精确到找一个控制点点击,然后鼠标右击输入该点实际的坐标位置。用相同的方法,在影像上增加多个控制点(大于3个),输入它们的实际坐标。点击“影像配准”工具栏上的“查看链接表(view link table)”按钮。对于误差较大的控制点,可以删除然后重新采集。 3、打开ArcCatalog.在指定目录下,鼠标右击,在“新建”中,选择“个人Geodatabase”。并修改该Geodatabase数据库的名称。右击新建要素集并为要素集设置投影坐标系。右击新建要素类,选择要素类型,并为要素命名,添加要素属性字段“Name”等。

[地理信息系统课程设计报告]3 / 38

[地理信息系统课程设计报告]

这样便建好了一个点,线或面要素

4、在ArcMap中编辑工作条上点击开始编辑,这时会弹出来一个窗口选择要素,然后在已经配准后的图像上选择相应的要素类型一一绘制,右击图层控件上的某个要素图层打开属性表可以编辑属性。

5、将矢量化好后的图层导出为(*.mxd)文件。

[地理信息系统课程设计报告]4 / 38