563.基于辅助索引的多比例尺空间数据库模型【开题报告+毕业论文】.doc

上传人:laozhun 文档编号:4018549 上传时间:2023-04-01 格式:DOC 页数:45 大小:943KB
返回 下载 相关 举报
563.基于辅助索引的多比例尺空间数据库模型【开题报告+毕业论文】.doc_第1页
第1页 / 共45页
563.基于辅助索引的多比例尺空间数据库模型【开题报告+毕业论文】.doc_第2页
第2页 / 共45页
563.基于辅助索引的多比例尺空间数据库模型【开题报告+毕业论文】.doc_第3页
第3页 / 共45页
563.基于辅助索引的多比例尺空间数据库模型【开题报告+毕业论文】.doc_第4页
第4页 / 共45页
563.基于辅助索引的多比例尺空间数据库模型【开题报告+毕业论文】.doc_第5页
第5页 / 共45页
点击查看更多>>
资源描述

《563.基于辅助索引的多比例尺空间数据库模型【开题报告+毕业论文】.doc》由会员分享,可在线阅读,更多相关《563.基于辅助索引的多比例尺空间数据库模型【开题报告+毕业论文】.doc(45页珍藏版)》请在三一办公上搜索。

1、开 题 报 告论文题目:基于辅助索引的多比例尺空间数据库模型院 系: 姓 名: 学 号: 指导老师: 一 、目的和意义:地理信息系统(Geographical Information SystemGIS),是借助计算机软硬件设备,对与地理相关的数据进行收集、存储、管理、查询、分析和辅助决策的信息系统。在城市管理、土地管理、各类网络资源管理等关键部门的应用系统中,有着越来越广泛的应用。随着GIS的发展由项目驱动向数据驱动转变,数据在地理信息系统中占已处于核心地位。较之传统的非空间数据,空间数据具有更丰富的语义,对现实世界的描述更准确,应用更为广泛,但其最大困难在于海量空间数据的存储与处理。GIS

2、不同于其它计算机系统的重要一点就是它必须存储与处理海量的空间数据,数据建设已成为GIS的一个重要课题。随着地理信息系统应用领域的不断扩展和需求层次的日益提高,人们越来越多地需要在不同比例尺对地理现象进行观察、理解和描述,即越来越多地需要对多尺度的空间数据进行分析、处理和表达,这就导致对多比例尺GIS需求的出现。多比例尺空间数据库是对同一地域同时存在几种不同尺度(或数据精度)的空间地理数据的进行存储,也就是指一个在GIS中同时存在几种比例尺的空间数据。当系统中包含几种比例尺数据时,GIS便可以提供不同尺度、不同层次上的空间信息服务。如从小比例尺到大比例尺的图形浏览,是一个从区域到对象的空间放大过

3、程。从地理数据的分析来看,它总是针对一定的空间尺度和一定的空间等级进行的,空间数据的分析观察必须在一定比例尺条件下进行,对于在小比例尺地图上进行的空间分析,涉及的范围就会非常广泛,通过实时建立所需数据集,势必影响空间分析的性能。另外,根据用户解决问题的不同,对空间数据需求的详细程度也是不一样的,GIS如何提供用户多尺度或多种详细程度的空间数据?GIS以其丰富的地理信息内容做为数字地图生产的基础之一,如何满足输出不同详细程度和不同内容的地图产品?这些都是在建立GIS时值得考虑的问题。因此,如何构建空间数据的多比例尺体系成为GIS人员不得不重视的问题。鉴于多比例尺空间数据库建设在GIS中占有着重要

4、地位,现在迫切需要投入大量的精力来寻求多比例尺空间数据库建模的最优解决方案,解除GIS多比例尺数据存储方面的难题,以保证GIS持续深入发展,可以使GIS应用到更多的领域。本课题用建立辅助索引结构的方法在Oracle中建立多比例尺空间数据,再采用VB和AO开发多比例尺空间数据管理系统,实现多比例尺空间数据的显示和查询,当涉及到不同比例尺时,系统会自动调入和释放相应的空间数据。二、国内外发展状况:目前多比例尺GIS空间数据库组织形式主要有两种,一种是动态方式,即在GIS中,建立一个较大比例尺的主导数据库,而其它层次比例尺的空间数据库是从该库中动态派生、综合而来;另一种是静态方式,即在GIS中,建立

