24小时论文定制热线

热门毕设:土木工程工程造价桥梁工程计算机javaasp机械机械手夹具单片机工厂供电采矿工程
您当前的位置:论文定制 > 毕业设计论文 >
快速导航
毕业论文定制
关于我们
我们是一家专业提供高质量代做毕业设计的网站。2002年成立至今为众多客户提供大量毕业设计、论文定制等服务,赢得众多客户好评,因为专注,所以专业。写作老师大部分由全国211/958等高校的博士及硕士生设计,执笔,目前已为5000余位客户解决了论文写作的难题。 秉承以用户为中心,为用户创造价值的理念,我站拥有无缝对接的售后服务体系,代做毕业设计完成后有专业的老师进行一对一修改与完善,对有答辩需求的同学进行一对一的辅导,为你顺利毕业保驾护航
代做毕业设计
常见问题

GIS矢量图形系统开发设计

添加时间:2019/07/31 来源:电子科技大学 作者:王华
由于当前 GIS 矢量图形系统的开发多是利用 GIS 专业软件开发工具所进行的二次开发,这种开发模式存在着诸多的限制,针对这一问题,本文提出了基于 VC++从底层开发一个 GIS 矢量图形系统的方案。
以下为本篇论文正文:

摘 要

  矢量图形系统面向地理对象,是地理实体抽象和完整表达的主要方式,因而是 GIS 系统中重要的组成部分,也是开发一个 GIS 系统的重点所在。

  当前矢量图形系统的开发多是在 GIS 专业软件的基础上进行二次开发,而这种开发模式存在着诸多弊端。在对目前矢量图形系统开发现状研究的基础上,本文提出了基于 VC++从底层开发 GIS 矢量图形系统的方案。以“平乐旅游信息平台”作为应用实例,本文主要介绍了系统空间数据的组织方式,分析和探讨了系统的设计思想、实现技术和功能结构等问题。

  本文重点研究了矢量图形数据对象类的组织和存储、图形对象的绘制及符号库的设计。同时对矢量图形系统坐标系的建立及其与 Windows 坐标系之间的转换关系进行了探讨,在此基础上实现了图形的无级缩放、漫游、全图显示等操作功能。通过对属性数据文件的操作及与属性数据库的连接,本文对图形对象与属性信息的双向查询功能进行了深入的研究。对如何利用 VC++的树控件开发图层管理窗口进行了详细的分析。此外,就矢量图形的显示速度等问题进行了探讨,并提出了解决方案。最后将本文的研究成果应用到平乐旅游信息平台中,并取得了预期的效果。

  关键词:矢量图形系统,底层开发,面向对象,矢量图形数据

