GIS地图符号库设计与实现开题报告
2020-04-14 17:20:13
1. 研究目的与意义(文献综述包含参考文献)
一、研究背景
随着计算机技术的迅猛发展,GIS的发展也相当迅速。GIS强调空间数据的处理与分析,空间数据的可视化是其所具备的重要功能,因此空间数据可视化一直是一个重要的研究方向。无论是地理信息系统,还是地图制图系统,地图符号的设计都是他们的主要功能之一,且空间实体符号化也是地理信息系统的重要内容[1]。
国内外一些优秀的工具型GIS软件都提供了常用的地图符号库,对于规则的地图符号按一定的图式要求符号化,设计一些地图符号。GIS软件中,国外的有ARCGIS、ARC/INFO、MapInfo、GeoMedia,国内的MapGIS、GeoStar、SuperMap等都有不同程度的符号设计功能,它们也有各自的特点。但由于各系统的差异,使符号无论在数量、种类或使用功能等方面都存在较大的差别。
地图制图中,地图上的任何信息都是通过各种地图符号来表现的,所以在地理信息系统的研究过程中,标准、规范的地图符号库的建立也是相当重要的,符号设计的好坏直接影响地图成图的质量以及对地图信息的获取。可见研究地图符号以及符号库都十分重要。
二、研究意义
目前国外优秀的软件在我国的应用比较广泛,在GlS软件中,虽然都包含地图符号制作部分,但由于各系统的差异及符号通用性问题以及各地图符号制作软件与自身绑定,使符号在数量、种类或使用功能等方面存在较大差别,很难适合其它地理信息系统平台,不能分离出来为其他系统所用。另外,国外的GlS软件也没有考虑我国的地图符号的要求[2]。因而加强地图符号的管理,建立统一的地图符号库标准,开发通用的地图符号制作软件,将对我国的计算机制图和GlS的发展起到重要作用。
地图符号的制作是数字制图的基础,也是 GIS 技术的基础,因此,对地图符号库的研究可以加速机助制图的发展,有利于地图符号库和地图符号标准的建立,有利于地图质量的控制,有利于国民经济建设[3]。对于从数字空间信息转换成符号图形的过程( 即符号化) ,以往传统的做法有很大的局限性,很难适应新符号的设计和制作。因此,建立地图符号库系统显得尤其重要[4]。
三、ArcEngine组件
ArcEngine不是一个终端用户产品,而是软件开发人员的工具包。ArcGIS架构分为许多个类库,每个类库由若干个dll和exe组成[7]。它们都存储在AO的组件信息中。ArcGIS Desktop版本的AO核心对象被放在53个组件库中,同样的,ArcEngine的核心也是AO组件,也被放在不同的组件库中,不同的组件库功能是不一样的。用户可以扩展其中的某些对象库,并且完全控制应用软件用户界面的外形和感觉[8]。ArcEngine Runtime 是一个使终端用户软件能够运行的核心ArcObjects 组件产品,并且将被安装在每一台运行ArcEngine 应用程序的计算机上。
ArcEngine是一组完备的并且打包的嵌入式GIS 组件库和工具库,ArcEngine组件库中的组件在逻辑上可以分为5个部分,分别是:Base Services,Data Access,Map Presentation,Developer Components和Runtime Options[7],可满足开发人员创建新的或扩展已有的桌面应用程序。通过ArcEngine,开发人员可以将GIS 功能嵌入到已有的应用软件中,或嵌入到商业生产应用软件中,还可以创建集中式自定义应用软件,并将其发送给机构内的多个用户[8] ,利用ArcEngine进行GIS应用开发时彻底地脱离了ArcGIS桌面平台,在某种意义上更为有效地开发GIS应用软件[9]。
四、.NET技术
.NET 是为简化在第三代 Internet 的分布式环境下的应用程序开发,基于开放互联网标准和协议之上,实现异质语言和平台高度交互性而创建的新一代计算和通信平台。它是由美国微软公司推出的,主要由Windows.NET,.NET Framework模块构建服务[10],.NET提供了多种语言支持,Visual Studio .NET则是全面支持.NET的开发工具。.NET Framework包括通用语言运行层(Common Language Runtime,CLR)和.NET框架类库(CCL)。Visual Studio.NET支持多种可以使用.NET Framework的编程语言,包括Visual Basic.NET、Visual C .NET和Visual C#.NET等。在.NET平台上编写的代码,不管使用的语言是哪一种,它们都会被编译为中间代码,而不是直接的机械码,这些中间代码将在CLR上被运行。无论使用的语言是C#、VB.NET还是VC .NET,它们使用的类库都是CCL。.NET还带来了多种语言之间的无缝集成,这给开发程序带来了方便,也大幅度提高了开发效率。见下表1。
表1 .Net技术架构
VB |
C |
C |
Jscrip |
J# | |
公共语言规范 | |||||
ASP.NET Web窗体Web服 |
Windows窗体 | ||||
ADO.NETamp;XML | |||||
基类库 | |||||
公共语言运行库 | |||||
操作系统 | |||||
五、地图符号库系统
5.1地图符号及分类
(1)地图符号
地图内容的表达离不开地图符号[12]。地图符号是人们认知地图、分析地图内容的重要可视化工具,被称为地图的语言[13]。是直观表达地理事物或现象的一种重要的可视化工具,也是读者感受地理事物或现象的基本方式。
(2)地图符号分类
地图符号是从所表示事物的分布状态、地图符号与各种事物的关系、符号的构成形式以及地图符号本身的形状特征来进行划分[14]。地图符号是由基本图元对象类实例组合而成的复杂对象。按照事物的存在状态可以将符号分为点状符号、线状符号、面状符号[15];从视觉形态上来看,所有的地图符号又都可以分为两大种类:具象符号和抽象符号[16]。
2、地图符号库系统
2.1符号库概念
符号的集合即符号库,其组织结构包含两大部分:符号辑器和绘制符号时调用的程序组件,两者相辅相成,在功能上独立[17]。地图符号库就是将常用的符号经分类整理后以数据库的形式存储到计算机中,实现其数据库的管理功能,用于符号信息的检索、存储、修改、定义和符号的重组。
2.2 符号库系统特点
符号库中的各符号是结构统一、规格标准的数据,它们之间是平行的关系,符号的差别仅仅是数据的差别,这样便于符号的动态扩充和修改[18]。符号库系统应具备以下特点:
(1)具有行业特色并满足一定的制图标准
(2)提供多种比例尺的地形符号
(3)完备的符号库管理
(4)较好的兼容性和共享性
(5)系统性
2.3符号库系统设计原则
(1) 完备性
符号库系统不仅能够编辑制作现有的标准地图图式,也要支持各种专题地图地质图、环境评价图等的符号,以及各种非标准地图符号。
(2) 通用性
由于制作的符号供地图符号输出模块调用,因此生成的符号必须具有高度灵活性,例如符号的色彩、大小、旋转、位置等视觉变量应为外部可调的。
(3) 精确性
地图制图是地理信息系统的重要功能之一,地图符号的精度直接影响地图的精度和价值符号的设计和绘制必须满足地图精度的要求。
(4) 易用性
各个符号的形状、位置、色彩、尺寸、网纹和方向这六个视觉变量都是不同的,地图符号的视觉变量都有严格的定义,要制作满足国家或行业标准的符号还是比较繁复的,因此系统要提供用户方便的工具和良好的用户界面。
(5) 开放性
符号库系统应具有良好的开放性,应能提供一个可由用户进行定制和管理的符号库,完成库中符号的制作、删除、修改、输出等操作。
(6) 可扩充性
随着新事物的产生,为了表示它必须设计新的符号,所以系统要有能方便地将新的符号纳入本系统的能力,同时还要提供与其它软件系统兼容的接口。
参考文献:
[1]程朋根,龚健雅,眭海刚.GIS中地图符号设计系统的设计与实现[J].中国图像图形学报,2000,5(12):1006-1010.
[2]薛明,肖学年.关于地图符号库及其标准化问题的探讨.测绘标准化,1998,2l
[3]沈陈华. 线状符号库的面向对象设计[J].重庆师范学院学报(自然科学版),2000,17(4):41-43.
[4]孙庆辉,赵军喜,周海燕.GIS中地图输出对符号库建立的影响[J].测绘通报,2000,(10):24-25.
[5]韩鹏,王泉,王鹏,等.地理信息系统开发-ArcEngine方法[M].武汉:武汉大学出社,2008:18-20.
[6]程雷.基于ArcGIS Engine的专题图渲染设计与实现[J].西昌学院学报:自然科学版,2009,23(2):32-35.
[7]姜波涛.插件式GIS应用框架的设计与实现[M].北京:电子工业出版社,2008:9-20.
[8]ESRI中国(北京)有限公司.ArcGIS Engine10开发手册.北京:ESRI中国(北京)有限公司,2011:3.
[9]杨文斌,胡宝清.基于ArcGIS Engine专题图的开发与实现[N].广西教育学院学报,2008(4).
[10]陈蓓,万英.C#程序员开发指南[M].北京:中国林业出版社,2006:2-13.
[11]姜波涛.ArcObject开发基础与技巧[M].武汉:武汉大学出版社,2004:19-22.
[12]闫浩文.运用OO方法设计统计符号库的理论探讨[J].武汉测绘科技大学学报,1997,22(1):69-70.
[13]谈晓军,边馥苓,何忠焕.地图符号可视化系统的面向对象设计与实现[J].测绘通
报,2003,(1):112-131.
[14]孙广宇,刘海砚,王志超,陈晓慧.地图符号的艺术性设计[J].测绘与空间地理信息,2010,33(1):57-65.
[15]蔡忠亮,李霖.普通地图符号的全开放式设计[J].武汉测绘科技大学学报,1999,24(3):259-261.
[16]陆轶,梁虹,周园.基于 Arc GIS Engine的高速公路隧道监测信息系统 [J]. 昆明理工大学学报,2008,33(4):58-62.
[17]刘春菊,石敦敦,朱欣焰,金国强.网络GIS地图符号化研究与实现[J].测绘通报,2005,(4):22-25.
[18]车森,刘真.基于出版的地图符号系统的建立.测绘学院学报,2003,第三期
2. 研究的基本内容、问题解决措施及方案
一、研究问题
本毕业设计以地图学、地图符号化的基本知识为理论基础,通过对地图符号库近几年发展的学习及探索,采用面向对象的方法、关系数据库理论和xml技术,在.net平台下,以c#语言为开发工具,完成gis地图符号以及符号库系统的设计,从而实现地图符号库的统一管理,为规范地图输出做铺垫。主要研究问题如下:
1、研究地图符号库开发的一般过程,并建立地图符号库系统;