5、能够集成多种比例尺的空间数据库。静态方式是一种预先构建出多比例尺空间数据体系的方式。若现有空间数据的尺度体系不完备,它强调应首先采取综合的方法综合出所欠缺的尺度数据,然后集成成为一个完整的多比例尺数据体系。在这种方法中由于数据库中存储有大量不同比例尺的数据,空间索引对于提高查询处理速度很重要,常用空间索引有格网型空间索引、四叉树空间索引、R树和R+树、CP树,该方式的优点:能够充分利用中间尺度的空间数据,和传统的制图综合方法相结合,快速地浏览各种尺度下的空间信息。缺点:增大了空间数据的组织和管理难度,增加了存储容量。动态方式以某大比例尺空间数据为基础数据,随着比例尺的缩小,系统动态生成其它尺度

6、的空间数据。该方法体现的是一种无级比例尺的概念,它更多地依靠空间数据的分类、分级及数量选取、内容选取和图形概括等自动综合算法。动态派生方式的优点:空间数据库只存储大比例尺空间数据即可,简化了空间数据的组织与管理。缺点:在综合模型不完善的情况下,自动综合有较大的局限性;由于需要进行动态计算,信息浏览速度将受到严重影响。在多比例尺GIS空间数据模型方面国内外学者也提出了许多解决方案,比较典型的有王晏民、李德仁、龚健雅提出的分层分区分级方案,该方案的基本思想是,先将目标区分成若干比例尺层次,以最上层比例尺的空间数据作为主导版本(该版本可以是独立采集的也可以是较大比例尺版本用制图综合方法派生的数据),

7、用该版本向上派生更小比例尺的版本,直到屏幕能够显示全图为止。用主导版本对下层比例尺版本的空间数据进行分区,形成多个分区的大比例尺版本,将这些分区版本作为各分区的主导版本;再对分区主导版本向上派生,向下分区,直到满足要求为止。各分区版本可以是单独的数据库,也可以是分布在网上不同计算机上的数据库。也有人提出基于边-节点和原子属性的多比例尺GIS数据模型,在该模型中主要由几何图形、属性和要素三部分组成,比例尺定位在地理要素上,根据构成要素的几何图形类型,将要素分为简单要素、聚合要素和复合要素。概念模型中的要素类、工作区和图层是根据比例尺可选用的要素组织方式,各要素类、工作区和图层中都可包含不同类型的

8、要素,而且要素类、工作区与图层之间也没有层次关系,这克服了传统的要素类、工作区和图层受要素类型限制的不足。三、研究目标和内容:研究目标:研究基于辅助索引的多比例尺空间数据模型,并研究基于VB+AO开发基于此模型开发多比例尺空间数据库管理软件的技术路线,探索研究建立多比例尺GIS的技术。研究内容:1、研究多比例尺空间数据库模型,其中应包含辅助索引结构,辅助索引选择格网索引,将不同比例尺的地图划分不同的区域,再根据不同区域的最大和最小坐标建立不同比例尺的地图格网间联系。2、建立基于上述模型的数据库,数据库中需要集成的数据包括武汉市1:2000和1:10000两种基本比例尺的地形图数据和分幅结合表,

9、分为居民地、道路、水系、注记等层。3、基于上述模型开发多比例尺空间数据库管理软件,该软件的基本功能包括多比例尺地图显示功能(漫游、放大、缩小、全图、鹰眼),显示地图时会自动根据显示的范围调用数据库中相应比例尺的数据,查询功能有:SQL查询指通过构造SQL查询式用表格显示查询的属性信息同时用不同的颜色显示查询区域的位置;属性查询指在地图上画出要查询的区域(点、圆型区域、矩形区域或多边形区域)用表格显示所选区域的属性信息;缓冲区查询指在地图上画点、线、矩形、圆、多边形等并设置缓冲半径查找缓冲区内的地物并显示其属性和位置信息。四、研究技术路线:(流程图)设计数据库模型写数据库设计任务书在Oracle