ABSTRACT

  Vector graphic system which is oriented geographic objects is a main way for the geographical entities abstract and complete expression. Therefore, it is an important component of GIS system, also a focus in the development of GIS system.

  This thesis relies on "Pingle tourist information platform" subject, aimed to develop a vector graphic system independently that can meet the needs of the information platform. In this paper, the solution that developing a GIS vector graphic system from the bottom using VC++ is brought forward On the basis of study for the current status of the development of vector graphic system. And then explore the organizational structure of the spatial data associated with the system, the design, implementation techniques, functional structure of the system and so on are introduced and analyzed in this paper.

  In this paper, the organization and storage of the vector graphic data object class is completed by object-oriented approach, drawing and symbolization of graphical objects are achieved. The establishment of coordinate system of the vector graphic and the conversion relationship between this coordinate and Windows coordinate system is explored. And based on this, operating functions such as stepless zoom and pan are achieved. Two-way query between graphic objects and attribute information is completed by operating attributes data files and connecting to attribute database. Layer management window is developed with VC++ tree control, and then graphic show on view is controlled through layer management. At the same time the display speed of vector graphic and other issues are discussed and solution is proposed. Finally, the research results of this thesis are applied to Pingle tourism information platform, and achieved the desired effects. Conclusion indicates that, the system achieved in this paper has some flexibility, class and functions required can be added at any time, good in scalability.

  Keywords: vector graphic system, development from bottom, object-oriented, vector graphic data

  作为信息技术的重要组成部分,地理信息系统(Geographical InformationSystem.GIS)在几乎所有与空间信息相关的领域得到了广泛的应用。一个基本的GIS系统包括管理空间坐标数据的矢量图形系统和管理属性信息的数据库管理系统,以及实现矢量图形系统与数据库管理系统双向连接的连接系统三个部分[1-2]。矢量图形系统面向地理对象,是地理实体抽象和完整表达的主要方式,因而是GIS系统中重要的组成部分,也是开发一个GIS系统的重点所在[3-5]。

  本课题依托于国家科技支撑计划项目:“村镇数字化管理关键技术研究与应用”的课题“平乐旅游信息平台”,该平台是电子科技大学地表空间信息技术研究所自行研制开发的基于互联网的影像信息平台。本文所研究开发的矢量图形系统是该影像信息平台的一个重要组成部分。影像能将地形、地物等地表景观准确、直观地反映出来,但单纯的影像信息量不够丰富,只对影像数据进行浏览还远不能够满足客户的需求,针对这一问题,我们需要开发一个矢量图形系统,将矢量图形与影像进行叠加,从而能够突出表现某些地物,充分反映地物的属性特征,使该平台拥有比单纯的影像丰富的多的信息量,以达到矢量图形与影像综合利用的目的。

  目前矢量图形系统的开发多是在某个已有的功能较为完善的图形系统上进行二次开发,在其中添加所需要的功能。一些专业的商品化GIS软件都提供了比较完善的图形系统的功能,利用这些专业的工具软件进行开发,虽然开发难度不高,简单易学,但也普遍存在着以下弊端:

  (1)不易扩展。专业的 GIS 工具软件虽然也提供了一些接口,但对象模型比较复杂,对开发者来说,难于修改,因而不能够很好的扩展。

  (2)软硬件要求高。专业的 GIS 软件开发工具通常比较庞大,为了能够支撑运行它们,对系统软硬件会有比较高的要求。

  (3)软件不易升级。利用 GIS 专业软件工具所进行的图形系统的开发,实质上只是在这些专业软件基础上做一些简单的应用开发,开发出的系统必须依赖于基础的 GIS 专业软件平台。开发完成的产品同样需要这些专业软件工具的支撑,因此,软件的升级就要受到制约。

  (4)代价高。商品化的GIS软件要面向最广的用户,所以软件和系统还是作为一个整体而存在,开发者必须要购买整个的GIS软件,代价较高,而且购买的平台中真正需要的功能可能只是很少的一部分[7],造成了软件资源的浪费。

  此外,在实际的应用中,我们对系统的需求往往主要集中在某些特定功能上,如本论文结合信息平台的需求,所需要的功能主要是图形的绘制、显示、查询、缩放等。然而,商品化的 GIS 软件致力于提供解决方案,它提供了全面的 GIS 功能,因此,面向实际应用的针对性必然要差一些。

  综合以上分析,对于有特定需求的用户来说,有针对性的从底层自主开发符合自己需要的矢量图形系统是十分必要的。近年来,GIS技术在全球得到了迅猛的发展,它已经成为IT的重要组成部分[5]。随着信息技术的快速发展和计算机软硬件水平的提高,GIS的应用范围扩大到社会信息服务领域。目前,GIS技术在我国也得到了广泛应用,其已被应用到环境保护、城市规划与土地管理、电力、测绘、交通等与空间信息有密切关系的各个方面,并取得了丰硕的成果和巨大的经济效益。

  随着 GIS 应用的日趋广泛,矢量图形系统作为 GIS 系统最重要的组成部分,应用领域也不断扩大,已进入了普通管理信息系统(MIS),GIS 矢量图形系统与普通管理信息系统相结合,克服了 MIS 系统的局限性,大大提高了系统的直观性和可操作性,同时提高了 MIS 系统所不能解决的如空间信息统计、属性信息计算等功能。

  正因为GIS技术的迅猛发展,用于开发GIS的专业工具软件也得到了飞速发展,涌现出了大量的GIS专业软件。国外的GIS软件产品已经非常成熟了,以ESRI和MapInfo两家公司为代表[1,9],他们的产品提供了GIS的全套解决方案,软件功能强大且完善。其中,ESRI的ArcGIS在国内外都得到了非常广泛的应用,它推出的系列产品包括桌面GIS产品 ArcView,地图浏览器ArcReader,空间数据库引擎ArcSDE,以及二次开发控件MapObjects和一些空间分析模块等等。在我国,随着信息化建设的加快,GIS的研究机构和人员越来越多,国产GIS软件的开发工作也取得了重要进展,出现了一些较为成熟的软件产品,最有代表性的是北京超图地理信息技术有限公司开发的超图SuperMap和中国地质大学开发的MapGIS。这些国产 GIS软件以较高的性价比,打破了国外GIS软件对我国市场的垄断,尤其是超图在功能上几乎可以与国外的大牌产品相抗衡。

  专业的GIS软件大都提供了较为完善的矢量图形的开发功能。借助这些专业的开发工具软件,出现了大量GIS系统的研究和开发成果。文献[10]以ESRI公司的MapObjects2.0 作为地图控件,对在VC++环境下如何嵌入地理信息系统控件(ActiveX),如何利用MapObjects具体实现组件式GIS系统的基本功能等问题进行了探索,并在此基础上开发完成了一个针对西北干旱区的组件式GIS系统。文献[11]

  采用MapInfo构建地图空间数据,在VC++环境下通过利用Mapx地图控件设计实现了校园GIS系统,解决了对校园资源的空间及属性特征的综合管理。这些系统的开发采用的都是组件式开发方法。组件式开发又称为集成二次开发,是指开发人员使用各种可视化编程语言,如Visual C++、Visual C#、Delphi、Visua1 Basic等结合专业GIS软件所提供的GIS控件,如 ERSI公司的MapObjects控件和MapInfo 公司的MapX控件等进行的二次开发。这种开发方法因为是以GIS专业软件作为基础开发平台,所以开发人员可以直接在较高的起点上组织系统的开发[6],开发完成的系统功能强大,而且可靠性较好。但是,因为这种开发方式必须完全依赖于GIS专业软件基础平台,不可避免的受到了约束。

  由于二次开发模式的诸多限制,开发者逐渐抛开对专业 GIS 软件的依赖,开始探索一种符合自身需要的独立开发方式。在大量研究开发成果中,利用可视化编程语言从底层开发 GIS 矢量图形系统,其可行性得到了验证。

  文献[12]提出了一种小型GIS矢量图形系统的设计方案,利用GIS 、面向对象及数据库等技术,以VC++6.0 开发平台,底层开发实现了一个具有图形编辑功能,且有与第三方GIS软件数据接口功能的GIS矢量图形系统,并已在生产中得到了应用。文献[4]同样利用VC++6.0,基于面向对象技术的软件工程思想开发实现了一个用于煤矿安全分析可视化研究的矢量图形系统。文献[7]提出了一种基于MFC的动态交互的矢量图形系统的快速开发方法,设计实现的矢量图形系统已成功应用于测绘数据处理等专门问题的解决中。而文献[13]在总结了底层开发应用图形系统的实践经验基础上,提出了利用VC从底层开发适合农田管理的基本GIS矢量图形系统的设计方法,并在此基础上实现了矢量图形系统与数据库管理系统的双向连接,所开发完成的系统满足了农田管理的基本需求。

