港口地理信息系统的设计与实现(共7页).doc
精选优质文档-倾情为你奉上港口地理信息系统的设计与实现王耿峰1 赵忠东1 刘玉2 郗笃刚11 海军海洋测绘研究所 天津 2 中科院地理科学与资源研究所陆地水循环及地表过程重点实验室 北京 Email:shame2摘要:港口在当今城市、区域、国家的经济发展具有十分重要的地位,在国防领域也有十分重要的作用,建立港口地理信息系统,在可视化数字地图显示平台上实现港口的查询、定位,相关信息的显示等功能,为舰船航行、港口规划与建设、相关军事活动等提供决策支持。关键词:港口;地理信息系统;多媒体;DTISABSTRACT: Port is very important in today economicdevelopment of a city,region and country.It also plays a very important role in military field.Establishing Port Information System base on GIS,realizing query,orientation ,display correlative information of port on visible digital map display platform,offers reference information for assistant decision-making of navigating of naval ships,programming and construct of port, correlative military action.Keywords: Port; Geographic Information System; Multimedia;DTIS1 引言港口是交通的枢纽、物资的集散地、工业与国际经贸服务的中心,在城市、区域、国家的经济发展具有十分重要的地位,随着经济全球化的进一步发展,港口的作用愈发重要。同时,在国防领域,港口也具有十分重要的作用,军港是舰船停泊、补给、检修、日常训练的重要基地。传统的港口资料保障模式主要以文本描述与配图为主,随着信息化技术的飞速发展,已经不能满足现实发展的需要,为此,在充分掌握港口相关资料的基础上,采用GIS、RS、数据库等技术,构建港口地理信息系统,以图文并茂的方式将港口的整体概况、自然条件、地理形势(地理位置、范围、面积、区域形势等特征)、环境组成、功能设施等特征详细的呈现给用户,从而为舰船航行、港口规划与建设、相关军事活动等方面提供辅助决策,具有重要的现实意义。2 系统开发环境通过调研和论证,作者根据项目的研制特点、研究目标以及地理信息系统开发的特点,重点对GIS开发方法、GIS二次开发组件、可视化开发环境以及数据库管理系统等方面进行了分析与研究,并最终得出了系统构建的技术方案:采用在.NET 2003框架下利用C#语言,调用DTIS组件的集成二次开发方式完成系统表现层的实现,数据层采用Microsoft SQL Server 2000数据库管理系统企业版来完成数据的存储与管理。2.1 系统体系架构系统在实现模式上采用两层的体系结构,即客户端/服务器端(C/S)的结构模式,系统安装在局域网环境中。服务器端存放系统数据库,并通过局域网与客户端连接;客户端实现系统的用户界面与业务逻辑。2.2 系统运行环境硬件环境要求(推荐)软件环境要求主机PIV 2.0GHZ及以上操作系统及组件Windows 2000/XP,IE 6.0及以上Windows Media Player9.0及以上内存1GB及以上编程环境及开发语言.NET Framework v1.1及以上显卡256M及以上系统开发语言C#语言磁盘80G及以上GIS二次开发组件DTIS(数字地形信息系统)高分辨率显示器1024*768及以上数据库SQL Server 2000企业版3 系统功能建立港口地理信息系统,构建港口及其周边环境的可视化数字地图显示平台,实现港口图形与属性的关联互查机制,在此基础上,将大量的文本、图片、视频等港口相关信息以可视化的界面、以图文并茂的方式形象地展现给用户,进而提高港口的信息化保障水平,系统功能设计如图1所示。图1 系统功能结构图专心-专注-专业4 系统数据结构系统涉及的信息种类繁芜复杂,数据量比较大,有别于其它系统集中、统一的管理所有信息的做法,作者另辟蹊径,将系统设计的重点落脚于具体应用层面,将系统的开发重点放在空间地图数据的快速美观显示、丰富的多媒体信息展现等现实需求方面上,为此对系统所涉及的信息进行了分类并分别进行存储与管理。作者将系统所涉及的信息分为空间信息与非空间信息两大类。空间信息又分为基础地理信息和港口专题地理信息,包括矢量地图数据、遥感影像数据。非空间信息又分为属性信息和多媒体信息,属性信息主要是描述空间信息属性特征的信息,分为基础地理信息的属性信息和港口专题地理信息的属性信息;多媒体信息指的是视频、图片、文本等没有结构的数据,基础地理信息各图层要素和港口要素都具有相同结构的多媒体信息。针对空间信息与非空间信息采用不同的方法来分别进行存储与管理、并通过它们内在的联系将其有机的连接起来,实现信息的查询与检索。图2 系统信息间的内在联系4.1 空间数据的存储与管理系统采用DTIS控件的数据管理机制来对空间数据进行存储与管理。DTIS控件的空间数据模型如图3所示:图3 DTIS空间数据模型其中,矢量地图数据包括军用数字地图矢量数据生产格式、交换标准格式,MapInfo格式数据等。通过矢量图分目录整理、图号与文件名检查、数据的导入、创建DEM、创建3D图像等步骤将这些数据转换为DTIS控件的“内部格式”数据,并最终按图3所示的空间数据模型来存储与管理这些数据。系统遥感影像数据以文件的方式来存储,在调用及显示遥感影像图之前必须对其进行处理和配准。所谓遥感影像图的处理就是对遥感影像进行压缩和分块,并将其处理成DTIS控件支持的“内部格式”。所谓遥感影像图的配准就是在已处理的遥感图像上选取若干地面控制点(GCP),建立与坐标系的变换多项式,假定在影像坐标系统中的坐标是(x,y),在地图坐标系中的坐标是(X,Y),可根据二维相似变换(四参数,至少需要两个GCP),二维仿射变换(六参数,最少选择四个GCP)和二阶多项式(十二个参数,GCP不能少于6个)来进行遥感影像的配准。4.2 非空间数据的存储与管理系统涉及大量的属性信息,主要有基础地理信息各图层中地理要素的属性信息,以及港口专题地理信息的属性信息,主要是与港口相关的属性信息,如港口的编码、名称、类型、等级、硬件设施以及所拥有的多媒体信息(如图片、视频等)的数量等属性信息。其中,基础地理信息的属性信息以矢量地图的属性为主,港口专题地理信息的属性信息来源于统计资料与相关专业数据库。系统主要研究港口相关属性信息的存储与管理。经过对系统属性信息与多媒体信息的分析,以及各种多媒体信息存储方式的比较,为了保证读取多媒体信息文件的执行速度,作者采用文件加关系数据库的方式来对属性信息与多媒体信息进行存储与管理。具体的实现方法是用关系数据库表来存储属性信息以及多媒体相关信息,这里多媒体相关信息主要指的是多媒体信息的数量、类型和多媒体信息文件的存储路径等。多媒体信息的数量指的是图片、视频等的个数;多媒体信息的类型指的是文本、图片与视频等的类型;多媒体信息文件的存储路径这里指的是多媒体信息文件的相对路径,也就是多媒体信息的名称,关系数据表只存储多媒体信息文件的相对路径,具体多媒体信息以文件的方式存储。图4 系统非空间信息数据库表关系5 系统主要功能的实现5.1 数字地图显示系统实现的数字地图显示功能包括矢量地图二维显示、晕渲图显示、三维立体显示以及遥感影像与矢量地图的叠加显示等。各种类型地图的显示是通过调入相应的地图数据而实现的。而各种类型地图数据的调入又是在地图工作区下完成的。地图工作区是用户一次工作任务的集合,主要包括地图显示参数和动态符号标绘等信息。地图显示参数主要包括地图数据格式、地图种类、地图图层和地物类的显示状态。系统对工作区的相关操作主要通过调用axDTIS_MapX1与地图工作区相关的方法来实现。其中,在遥感影像图与矢量地图的叠加显示中,随着地图比例尺的不断放大,所叠加的遥感影像图的数据精度,也就是分辨率也越来越高。5.2 地形量测功能系统实现了对地形的基本量测功能,如坐标高程量算、距离量算、面积量算、坡度分析、通视分析等。图5 距离量算效果图5.3 动态预演功能系统通过对相关符号的标绘以及对所标绘符号的动画属性编辑来实现各种预设方案的动态预演功能。这其中的一个关键问题就是对二次开发组件符号库的调用,系统通过axDTIS_MapX1.CreateOtherWnd()在主界面左面板中创建符号索引窗口来实现。5.4 港口查询功能系统对港口的查询包括基本查询和基于目录的查询两种。基本查询方式主要有点击查询、圆形区域查询、矩形区域查询、多边形区域查询和名称查询。使用这些方式进行查询,查询到的港口闪烁显示,并且在系统界面“信息显示区”的“查询信息”窗口显示其属性及多媒体信息。实现过程如下:首先,调用axDTIS_MapX1对象与地图查询相关的方法,系统内部引发EndQuery()事件并且对查询到的港口目标闪烁显示,在EndQuery()事件中调用GetMapQueryResult()方法获取查询到的港口,由查询到的港口的名称实现空间信息与非空间信息数据库的关联,亦即空间信息与属性信息和多媒体信息的关联,进而读取数据库中查询到的港口所具有的属性信息与多媒体信息,并将读取到的信息在系统界面“信息显示区”的“查询信息”窗口中显示。基于目录的查询实现流程如下:系统启动,连接数据库,从数据库“港口信息表”中读取“GKMC”字段,生成港口目录树。在该目录树中选择所要查询的港口,地图将定位到以此港口为中心的位置,并实现查询港口的闪烁显示,同时,在“查询信息”窗口显示港口的属性及多媒体信息。数据库的连接由LinkDataBase()函数实现。港口目录树的建立由LoadTreeview()函数实现。在实现地图定位之前,由于坐标格式的不一致,需要Covert()函数进行地理坐标的转换。具体实现效果如图6所示图6 基于目录的港口查询5.5 多媒体信息显示功能多媒体信息显示是本系统应用的重点,有别于传统地理信息系统的空间分析功能,作者从满足实际应用出发,采用可视化的图片、视频的方式将港口的整体概况、自然条件、地理形势(地理位置、范围、面积、区域形势等特征)、环境组成、功能设施等特征展现给用户,使用户对港口有一个清晰、直观的认识,在此基础上以文本的形式形成港口性能综合评价报告,从而为用户活动提供辅助决策。系统多媒体信息显示功能包括多媒体信息的编辑与多媒体信息的浏览。经过前面的基本查询与基于目录查询,捕获到港口要素后,即可连接数据库读取港口的多媒体信息。为便于管理、维护及方便应用,作者将从数据库中读取到的港口多媒体信息按类型(即图片、文本、视频)分别建立相应的列表,从而建立了多媒体信息编辑窗口,如图7所示。该窗口包含了港口全部的多媒体信息,因此也起到了港口多媒体信息总览的作用。图7 多媒体信息编辑窗口连接数据库读取到的港口多媒体信息为文本、图片、视频的名称,是相对路径。在系统的初始配置文件(init.ini文件)中记录了存储这些文本、图片、视频的文件夹的路径,两者相加,即为文本、图片、视频等文件的绝对路径。有了绝对路径,即可调用多媒体信息显示控件来实现对多媒体信息的浏览。由于每个港口都具有大量的多媒体信息,如果一次性将全部的多媒体信息都加载到多媒体信息浏览窗体,势必会影响多媒体信息的显示速度,并且会占用操作系统大量的资源。为此,系统采用了动态加载多媒体信息的方法来实现其显示。即从数据库中读取港口多媒体信息后,在多媒体信息浏览窗体中为每一个多媒体文件都创建一个标签页,但此时标签页中并没有加载多媒体信息显示控件,只有当用户选择标签页时,系统动态的加载多媒体信息显示控件,并将该标签页所对应的多媒体文件的绝对路径提交给多媒体信息显示控件,进而实现多媒体信息的显示,不同类型的多媒体文件对应不同的多媒体信息显示控件。图8 多媒体信息浏览窗口6 结束语本系统构建了港口及其周边环境的可视化数字地图显示平台,实现了港口图形与属性的关联互查,通过查询实现港口的精确定位,并以文本、图片、视频等多媒体的形式展现港口相关信息。同时辅以地形基本量测与各种预案设想的动态预演功能,为舰船航行、港口规划与建设、相关军事行动等提供辅助决策,具有较高的实际应用价值。参考文献: 1 武舫,熊伟,武玉国“数字地形信息系统”使用指南M郑州:解放军测绘学院,2006. 2 王占全,赵斯思等. 地理信息系统开发工程案例精选M. 北京:人民邮电出版社,2005. 3 萨师煊,王珊数据库系统概论M北京:高等教育出版社,2000. 4 华一新,吴升,赵军喜.地理信息系统原理与技术M北京:解放军出出版社,2001.