10、中建立数据库不满意成型的多比例尺空间数据管理软件满意装上数据进行系统测试系统功能完善确定多比例尺数据管理系统软件的功能体系多比例尺数据管理系统软件界面和框架设计用VB+实现多比例尺数据管理软件的功能五、研究的进度安排:1、 第1周,收集资料;2、 第23周,理论学习;3、 第46周,学习VB、AO、Oracle;4、 第79,编程实现;5、 第10周,试验;6、 第11周,撰写论文;7、 第12周,答辩。六、收集的资料及主要参考文献:1、 齐清文,张安定:关于多比例尺GIS中数据库多重表达的几个问题的研究,地理研究,1999年6月,第18卷,第2期2、 李云岭,靳奉祥,季民,于焕菊:GIS多比

11、例尺空间数据组织体系构建研究,地理与地理信息科学,2003年11月,第19卷第6期3、 王 涛,毋河海:多比例尺空间数据库的层次对象模型,地球信息科学,2003年6月,第2期4、 郭建忠,安敏:GIS中多比例尺地理数据的管理和应用,解放军测绘学院学报,1999年3月,第16卷第1期5、 张作昌:基于要素的多比例尺线状地物空间数据组织,武汉大学硕士学位论文,2005年5月目录摘 要第一章 引言11.1建立基于辅助索引的空间数据库的必要性11.2 国内外发展情况21.3 论文结构安排2第二章 空间数据库42.1 空间数据库的特征42.2空间索引42.3空间数据库的管理模式52.4 空间数据库管理系

12、统实例6第三章 ARCOBJECTS二次开发技术83.1 ArcObjects简介83.2 VB6.0环境下的ArcObjects开发实现93.3 基于AO的地图显示与查询13第四章 多比例尺空间数据库174.1 多比例尺GIS的基本概念174.2 GIS中地理要素的多尺度表现特征174.3多比例尺空间数据库18第五章 基于辅助索引多比例尺空间数据库设计与建立215.1辅助索引的设计215.2多比例尺空间数据库的建立23第六章 基于辅助索引的多比例尺空间数据库管理系统介绍276.1系统界面介绍276.2系统功能介绍306.3多比例尺地图显示的实验效果31第七章 结论及进一步的研究方向34参考文

13、献35致谢37摘 要多比例尺空间数据表达及数据库建立具有广阔的应用前景,但多比例尺空间数据库的建立和管理还存在诸多难点,本文详细介绍多比例尺数据库的相关概念和理论,着力探讨基于辅助索引的多比例尺空间数据库模型设计和管理软件的设计开发,并具体介绍以Oracle +ArcSDE存储多比例尺空间数据的方法,和VB+AO开发多比例尺数据库管理软件的方法步骤。关键词: 多比例尺 空间数据库 地理信息系统 ArcSDE Oracle VB AOAbstract The field of application in Multi-Scale spatial database is larger and la

14、rger ,but there are many difficulties in building and regulating it. The author will narrate the concepts of Multi-Scale spatial database and related theory in detail. It will be researched chiefly in this paper that how to design and build a Multi-Scale spatial database based on assistant index .We

15、 also study the method of developing regulating software on it. The author will introduce the method of storing spatial data by Oracle and ArcSDE and the steps to develop GIS software by VB and AO .Key words: Muliti-Scale , spatial database , GIS , ArcSDE ,Oracle ,VB ,AO第一章 引言1.1建立基于辅助索引的空间数据库的必要性随着

16、GIS在社会各领域的应用和推广用户对GIS提出的要求也越来越高,如何从宏观到微观使用户从不同角度、不同方位分析和认知特定地域空间地理信息,为决策部门提供科学的决策依据成为GIS的一个发展方向。而建立多比例尺数据库是实现多比例尺GIS的核心工作,建立多比例尺空间数据库的必要性体现在:一是在空间认知中辅助从粗到细的信息导航:人们对空间现象的认知表现为从总体到局部、从概略到细微、从重要到次要的层次顺序,在传统地图技术表达中,通常通过概略图、区位图、索引图等方式配于主地图内容实现地物目标的搜索和空间信息的查询。多比例尺空间数据库表达了同一区域多分辨率下的空间信息内容。通过比例尺的类似于光学系统的“变焦

17、”调节,可以展示从大范围主体信息内容到局部区域细微信息内容的动态表达,从而引导用户对该区域的认识,进行信息导航,辅助用户截取其感兴趣的局部区域,并沿着该路径深入到细节内容。对于空间信息导航,传统地图技术中由概略图到主图有大幅度的比例尺跨越,会产生两者难以对应的认识难度,而多尺度空间数据库的比例尺调节接近于连续式变化,没有大的跳跃,较好地满足了思维连续性的要求。二是在可视化方式中实现用户自适应的动态可视化 :在GIS数据可视化中的放大、缩小是为了从不同层次深度获得空间信息的视觉化在单一尺度的空间数据库支持下,放大、缩小可得到图形符号化的不同形式,但并没有增加或减少信息内容,比如,到一定比例尺后,

