论文部分内容阅读
GIS(Geographic Information System)作为处理地理空间信息的新技术于二十世纪六十年代兴起,近年来伴随计算机技术的飞速发展,该技术也得到了迅猛发展。其方便快捷的数据采集与输入功能、强大的地图编辑与数据管理功能、独特的空间分析方法,以及直观的图形和属性数据的可视化表达方法,为空间数据的维护和辅助决策提供了强有力的手段。
以企业级开发组件为基础,例如ArcGIS体系的ArcEngine,将GIS功能组件嵌入到管理事务中的开发方案比较普遍。然而基于GIS组件的二次开发,面对通常的查询、地图展示需求时,开发难度较小,但面对复杂需求时就显得极为棘手,例如空间数据的维护、复杂的专题图绘制、基于空间分析的辅助规划、二三维联动等问题,而这些复杂需求却是构建空间数据管理平台的关键。
本文研究的主要内容是,在学习和分析ArcEngine组件所提供的基础函数和存储空间数据的文件结构的基础上,以C#作为开发语言,重点解决三个方面的问题:1)、空间数据的维护;2)、基础设施规划中涉及到的复杂空间分析;3)、二三维联动。最后将这一构建空间数据管理平台的技术方案运用到工业管网系统和海洋滩涂管理系统中进行验证。所提出的技术方案在两个行业中均得到了成功应用,验证了技术路线的可行性。本文所解决的关键技术包括:
1、空间数据的维护:空间数据管理平台采用C/S模式架构,空间数据都放置于服务器端,服务器端配置好Arc Server、Arc SDE环境,基于ArcEngine开放接口,研究并实现了在C/S模式下客户端对空间数据库的维护;
2、基础设施规划中涉及到的空间分析:基建设施选址,涉及大量的行业知识和较多技术细节,包括诸多空间分析操作,以工程中的实际需求为例,实现了基于空间分析的辅助规划功能;
3、二三维联动:基于GIS的信息系统单纯以二维或三维展示,都有较成熟的解决方案,然而二三维数联动执行则是GIS系统二次开发中较棘手的一个技术问题,对此提出了两种实现二三维联动的方法:a、基于MapControl和OpenGL的方法;b、基于MapControl和SceneControl的方法。