GIS矢量图形系统开发设计:

Shapefie 文件的导入
Shapefie 文件的导入

图形绘制界面
图形绘制界面

FontCreator Program 中编辑的字体符号库
FontCreator Program 中编辑的字体符号库

程序调出的部分点符号
程序调出的部分点符号

线符号设置对话框
线符号设置对话框

符号化后的铁路线
符号化后的铁路线

添加文本标注后的图形
添加文本标注后的图形

目 录

  第一章 绪论
    1.1 研究背景
    1.2 研究现状
    1.3 本文主要研究内容及结构安排
  第二章 系统的分析与设计
    2.1 系统开发思路
    2.2 系统空间数据组织
      2.2.1 矢量数据模型
      2.2.2 矢量数据结构
    2.3 系统数据文件分析
      2.3.1 Shapefile文件简介
      2.3.2 Shapefile文件结构
    2.4 系统体系结构设计
    2.5 系统功能结构设计
      2.5.1 功能分析
      2.5.2 系统功能模块
    2.6 界面设计
  第三章 矢量图形系统坐标系的设计
    3.1 WINDOWS环境下的坐标系及其相互关系
    3.2 窗口和视口
    3.3 矢量图形系统坐标系的建立
    3.4 系统中坐标系间的相互转换
      3.4.1 逻辑坐标与设备坐标的转换
      3.4.2 实际坐标与Windows坐标系的相互转换
  第四章 系统的实现
    4.1 系统软件框架结构
    4.2 图形数据的输入
    4.3 图形绘制的实现
      4.3.1 基本图形对象类的组织
      4.3.2 图形元素类的存储
      4.3.3 图形元素绘制的实现方法
    4.4 符号化的实现
      4.4.1 点状符号的设计
        4.4.1.1 字符点符号的设计与制作
        4.4.1.2 点状符号的绘制
      4.4.2 线状符号的设计
        4.4.2.1 线状符号的制作
        4.4.2.2 线状符号的绘制
      4.4.3 文本标注的设计
      4.4.4 填充模式设置
    4.5 图形操作模块的实现
      4.5.1 无级缩放和漫游的实现
        4.5.1.1 图形无级缩放的实现
        4.5.1.2 漫游的实现
      4.5.2 全图显示的实现
      4.5.3 距离量算功能的实现
      4.5.4 图形操作中的消息处理设计
    4.6 查询模块的实现
      4.6.1 查询功能概述
      4.6.2 查询模块基本功能的实现
      4.6.3 查询功能的实现过程
      4.6.4 查询模块主要类层次结构
      4.6.5 属性对话框的显示结构设计
      4.6.6 图形选取操作
    4.7 图层管理模块的实现
      4.7.1 图层的数据组织
      4.7.2 图层基本功能的实现
    4.8 存在的问题与解决的办法
    4.9 系统应用实例
  第五章 结论与展望
    5.1 论文研究总结
    5.2 展望
  致谢
  参考文献
  攻读硕士期间取得的研究成果

(如您需要查看本篇毕业设计全文,请您联系客服索取)
相关内容
相关标签:VC毕业设计
好优论文定制中心主要为您提供代做毕业设计及各专业毕业论文写作辅导服务。 网站地图
所有论文、资料均源于网上的共享资源以及一些期刊杂志,所有论文仅免费供网友间相互学习交流之用,请特别注意勿做其他非法用途。
如有侵犯您的版权或其他有损您利益的行为,请联系指出,论文定制中心会立即进行改正或删除有关内容!