18、进一步放大只能得到符号、文字占满整个屏幕的肥大的线划笔划、马赛克效果等。在新技术条件下,人们不再满足于静态、单一分辨率的空间可视化,提出了从多角度、多视点、多层次对空间可视化表达的要求。在多尺度空间数据库支持下,可根据屏幕当前可视化比例尺,动态地选择对应的尺度内容进行显示,获得适宜的可视化效果。可视化方式有两种,一是对同一研究区域动态地展示多种尺度下的显示版本,但同一版本不同位置显示的比例尺是相同的,二是同一版本下不同位置显示的比例尺不同。 三是在数据、系统集成中实现横向一致性匹配及便捷的互操作:不同来源、不同时间、不同精度的空间数据集成与融合,是GIS工程应用中的突出问题,其中语义特征的匹配

19、和尺度特征的匹配是两大关键技术。无疑,多比例尺空间数据库的建立增强了不同数据集成匹配的能力,可以实时地将不同尺度的数据调整为一致,或通过临时输出不同版本的数据使得其尺度达到一致或接近,为不同系统间的数据互操作提供条件。以上回答了我们为什么要建立多比例尺空间数据库,那么为什么我们要在多比例尺空间数据库上建立辅助索引呢?目前解决多比例尺空间数据大致分为2种:动态方式和静态方式(这两种方案将在后文详细介绍)。由于计算机地图制图综合的技术不够成熟,第一种方案虽然理想却不够现实,第二种方案简单易于实现,而且节省检索查询时间,但操作管理多比例尺空间数据会有很多麻烦,比如,根据目标区域的大小我们该得到何种比

20、例尺的地图数据,怎样得到我们所需要的实体集,因此我们需要在不同比例尺的空间数据上建立辅助索引,而最直接明了的方法就是建立基于位置的网格索引。1.2 国内外发展情况目前多比例尺GIS空间数据库组织形式主要有2种方案,这2种方案将在4.2.2节进行详细介绍。在多比例尺GIS空间数据模型方面国内外学者也提出了许多解决方案,比较典型的有王晏民、李德仁、龚健雅提出的分层分区分级方案,该方案的基本思想是,先将目标区分成若干比例尺层次,以最上层比例尺的空间数据作为主导版本(该版本可以是独立采集的也可以是较大比例尺版本用制图综合方法派生的数据),用该版本向上派生更小比例尺的版本,直到屏幕能够显示全图为止。用主

21、导版本对下层比例尺版本的空间数据进行分区,形成多个分区的大比例尺版本,将这些分区版本作为各分区的主导版本;再对分区主导版本向上派生,向下分区,直到满足要求为止。各分区版本可以是单独的数据库,也可以是分布在网上不同计算机上的数据库。也有人提出基于边-节点和原子属性的多比例尺GIS数据模型,在该模型中主要由几何图形、属性和要素三部分组成,比例尺定位在地理要素上,根据构成要素的几何图形类型,将要素分为简单要素、聚合要素和复合要素。概念模型中的要素类、工作区和图层是根据比例尺可选用的要素组织方式,各要素类、工作区和图层中都可包含不同类型的要素,而且要素类、工作区与图层之间也没有层次关系,这克服了传统的

22、要素类、工作区和图层受要素类型限制的不足。1.3 论文结构安排第一章主要介绍空间数据的内容和结构以及建立多比例尺空间数据库的重要意义,通过本章读者可以让大家认识到此项工作的重要意义。第二章向读者介绍空间数据库的基本知识,包括数据模型、空间索引、数据库管理模式,以及Oracle Spatial 和ArcSDE如何组织管理空间数据。第三章着重介绍ArcObjects组件的类、接口以及开发方法,主要介绍基于AO+VB如何实现地图显示和查询(查询包括属性查询和空间查询)。第四章详细介绍多比例尺GIS的基本概念,建立多比例尺空间数据库要解决的关键问题以及多比例尺空间数据库的组织方案。通过本章读者将对多比

23、例尺空间数据库有更进一步的认识。第五章着重介绍本系统多比例尺空间数据库的辅助索引的设计以及如何建立多比例尺空间数据库。第六章介绍多比例尺数据库管理软件,包括该软件的界面设计、功能模块以及试验效果。第七章总结全文提出结论以及深入研究多比例尺空间数据库的方向。第二章 空间数据库2.1 空间数据库的特征所谓空间数据库是包含空间数据的数据库。空间数据是指与空间位置有关的数据,与一般数据的差别在于其中包含着大量的几何数据,从而使得空间数据具有以下几个基本特征:1、空间特征:空间数据描述了空间物体的位置、形态,甚至需要描述物体的空间拓扑关系。每个空间对象都具有空间坐标,这意味着在空间数据组织方面,要考虑它

24、的空间分布特征,一般需要建立空间索引。2、抽象性特征:空间数据描述的是现实世界中的地物和地貌特征,非常的复杂,必须经过抽象处理,根据人们关心的内容的不同,人为的取舍数据,建立不同主题的空间数据库。3、非结构化特征:若将一条记录表达一个空间对象,它的数据项可能是变长的。例如,一条弧段的坐标,其长度是不可限定的,它可能是两对坐标,也可能是几万对坐标;其二,一个对象可能包含另外的一个或多个对象。4、空间关系特征:空间数据中记录的拓扑信息表达了多种空间关系。这种拓扑数据结构一方面方便了空间数据的查询和空间分析,另一方面也给空间数据的一致性和完整性维护增加了复杂性。5、海量数据特征:空间数据量是巨大的,

25、通常称海量数据,它的数据量比一般的通用数据库要大得多。2.2空间索引GIS通常包含各种大量的空间信息,空间数据索引的建立有利于提高空间数据的存储、检索效率。因此,对空间数据索引模型的研究具有重要的现实意义。至今,研究人员提出了大量通用的空间索引技术.常用的空间索引有网格(grid)索引、R-tree索引、四叉树索引、k-d树索引和八叉树索引。下面将介绍几种空间索引。1、网格索引 格网索引是将覆盖整个研究区的范围,按照一定规则划分成大小相等的格网,然后记录个格网内所包含的空间实体,为了便于建立空间索引线性表,每个格网按Morton码或Peano码进行编码,建立Peano码码与空间实体的关系,该关

26、系表就成为格网索引文件,每个要素在一个或者多个网格中,每个网格可包含多个要素,要素不是真正被分割,按格网法对空数据进行索引时,所划分的格网数不能太多,否则,检索表本身太大而不利于数据的索引和检索。2、R-tree索引 R树是一种索引大数据量空间数据的常用方法,是一种高平衡的数据结构,包括中间节点和叶子节点。这一数据结构是来自于B树,除了根结点和叶子结点之外,R树的子节点有一个最大值M和最小值m,其中m的取值是在2mM/2,每个节点的实体形式是(I,ptr)。在叶子节点中,ptr是实体的标示符,I是实际实体的最小外接矩形;在中间节点中,ptr是指向孩子节点的指针,I是包含下一层的所有孩子节点的最

27、小外接矩形。3、线性四叉树索引:四叉树索引是基于空间划分组织索引结构的一类索引机制。它将坐标空间看作是一个矩形,第一层分解时,将其划成四个相等的子矩形,称为象限;在第二层分解时,每个象限又被分成四个子矩形,依次分解,直到遇到终止条件才停止。利用四叉树索引,为每层创建一个表示地理数据的覆盖图案,利用这种覆盖图案来代替空间图元,并将该图案的二维表示存储在空间索引中。2.3空间数据库的管理模式由于空间数据的复杂性和特殊性,依靠空间数据管理方法,出现了几种不同的空间数据库管理模式。1)混合数据库模式,混合管理模式用文件系统存储空间数据及其拓扑关系,用通用关系数据库存储属性数据,通过唯一标识符来建立它们

28、之间的连接。在这种管理模式中,空间数据与属性数据除它们的ID作为连接关键字段以外,两者几乎是独立地组织、管理与检索。表现地理空间数据方面,缺乏完整的表达语义和存储机制;难于保证数据存储、操作的统一。混合管理模式还不能说建立了真正意义上的空间数据库,因为文件管理系统的功能较弱,特别是在数据的安全性、一致性、完整性、并发控制以及数据损坏后的恢复方面缺少基本的功能。2)统一数据模式,使用纯关系数据模型,空间数据和属性数据都用关系来存储,使用标准关系连接机制建立空间数据与属性数据的关联,使之能直接存贮和管理非结构化的空间数据。统一数据模型主要解决了空间数据的变长记录管理,具有关系数据库查询、检索、数据

29、完整性和安全机制等优点,但是它仍然没有解决对象的嵌套问题,空间数据结构也不能由用户任意定义,使用上仍然受到一定限制。3)对象关系数据模式,ORDBMS是对RDBMS进行面向对象的扩展,既具有良好的企业级数据库管理及异构数据的访问能力,以及完整性、持久性、并发控制、可恢复性、一致性和查询能力,又具有对海量数据、特别是空间数据类型的支持。ORDBMS是关系世界的SQL与对象世界的模型基元的结合,既保持了RDBMS的所有功能和优势,同时在数据服务器中添加了灵活的功能,支持复杂的“用户自定义”应用对象和逻辑,较好地实现了对复杂数据类型的快速高效查询。因此,基于对象关系的空间数据库管理系统成为GIS空间

30、数据管理的主流。4)面向对象数据模式,面向对象模型最适应于空间数据的表达和管理,它不仅支持变长记录,而且支持对象的嵌套、信息的继承与聚集。面向对象的空间数据库管理系统允许用户定义对象和对象的数据结构以及它的操作。但面向对象数据库管理系统还不够成熟,价格又昂贵,目前在GIS领域应用还不广泛。2.4 空间数据库管理系统实例Oracle Spatial与ArcSDE可以说是管理空间数据库的优秀实例,下面分别予以简单介绍。2.4.1 Oracle Spatial Oracle 9i Spatial(简称Oracle Spatial)是Oracle 9i的一个重要组件,它能够使用Grade 9i对空间数

31、据的存储、访问及分析操作更快捷有效。下面介绍Spatial中的主要概念:Oracle Spatial的对象关系模型包含一组对象数据类型,一种索引类型,以及作用于这些数据类型的算子。在对象关系模型中,几何体被存储为对象,并且在单独一行的单独一列中,该列的名称是,SDO_GEOMETRY,空间索引的创建和维护是由基本的DDL语句(CREATE, ALTER, DROP)和DML (INSERT, UPDATE, DELETE)语句完成的。在对象关系模型中,对空间数据的操作流程大致是:创建一个空间表,插入数据,创建空间索引,进行空间查询。而这些操作都是基于对象类型SDO_GEOMETRY。 Orac

32、le Spatial内建几何图形类MDSYS,定义了一系列几何图形类型,包括点、点群、线串、多边形、圆弧串、圆弧多边形、混合多边形、混合线串、圆、矩形等。为了高效管理复合的、具有不同属性字段的空间数据,Oracle Spatial采用层次结构模型。层次结构模型由元素、几何图形及图层组成。元素(Element)是几何图形(Geometry)的基本组成部分,Oracle Spatial支持的元素类型有点、线串和多边形。几何图形或地物要素由元素组成。一类地物要素由同一元素组成,同一层地物具有相同的属性字段。空间索引是Oracle Spatial的一个主要特性,利用空间索引可以快速地检索所需要的数据纪

33、录。Oracle Spatial中的空间索引类型包括R-tree索引Quad-tree索引,它们各有优缺点,应根据实际情况选择其中之一,或两者都选。为了提高空间查询和连接的速度,Oracle Spatial采用了两级查询模型,分别是初级过滤器(Primary Filter)和次级过滤器(Secondary Filter)。初级过滤器是一个低耗过滤器,返回精确结果的超集;次级过滤器对来自初级过滤器的结果进行严格运算,从而获得精确结果。2.4.2 ArcSDEArcSDE是世界著名的GIS软件生产商ESRI公司开发的一种空间数据引擎。它是该公司开发的一整套GIS软件包“ArcGIS”的一个组成部分

34、。ArcSDE的主要功能是在关系数据库管理系统(RDBMS)和地理信息系统(GIS)之间充当一个应用网关,以充分地把GIS和RDBMS集成起来。SDE是结合先进的客户/服务器计算模式和数据库管理技术创建的一种新技术。SDE管理空间数据并为访问这些数据的软件提供接口,为用户在任意应用中嵌入查询和分析这些数据的功能。SDE将地理特征数据和属性数据统一地集成在关系数据库管理系统(RDBMS)中,如ORCALE,DB2,INFOMIX,SQL-SEVRE等等,利用从关系数据库环境中继承的强大的数据库管理功能对空间数据和属性数据进行统一而有效的管理。它尤其适用于多用户、大数据量数据库的管理。从空间数据管

35、理的角度来看,SDE可以被看成是一个连续的空间数据模型,借助这一模型,我们可以将空间数据加入到关系数据库系统中。 ArcSDE以层的方式来管理地理数据,具有共同属性项的一类要素可以放到一层中,每个数据库记录对应一个实际要素。ArcSDE为数据库中各层(Layer)建立了空间索引。空间索引是将层从逻辑上分成一个个小块,称为“cell,层中的要素则分解到各cell中加以描述,并将此描述信息写到索引表中。落到多个cell上的要素,将在每个cell对应的索引记录中加以描述。没有数据的cell不包括在索引表中。 ArcSDE存储和组织数据库中的空间要素的方法,是将空间数据类型加到关系数据库中。ArcSD

36、E并不改变和影响现有的数据库的应用。它只是在现有的数据表中加入图形数据项(Shape column),供软件管理和访问与其关联的空间数据。ArcSDE将地理数据和空间索引放在不同的数据表中,通过关键项将其相联。将图形数据项加到一个商业数据库表后,我们称该表为空间可用的(spatially enabled )。 ArcSDE通过将信息存入层表( LAYERS table)来管理空间可用表。层表帮助管理商业表和空间数据之间的连接。第三章 ArcObjects二次开发技术3.1 ArcObjects简介ArcObjects是ESRI公司ArcGIS家族中应用程序ArcMap、ArcCatalog和A

37、rcScene的开发平台,它是ESRI公司提供的一套基于COM技术的组件库。ArcObjects包括了3DAnalyst Extension、Application Framework、ArcMap、Geodatabase、ArcCatalog、Display、Output等18个功能子系统,提供了1800多个独立的COM组件、几百个具有良好文档说明的接口和数千个方法,ArcObjects组件展现了几乎在ArcInfo中可以利用的全部功能。通过AO可以完成这些甚至更多的功能:空间数据的显示、查询检索、编辑和分析;创建各种专题图和统计报表;高级的制图和输出功能;空间数据管理和维护。AO已经提供了

38、许多底层的基本功能,而我们用它进行二次开发的任务是按照应用需求将这些底层功能组装集合成一个更强大的COM对象。我们现在知道AO是基于微软的COM技术来构建的,因此它的开放性和扩展性很强大。这儿的开放性是指在开发环境的选择上可以有VBA、VB、VC+、DEPHI等多种支持COM标准的开发工具,而扩展性是指AO组件没有提供的功能,如需要定义一种新的数据格式,你就可以利用COM技术来写自己的COM组件,对AO组件库进行扩展补充。在某种程度上可以说AO开发功能是没有限制的。首先我们讨论一下如何进入AO软件的领域开发?AO程序员必须掌握一下四个方面的知识:1)面向对象技术; 2)COM技术; 3)AO各

39、组件对象的层次组织和相互关系; 4)支持COM的各种开发工具及其环境(如VB、VC、DEPHI等)。关于这4方面的知识读者可以找到相关书籍,在此就不详细介绍了,下面介绍一下AO的高级通用组件:1) MapControl控件:MapControl控件提供了类似ArcMap中的数据视图(Data View)的窗口,通过它你可完成以下甚至更多功能: 显示图层地图,放大,缩小,漫游; 生成图形元素,如点,线,圆,多边形; 说明注记;识别地图上被选中的元素,进行空间或属性查询; 标注地图元素。总之在ArcMap中能够完成的大部分任务,通过MapControl控件也可以完成。通过设置MapControl

40、General, Layers, Map 属性,你甚至不需要写一行代码可以获得一些GIS功能。关于MapControl控件有许多完整的应用示例,存放在ArcObjects Developer KitSamplesControls目录下。 2) PageLayout控件:PageLayout控件提供了类似ArcMap中的版面视图的窗口,它有以下的属性、方法和事件: 管理控件的外观设置; 管理控件的显示属性; 管理页面属性; 在控件中增加和查找元素; 加载地图文档到控件; 可以直接从资源管理器和ArcCatalog中拖放数据到控件中; 打印页面设计。 至于它的功能,ArcMap的Layout视图能

41、完成的工作,使用PageLayoutControl同样可以完成,像增加和设置图例、打印输出等许多功能。关于PageLayout控件有许多完整的应用示例,也存放在ArcObjects Developer KitSamplesControls目录下。3.2 VB6.0环境下的ArcObjects开发实现AO 可选的的开发方式可以分为两种,一种是在ArcMap应用框架基础上进行定制开发,另一种是脱离ArcMap应用框架去开发独立的应用程序。通常情况下,我们都是在ArcMap框架下进行定制开发,开发环境可以选择ArcMap本身自带的VBA,也可以选择VB、VC、DEPHI(AO 8.2以上的版本开始支

42、持C#)。由于本课题选用的是AO+VB的开发模式,在此将详细介绍如何在VB环境中利用ArcObjects开发EXE。1)启动VB开发环境,在图3.1所示的“New Project”对话框中选“StandardEXE项,并点击按钮,进入VBE环境。 图3.1 New Project对话框2)引用ArcObjects对象库:首先点击菜单中的项,如图3.2,进入对象库引用对话框,如图3.3。图3.2启动对象库引用对话框图3.3对象库引用对话框3)对象库引用对话框(图3.3)中选中“ESRI Carto Object Library ”、“ESRI Display Object Library”、“E

43、SRI Geometry Object Library”、“ESRI GeoDatabase Object Library”、“ESRI System Object Library”等几项,并点击按钮,返回VBE环境。4)点击菜单项中的项,打开“Components”对话框,如图3.4。图3.4打开Components对话框5)在“Components”对话框中,切换到Controls页,并选中“ESRI MapControl”项,点击或按钮,如图3.5。图3.5 Components对话框6)如图3.6所示,加载MapControl控件之后,在VBE的控件面板中出现了MapControl控件

44、图标,用户便可以像在Form中添加Button一样在Form中添加MapControl控件,并利用它开发EXE。图3.6 添加MapControl控件3.3 基于AO的地图显示与查询3.3.1地图显示在MapControl显示地图有两种方法:一种不需要任何代码就可以实现地图的显示,在MapControl的属性页中直接添加图层。具体做法为:在MapControl控件上单击右键,选择Properties,在Property Page 上选择Map标签,如图3.7。图3.7 MapControl的属性页再点击Layers下的按钮就可以选择图层加载了,可以选择一个或者多个图层,如图3.8。图3.8选择

45、加载的图层通过以上的步骤就可以轻松实现地图在MapControl中的显示,如图3.9。图3.9 MapControl简单显示图层另一种实现地图显示的方法是通过按钮或者菜单来加载Shape文件或者其它的图层文件。该方法可以通过AddLayer,AddlayerFromFile,AddShapeFile函数来实现,其代码为:Sub AddData()Dim pFactory As IWorkspaceFactoryDim pWorkspace As IFeatureWorkspaceDim pFeatLayer As IFeatureLayer 新建一个 ShapefileWorkspaceFac

46、tory 对象Set pFactory = New ShapefileWorkspaceFactorySet pWorkspace = pFactory.OpenFromFile(C:DataUSA, 0)新建一个 FeatureLayer 对象Set pFeatLayer = New FeatureLayerSet pFeatLayer.FeatureClass =pWorkspace.OpenFeatureClass(States)pFeatLayer.Name = pFeatLayer.FeatureClass.AliasName 在地图上加载一个新图层With MapControl1.

47、AddLayer pFeatLayer.AddShapeFile C:DataUSA, counties .AddShapeFile C:DataUSA, USHighEnd WithEnd Sub3.3.2 查询实现在GIS中查询分为空间查询(根据图形查属性)和属性查询(根据属性查图形),AO中查询涉及到的对象有SectionSet,Curor和QueryFilter及其子类和它们所支持的接口。SectionSet主要提供对单张表或FeatureClass中选定的一组记录的引用,主要通过表或Feature Class的Select方法来创建。QueryFilter对象通过属性值的条件设置来达到选择记录的目的,通过IQueryFilter提供的WhereClause属

展开阅读全文
相关资源
猜你喜欢
相关搜索
资源标签

当前位置:首页 > 办公文档 > 其他范文


备案号:宁ICP备20000045号-2

经营许可证:宁B2-20210002

宁公网安备 64010402000987号