




已阅读5页,还剩27页未读, 继续免费阅读
版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
ESRI ArcGIS 新特性与电力地理信息系统第一章 ESRI全新AM/FM/GIS平台 ArcGIS体系结构及技术介绍1. ESRI的AM/FM/GIS技术观点ESRI从事AM/FM/GIS理论研究、产品开发及应用拓展已有三十余年的历史,遍布全球数以百万计的用户,为ESRI的技术进步和自身的壮大提供了巨大的推动力和发展空间。ESRI以其深厚的理论及工程技术底蕴,加之强大的技术开发力量,在对广大用户大量的反馈信息进行分析、整理和发掘的同时,始终积极地对各种主流的IT技术加以广泛而深入的关注,并对自己的产品体系结构及技术进行及时的优化和重构。从而使ESRI得以长期保持GIS领头羊的地位,并为GIS界和广大用户持续地提供各个不同的发展时期中最新、最好、最强有力的技术、服务和支持。随着GIS技术在国民经济建设各领域、各部门的应用日益普及和深入,GIS的潜在价值正在被不断地发现和挖掘。GIS系统作为国民经济重要基础设施之一的重要性和不可替代性正在被广泛认识和接受。GIS正在逐渐成为各种各样基于IT的信息系统和应用系统的公共平台。GIS需要发挥的已不仅仅是其最传统同时也是最基本的作为空间查询检索和专题制图辅助工具的那些功能和作用,更重要地,GIS正在逐步成为一种与我们的工作、学习、生产和生活密不可分的重要因素。对于现代IT文明的各个组成部分,如:网络、计算机、操作系统、数据库、人机交互、软件工程以及程序设计语言和方法等,GIS应该采取的是一种积极借鉴、充分融合的思路。就FM(公共设施管理)而言,一个单纯为设施管理而建立的一个独立的“纯FM”系统已远远不能满足要求。设施的前期规划、工程实施、服务保障、系统维护以及客户管理等,都必须充分地利用除各种专业设施数据以外的其它空间数据及相关属性数据,诸如:基础空间定位数据、行政区划数据、城市规划数据、国民经济产值分布数据、人口统计数据、客户及潜在客户分布数据、竞争对手势力及其客户分布数据等,通过对这些数据的综合空间分析以得出能够对FM的规划、管理和服务等具有科学参考价值的辅助决策信息,从而在效率和质量两方面同步提高公共设施的规划、管理和服务水平。而这些,仅凭单纯意义上的设施管理已完全不能涵盖和满足。因此,ESRI所强调和追求的是在提供丰富的FM机制和功能的前提下,与GIS充分地结合,利用GIS的强大空间分析功能对FM提供深层的支持和扩展空间。ESRI在其崭新的AM/FM/GIS平台系列软件ArcGIS中,除了继续保持ESRI产品既有的强大空间数据管理和分析能力外,还全面采用了工业标准的和开放的主流IT技术,主要表现在:a) 数据管理采用全关系DBMS,在所有主流的工业标准的DBMS中管理空间数据和相关的属性数据。同时,提供并发、高效和安全的海量空间数据驱动引擎和丰富的客户端软件。b) 设计并实现了面向对象的、全新的空间数据模型:Geodatabase(地理数据库),使得空间数据对象及其相互之间的关系、使用和连接规则等均可以方便地表示、存储、管理和扩展。c) 数据模型的定义和框架生成可采用工业标准的CASE(计算机辅助软件工程)工具完成,方便、准确、快捷并易于维护。d) 从低端到高端的平台产品均采用共同的、工业标准的体系结构:基于组件对象模型(COM)进行构造,使得ArcGIS系列各产品之间以及ArcGIS与其他厂商的产品或系统之间可以在共同遵守工业标准的前提下,方便而无缝地互连、互嵌和扩展。e) 全面支持工业标准的开发环境,如:VBA、VB、VC+、Delphi等,为系统的定制和开发提供了自由的选择空间和有充分保障的人力资源。ESRI在不断追求其产品的功能和效率的同时,始终坚持一种系统的观点,以图在系统的高度,为广大用户和二次开发商提供最好的系统性价比。这种系统的观点,可分解为以下几个方面:系统伸缩性:在网络技术和环境日趋成熟和完善的时代,任何一个信息系统都不应是孤立存在的,它不应该成为信息海洋中的一座“孤岛”。在设计和规划系统之初,我们就应该从宏观、从全局、从长远的观点来统筹考虑;但因为经费的投入问题、现阶段的应用需求以及其它各种硬软环境的制约,又往往迫使我们无法“一步到位”。因此,“统筹规划,分步实施”就不失为一种上佳选择。而要做到这一点,系统所依赖的平台的“可伸缩性(可扩展性)”则是关键。ArcGIS系列产品由于采用了工业标准的、开放的、统一的对象组件库(ArcObjects)作为其公共的技术基础,使得从其低端平台产品(如:ArcView 8)到高端产品(如:ArcInfo 8)的过渡和升级可保证数据和应用功能(程序)无须改动和转换而平滑地进行。从而充分地保护用户和开发商的前期投资和工作,保证系统的分步实施不会因为平台的提升和系统规模及功能需求的扩展而陷入进退两难的境地。系统集成性:GIS系统在实际的应用中往往要跟其它诸如MIS或SCADA等系统结合,方可满足需求。因此,我们常常会谈论到所谓“无缝集成”的问题。对“无缝”的追求其实是因为以往许多软件系统(包括GIS平台)在与外部系统连接时是“有缝”的,甚至是“两层皮”,无法很好地集成和融合。ArcGIS采用了工业标准的COM体系结构,使得基于ArcGIS平台的系统和其它的系统或第三方的工具、模型等成果之间具有了一种工业标准的“约定”或“接口”,只要大家遵守这些工业标准的约定,就可以轻松实现真正意义上的“无缝”连接或集成。系统安全性:系统的安全性应具有三个方面的意义:一是系统自身的坚固性,即系统应具备对不同类型和规模的数据和使用对象都不能崩溃的特质,以及灵活而强有力的恢复机制;二是系统应具备完善的权限控制机制以保障系统不被有意或无意地破坏;三是系统应具备在并发响应和交互操作的环境下保障数据安全和一致性。ArcGIS集ESRI三十年GIS研究、开发和应用经验之大成,其系统稳定性可以说是千锤百炼;ArcGIS系列中用于空间数据管理引擎的ArcSDE提供了独特的空间数据版本管理功能,在保证工作效率的前提下,很好地解决了空间数据的并发操作和数据一致性问题。2. ESRI ArcGIS系列体系结构ArcGIS是ESRI用现代最新主流IT技术对ESRI的AM/FM/GIS平台产品进行彻底重构后推出的新一代平台产品系列。2.1. ArcGIS体系结构ArcGIS系列有若干不同定位的GIS产品组成,其体系结构如下图所示:ArcView 8ArcInfo EditorArcInfo ProfessionalArcIMS VieweresArcSDEArcIMSDBMSFILES客户端服务端数据库TCP/IPHTTP2.2. ArcGIS的客户端ArcGIS的客户端产品包括ArcView 8、ArcInfo Editor、ArcInfo Professional以及ArcIMS的客户端viewer(用于标准的浏览器,如:Microsoft 的IE、Netscape的Navigator中)等。其中:ArcView 8:是ESRI的新一代桌面GIS产品。ArcView 8同ArcInfo 8、ArcSDE 8具备相同的核心技术,采用基于COM的体系结构,可以直接使用ArcInfo和ArcSDE所管理和生成的空间数据。ArcView 8提供了与ArcView 3.2相同的基本功能,同时又有显著的改进,如新的ArcCatalog数据浏览和管理的应用、动态投影、内置VBA用于客户化开发、一系列新的编辑工具、支持注记等。对于不需要高级的空间分析功能和对面向对象的空间数据进行交互定义修改的大量客户端应用,均可考虑采用ArcView 8作为其应用平台。其应用界面、开发环境、底层COM对象库等与高端的ArcInfo 8完全一致,可用内置的VBA或VB、VC+等开发平台对其进行二次开发,为系统投资的共享及系统升级和移植提供了有力的保障。ArcInfo Editor: 该产品在ArcView 8的基础之上增加了对Coverage及Geodatabase空间数据的交互编辑功能,主要面向那些对空间数据交互编辑具有特别需求的应用。从功能强弱的角度看,是介乎ArcView 8和ArcInfo 8之间的产品。ArcInfo Editor与ArcView 8及ArcInfo 8同样具有相同的界面风格、开发环境和底层COM对象库。ArcInfo Professional: 是ESRI的旗舰产品,其产品定位是专业化的AM/FM/GIS平台。ArcInfo Professional在ArcInfo Editor基础上又增加了对Geodatabase的结构定义和修改功能,增加了强大的空间分析功能,增加了对计算机辅助软件工程(CASE)工具的支持,可以方便、同时也是工程化地对空间数据模型进行定义和扩展。除了继续支持在7.X版本中提供的 AML、ODE、ODE FOR JAVA等开发环境外,在Windows NT和Windows 2000平台上还支持内置的VBA以及VB、VC+、Delphi等开发环境,对ArcInfo进行定制和二次开发。以上三个客户端都有统一风格的桌面应用:ArcCatalog、ArcMap和ArcToolbox。其中: ArcCatalog: 是一个集成化的空间数据管理器。用于空间数据的浏览,Geodatabase结构定义,数据导入导出,网络模型生成,对象关系和规则的定义、元数据的定义和编辑修改等。ArcCatalog支持大量的数据格式,包括:ESRI shapefiles, geodatabases, ArcSDE layers, ArcStorm layers, INFO tables, images, grids, TINs, CAD文件, 动态分段事件以及其它ESRI数据类型和文件等。 ArcMap: 是集空间数据显示、编辑、查询检索、统计、报表生成、空间分析和高级制图等众多功能于一体的桌面应用平台。ArcMap提供面向对象的类似CAD的空间数据编辑工具,全面支持空间数据的可视化交互操作。ArcMap提供了所见即所得的符号编辑器,令使用者可以随心所欲地生成任意复杂的点线面符号。ArcMap进一步拓展了ESRI强大的空间数据直接读取能力,多种格式的数据无需进行转换或利用中间交换格式即可动态地直接使用。ArcMap支持的确空间数据格式包括:ArcInfo coverages, ESRI shapefiles, ArcSDE layers, map libraries, ArcStorm layers, DXF and DWG, DGN, 大量的图像格式, GRIDs、TIN,等等。ArcMap还支持空间数据的动态投影(on-the-fly projection)。ArcToolbox: 是用于空间数据格式转换、叠加处理、缓冲区生成、坐标转换等的集成化“工具箱”。ArcToolbox以树形结构方式组织了120多个不同的空间数据处理工具,并且都是以菜单驱动的方式提供出来,这为我们以一种确定的、轻松的方式去完成哪怕是很复杂的工作提供了前所未有的方便。2.3. ArcGIS的服务器端GIS的企业化和网络化特征,随着近年来社会信息化的长足发展变得日益鲜明起来。ESRI充分把握了这一发展趋势,在ArcGIS系列中提供了两大服务器端产品:ArcSDE 和ArcIMS,以满足GIS的企业化和网络化需求。ArcSDE:是ESRI的空间数据库引擎,用于对海量空间数据及其属性数据的管理和驱动,为并发访问的多客户端提供快速、安全的数据服务。ArcSDE支持工业标准的DBMS平台(如:ORACLE、SQL Server、DB2、Informix等),同时引入了其独有的异步缓冲机制和协同操作机制,使得空间数据服务的响应效率空前提高,真正起到了“引擎”的作用,而非仅仅是提供一种空间数据存储方式而已。另外,ArcSDE具有丰富的客户端可供用户选用,如:ArcInfo、ArcView、ArcIMS、MapObjects、ArcExplorer、ArcSDE CAD Client等。同时,还提供了开放的API应用编程接口供用户或开发商开发自己的客户端应用或产品。ArcIMS: 是ESRI的第二代Web GIS产品。用户的空间数据和应用可通过ArcIMS在Intranet/Internet环境中进行发布和共享。ArcIMS提供用户在服务器端可选的影像方式或矢量数据流方式进行数据发布。客户端用户通过工业标准的通用浏览器即可对ArcIMS服务站点进行访问和交互操作。ArcIMS支持包括Servlet、ColdFusion、ASP等多种Web Server端技术,同时开发了有望成为未来Internet环境中GIS通用语言的ArcXML,为空间数据跨厂商、跨平台的广泛交流和共享打下了坚实的基础。2.4. ArcGIS的功能扩展除了ArcGIS系列中各个产品的核心部分以外,ArcGIS还有大量的功能扩展模块供用户根据实际应用的需求进行选择。这些扩展模块包括: 3D:为用户提供三维数据的生成、显示、编辑和分析功能。它集中了Arc/Info 7.X的TIN模块的强大功能和ArcView 3.x的3D扩展模块的易用性。在3D扩展模块中,还提供了一个独立的三维景观生成、显示和飞行的应用程序,可方便地对地上、空中和地下的各种(矢量、栅格和影像)空间要素进行三维叠加、透视观察、旋转飞行等。 Spatial: 提供对栅格数据的转换、显示、处理和分析功能。集成了Arc/Info 7.X的GRID模块的强大功能和ArcView 3.x的Spatial扩展模块的易用性。可完成矢量数据到栅格数据的转换、点密度图生成、连续表面生成、坡度坡向及光照模型生成、等高线生成、邻近及区域分析、栅格分类及显示等功能。GeoStatistical: 是GIS界第一个空间统计软件包,提供空间离散数据的统计表面生成、结果预测误差评估等。所有操作均以菜单驱动的方式完成,十分直观方便。ArcPress: 提供地图输出的栅格化转换,可将大数据量地图输出时对输出设备端内存的需求降至最低。2.5. ArcGIS的公共组件库ArcGIS完全基于工业标准的组件对象模型技术进行构建。而ArcObjects则正是用于构造ArcGIS系列平台的一个COM组件对象库。有了ArcObjects,ArcGIS中的各个不同的产品就有了共同的基础部件和工业标准的接口,这对于ArcGIS自身的定制和扩展以及ArcGIS与其它系统和平台之间的连接或融合起到了致关重要的作用。正因为ArcObjects,我们才能说ArcGIS是现今最开放、最易于扩展的GIS平台。ArcObjects COM组件对象库中定义并实现了1800多个在GIS应用中涉及到的空间数据对象,供用户和开发商客户化定制、扩展或构造不同应用领域的GIS应用。扩展模块ArcInfo ProfessionalArcInfo EditorArcView 8ArcObjects3. ArcGIS所采用的若干主流技术3.1.计算机技术及网络通信等现代信息技术为地理信息系统带来了新的发展和应用空间。ArcGIS勾画并构筑了新一代地理信息系统平台的基础框架,其中采用了许多主流的,成熟的软件和通信技术。这样可以保持系统的先进性,随着主流技术的发展而发展,使用户的投资得到保障。ArcGIS采用的主流技术主要有图形用户界面,组件技术,面向对象的数据库,网络和通信,现代开发语言等。3.1 图形用户界面当提到图形用户界面(GUI)即是用图形化的,形象的,所见即所得的方法来完成对话过程和操作任务。当提到图形用户界面的好处时,我们可能还对DOS操作系统培训班记忆犹新,面对键盘和闪烁的光标,读着不甚明白出错信息无所适从。在仅有字符用户界面(CUI)的系统下,要么你放弃专业地理信息系统的强大功能而改用桌面制图系统,要么去试着去一遍一遍地经受命令语法对你的考验,即使你仅仅是为了查询一条记录。当你学会定制出窗口和按扭并成功地在按扭上添加一条命令时肯定是欣喜若狂的。我们得承认许多复杂得功能不能用完全图形界面来完成,字符用户界面对某些专业的用户提供了各种功能的直接性和灵活性。但不管你是从事什么研究或工作,你的应用多复杂。你在地理信息系统上做的事情在起码有90%时间里是跟别人一样的。你可能在90%的时间里使用30%的地理信息系统功能:你看的是图形,操作的是图形,你的大部分结果也要用图形来表达。如果把这30%的地理信息系统功能集成到一个图形界面上去。那么你有可能选择暂时不去使用命令和花时间去培训。Mircrosoft Windows是一个应用最广泛的操作系统。ArcGIS在Windows NT上搭建了GUI首先因为NT上有受到欢迎的GUI标准,丰富的开发平台,众多的应用软件和图形控件。ArcMap采用了Window NT的GUI标准,如果我告诉你,在十分钟之内我可以制出并打印一张图文并茂的符合制图标准的东南亚地图来你不会感到吃惊吧。ArcGIS提供了三个图形界面的应用, ArcMap, ArcCatalogue, ArcToolBox*ArcMap面向一般的数据编辑,查询,制图,地理分析,是基于地理数据应用的一体化平台。*ArcCatalogue面向的是地理数据及数据字典的管理。包括建立,删除,预览,拷贝,转存等。是基于地理数据管理的应用。*ArcToolBox是一些不常用的数据转换,分析和管理的命令向导。ArcGIS中提供了非常丰富的图形用户界面,问题是把所有的工具都排列在图形界面上是不可能的。所以在ArcGIS上提供了的图形界面客户化和管理界面。菜单和工具条可以在窗口上排列,浮动或取消。系统提供很多图形界面命令,用户也可以通过组件或内置的VBA建立自己的图形界面控制。3.2 组件技术(COM)COM的英文全称为Component Object Model(组件对象模型),是微软提出的一种用于开发和支持程序对象组件的框架。COM的思想早在1990年就由OMG以CORBA(Common Object Request Architecture通用对象请求构架)的形式提出,类似的技术还有SunSoft的Java Bean, Java Applet技术。实例A实例C实例B公共接口代理(接口查询,实例创建。)应用接口代理COM顾名思义是一种系统构架模型规范而不是指特定语言,COM是一种自我描述,自我生存的软件模块。它由操作系统的COM管理部分来注册和管理,并向所有应用开放,同时它面向目标的事物描述方法。COM通过一个叫接口的机制与外部程序打交道。所有的实例至少有一个叫公共接口代理的接口。外部程序可以通过对这个叫公共接口代理的调用可以获得其它接口信息。通过接口可以完成组件所要达到的功能目标。与一般的语言源码和目标码不一样,COM不需要说明,注解,头文件,你也不必去读一些很难读懂的调用文档。很多支持COM标准的开发平台可以为你直接生成COM接口信息。COM代码不需维护,操作系统直接帮助你完成这些工作。当一个COM组件功能增强了,只要接口不变,你的应用不用重新修改和编译。COM具有非常好的可扩展性。你可以在已有的组件上扩展其功能。你甚至不需要修改或编译现有的应用而只要实现应用中组件的接口就可以编写出功能更强大的应用出来。Microsoft在Windows平台上成功地实现组件技术并且在其本身和众多其他厂商的开发平台支持。成为Windows平台的组件技术标准。ArcGIS正是在在这种组件技术的基础上搭建的,ArcGIS不但提供了基于图形用户界面的应用,而且提供了搭建这些应用的所有组件,这样为用户重新搭建他们自己的应用提供了巨大的空间。COM技术为计算机辅助系统工程的应用提供了可能。利用CASE工具来设计你的 基于COM的应用,你能更高效地设计出功能更强大的应用来3.3数据库技术数据库特别是特别是象Oracle, DB2, Informix, SQL Server,Access 这些中大型数据库关系型数据库技术经过几十年的的发展,基本上形成了工业标准。给地理信息系统技术带来了新的机会。采用数据库来管理地理信息系统数据与用文件系统相比,至少有以下优势:l 数据可以在更大范围内共享l 由于数据库采用的客户/服务器结构而不是依赖于操作系统的文件服务,只要指定网络地址就可访问数据,由于数据库的记录锁定技术,不会象文件系统一样产生共享冲特现象。l 数据的一致性得到保证。l 由于同样数据不用在不同的地方存储多遍,不会产生多份数据修改不同步的现象。只要利用数据库维护手段维护一份数据。l 数据访问更加高效l 采用数据库的强大的查询机制可以更快速高效地访问数据l 可以管理海量数据l 由于数据访问高效性,在一个数据集中存储的数据量不再受到限制,可以存储无缝的连续地理数据,不需要分块管理地理数据,可以存储海量的地理数据。l 事务处理能力大大加强l 地理信息系统不在是仅仅是一个分析工具,它实际成为企业信息系统的一部分。利用数据库的事务处理,地理信息系统正可以满足这一需求。l ArcGIS支持的主流的工业标准数据库如:Oracle, SQL Server, DB2等,同时支持他们之上的 OLE数据库访问标准,并在关系数据库基础上扩展了面向对象的技术。另外ArcGIS中还内置了一个基于Microsoft Access的数据库引擎,用来在本地管理和存储地理数据。3.4 通讯和网络技术随着通讯和网络技术的发展地理信息系统作为现代信息技术的一个领域,不可能不受到其影响。象TCP/IP, HTTP等网络通讯手段都在ArcGIS中得到体现,ArcGIS成为一个网络地理信息系统。地理信息系统数据是网络上的数据,可以存储在关系型数据库中,也可以在HTTP协议的Internet网站上。地理信息系统分析可以利用可以通过网络上的服务器来完成。你的设计和想法可以在整个部门或网络上发布。ArcGIS的ArcSDE扩展模块就是基于网络的专用的地理数据引擎,它与客户端之间建立TCP/IP连接,接受ArcGIS客户端的地理数据请求。ArcGIS中首次提出了一个地理处理服务器(GeoProcessing Server)的概念,它的实质是通过网络上的专门地理处理服务来完成地理数据处理。这样可以充分利用网络上的计算机资源,减少了对本地资源的要求。ArcGIS支持HTTP协议,可以访问ArcIMS上的地理数据。他扩展了标准的XML, 建立了一个ArcXML的专门用于地理信息的XML标准。3.5 开发语言及手段由于ArcGIS采用主流技术标准特别是组件技术,所以在开发手段和运行平台上提供了巨大的灵活性。实际上单纯的地理信息系统应用可以说已经没有多大意义,而在地理信息系统环境中来开发满足其他专业的功能也不太可能。组件技术带来的开发平台的灵活性,可以使地理信息系统技术和其它应用天衣无缝地结合起来,成为一体化的应用。采用主流开发平台可以随着主流开发技术的发展而发展,有利于应用升级和维护,降低投资风险,ArcGIS支持几乎所有的支持Microsoft 组件标准的开发平台,如VB, VC+,Delphi,PowerBuilder 等,首先用户可以根据自己的人员和条件选择开发平台,减少在开发平台上的人力开支。由于主流的开发平台都支持组件技术,这样就可以大大节省专业开发人员的培训费用。另外当用户已经在这些平台上开发了一些其他应用,他们可利用已有的源码,扩展地理信息系统功能。采用主流开发平台的组件扩展功能,用户还可以方便地扩展和建立新的地理信息系统组件和标准。如增加组件的功能,改变组件的行为,建立新的地理信息要素等。采用计算机辅助系统工程(CASE)技术可以灵活,高效地构建新的应用模型,而ArcGIS的组件技术为计算机辅助系统工程工具的应用提供了条件。在ArcGIS中用户可以采用计算机辅助系统工程工具来设计自己的地理信息系统对象模型。不管怎么说,设计一个大的系统需要很多专业的人才紧密配合才能完成,而对于一些简单的GIS应用ArcGIS提供了一个内嵌的计算机辅助系统工程工具VBA(Visual Basic for Application)。这是一个简单,高效的面向对象的编程语言,与Visual Basic相比,他依赖于宿主应用,如MircroSoft Word, MircroSofte Internet Explorer(IE)。通过对界面进行定制,用VBA编写界面宏。可以满足很大一部分应用需求。4. ArcGIS的客户化和二次开发环境4.1. 客户化及二次开发层次在ArcView 8和ArcInfo 8中都内置有Microsoft公司的VBA(Visual Basic for Application),我们可以不脱离ArcView 8或ArcInfo 8的运行环境即对其进行客户化定制和功能扩展开发,十分方便。选用内置的VBA作为基本的开发环境,我们至少可获得以下几个方面的好处:a) VBA业已成为工业标准,我们可以轻而易举地找到大量懂得VBA编程的程序员和各式各样的参考资料。b) VBA开发的程序或功能模块是编译执行的,因而运行效率很高。c) VBA采用集成化的开发环境,可以大大提高开发和调试工作的效率。d) 支持DAO(Data Access Objects)。另外,还支持VB、VC+和Delphi,用于在ArcInfo 8或ArcView 8中对其Desktop(ArcMap和ArcCatalog)进行功能扩展,或直接在ArcObjects的基础上开发面向不同领域的独立与ArcInfo或ArcView的应用。e)4.2. 开发平台选择针对ArcInfo 8和ArcView 8的开发,其开发平台的选择是很灵活的。首先,VBA是最直接、最方便的选择。但VBA开发的功能模块不能独立于ArcInfo或ArcView这样的“属主”环境。也就是说,我们必须先启动ArcInfo或ArcView,然后才能运行那些用VBA扩展的功能。如果不用VBA,则可选择VB、VC+或Delphi中任意一种我们较为熟悉的开发平台,因为它们都支持基于COM的开发。通常,如果在开发过程中不需要定义新的数据类,并且不要求二次开发的系统完全独立于ArcInfo或ArcView运行,则可将扩展的功能编译成动态连接库(DLLs),在ArcInfo或ArcView中加载即可。这种方式,不但可以完成功能的扩展和定制,而且可以直接利用ArcInfo Desktop环境中已经实现的大量高级的功能,包括:数据管理、面向对象的数据编辑器、CASE工具支持、高级制图输出及所见即所得的符号生成工具等。用VB、VC+或Delphi在ArcObjects的基础上,可以开发出完全独立的应用来。只是这种方式相对于前面的所介绍的两种而言,所涉及的技术更底层一些,开发的投入相对会更大一些。事实上,ArcInfo和ArcView的Desktop(ArcMap、ArcCatalog)就是ESRI基于ArcObjects开发的一个较为通用的桌面应用平台。4.3. 计算机辅助软件工程(CASE)手段ArcGIS支持工业标准的计算机辅助软件工程(CASE)工具(如:Visio 2000 Enterprise),用于空间建模。通过CASE工具,可以用完全可视化的方法,定义或扩展新的空间数据对象。ArcCatalog中提供了根据CASE工具中对空间数据对象的扩展定义自动生成Geodatabase数据框架的工具,方便、准确、快捷。数据库框架可在主流的商业化DBMS平台上实现,如:Oracle、DB2、Informix、SQL Server等。5. 面向对象的空间数据模型GeodatabaseArcInfo 8中引入了全新的面向对象的数据模型,称为Geodatabase。定义这种新的数据模型的目的在于让用户可以通过在他的数据中加入其应用领域的方法或行为以及其他任意的关系和规则,使数据更具智能和面向领域应用。5.1. 什么是Geodatabase什么是Geodatabase呢?Geodatabase实际上可以看成是我们在系统中所处理和使用的所有空间数据的一个智能库。物理上,数据被存放在数据库管理系统(DBMS)中,其类型可以是各种各样的,包括:n Vectorn Topologyn Rastern Networksn Addressesn TINsn Relationships and Rulesn CADn Metadatan TablesGeodatabase数据模型使现实世界的空间数据对象与其逻辑数据模型更为接近。在geodatabase中,我们定义的不再是传统GIS对空间数据进行抽象后的“点”、“线”、“面”等简单空间要素,而是应用领域中熟悉的对象,如:杆塔、刀闸、电缆、道路、建筑、用地等。更重要的是geodatabase使我们不需要编写任何程序代码即可实现数据对象主要的操作行为。大多数的操作行为都可以通过对象值域(Domain)、子类型(Subtype)、规则等的定义以及ArcInfo提供的应用框架中丰富的其它功能来完成。对特殊应用中必须定义或扩展的空间对象,ArcInfo支持工业标准的统一建模语言(UML)和CASE工具(如:Visio 2000 Enterprise),通过CASE工具完成对数据对象的定义和扩展。5.2. 为什么采用Geodatabase 总的来说,因为geodatabase是面向对象的空间数据模型,同时,ArcInfo中提供了智能化的工具和CASE接口,供我们定义自己的数据对象,不但定义数据对象的空间几何特征,还可定义其规则、关系和操作行为。具体而言,Geodatabase可以为我们带来如下好处:a) 统一的空间数据智能库:系统中所有的空间数据都可以统一地在同一数据库中存放和管理。b) 数据的一致性得以保证:由于定义了规则和值域等,数据的录入和编辑都可以进行智能化的合法性校验,从而避免了数据的不一致性。c) 用户可以更直观地使用数据:Geodatabase中的数据对象与领域应用中实际的空间要素更为接近,用户不再是面对在其应用领域没有特定意义的点、线、面等抽象的东西,而是直接操作他所熟悉的对象,如:变压器、电杆、高压线、刀闸、人井、道路、湖泊等。d) 空间要素不再孤立存在:在Geodatabase中,我们可以定义对象与对象之间的关系。于是我们可以描述或定义对一个空间要素而言,如果与其相关的其它空间要素被移动、修改或删除时,对它会有何影响。这样,当我们移动一个电杆时,与其相连的电线就可以自动根据这种对象关系完成必要的移动,而无需人为干预。e) 可以更好地制图:借助Geodatabase数据模型,可以对空间要素的确绘制方法进行更多的控制。在ArcMap中,可以直接利用智能化的、复杂的制图方法。通过为空间数据对象的扩展编码,实现高度定制的绘制方法。f) 空间要素的几何形状可以更好地表示:Geodatabase中支持直线(段)、圆弧、椭圆弧及Bzier曲线等。g) 连续的空间数据集合:Geodatabase中表示大规模空间数据集合的方法是连续的,不需要对空间数据集进行分块或其它方式的切割,使逻辑模型和现实对象更加统一。h) 多用户并发操作:Geodatabase支持工作流访问模式,多个用户可以同时对同一区域中的空间要素进行编辑,通过版本管理(Versioning)解决可能的冲突以保障数据的一致性和安全性。5.3. Geodatabase对DBMS有何扩展?a) Geodatabase可以用四种方式表达空间数据:离散的对象表示为矢量要素,连续的对象表示为栅格,表面表示为TIN,地物定位参考表示为地址(locators and addresses)。b) Geodatabase提供定义和管理空间数据集合的地理坐标系的框架。c) Geodatabase可对空间上存在拓扑关联的空间数据进行空间建模,譬如:设施网络、交通网络等。d) Geodatabase可在空间数据对象间定义任意的关联关系。e) Geodatabase可定义空间数据对象的值域、子类和规则。f) Geodatabase可处理数据的多版本管理,以满足多用户并发的长事务处理需求。6. 高速空间数据库引擎ArcSDEArcSDE是一个基于关系型数据库基础上的地理数据库服务器,是对关系型数据库的一个扩展。他可以运行于Oracle、SQL Server、DB2、Informix等大型数据库之上。与数据库间形成了一种Client/Server三重体系结构。采用ArcSDE管理地理信息数据ArcGIS的共享,安全,和维护和数据处理能力方面大大超过老一代地理信息系统。6.1 ArcSDE是ArcGIS的专用的地理数据共享服务器采用数据库技术和Client/Server体系结构,地理数据以记录的形式存储,数据可以在整个网络上共享。要实现共享,必须解决并发访问冲突问题,与数据文件共享不同的是,数据记录由ArcSDE服务器端统一锁定,不会产生重复锁定或死锁。基于文件的数据共享要么依赖操作系统对文件的锁定功能,只能锁定整个数据集,降低了数据共享性,要么由客户端自己锁定,不能保证客户端遵循锁定规则,产生无效锁定,以及不能正常解锁产生死锁。使用这种共享机制,任何网络上的客户端都可以合法地共享数据。在网络上只需要集中维护一份数据,不会产生因为相同数据在不同地方修改不同步而导致无法使用的现象。使用ArcSDE可以实现数据管理的集中和分布,实现网络化的数据管理。可以根据各个部门数据需求分为一个或几个数据中心来集中或分布管理。由于采用数据库管理地理信息数据,地理信息和其他信息的数据管理方式一致起来,可以更大程度地实现地理信息系统应用和其他系统应用的集成。6.2 ArcSDE是一个高效的地理数据服务器利用了数据库的强大数据查询机制,ArcSDE可以实现在多用户条件下的高效并发访问。ArcSDE采用了与一般信息系统不一样的空间索引机制。我们知道地理信息的数据量是非常庞大的,但处理或分析数据时很少去针对整个数据集,对于整个数据集的处理实际上是无法加快速度的,这时本地文件系统可能比数据库效率更高。我们一般仅仅是对一个数据集的一个子集或一条记录进行操作。如我们大概不会在计算机上的屏幕上显示城市所有的建筑物,实际上那是没有任何意义的,你除了一片漆黑,什么也看不清,因为屏幕的分辨率和你的大脑的信息处理能力有限,你只能选择某一区域以合适比例显示出来。实际上我们看到空间位置是地理数据的关键的独一无二的索引方式。也就是说,通过ArcSDE的空间索引,我们可以在庞大的地理数据中,快速地查找出指定区域的数据子集,这就是ArcSDE与单纯数据库的最大的区别。另外ArcSDE对空间坐标采取了整数量化,和增量压缩存储和计算方式,减少浮点运算,磁盘存储和输入输出,这些也是ArcSDE可以快速地处理地理数据的原因。ArcSDE客户端API应用gsvrgiomgrArcSDE采用了Client/Server方式,在网络上传输的是操作请求和应答而不是整个原始数据,减少了网络的堵塞。ArcSDE是专门为多用户并发而设计的,采用了多线成的体系结构ArcSDE客户端API通过TCP/IP端口与服务器连接,请求打开一个数据流,ArcSDE服务器为此数据流启动另外一个进程提供数据服务,直到客户端关闭数据流。这样每个客户端不需要等待其它的客户端服务完成。6.3 ArcSDE可以管理海量的无缝地理数据由于数据库的的强大的数据处理能力加上ArcSDE独特的空间索引机制,每个数据集的数据量不再受到限制,ArcSDE可以处理海量的无缝地理数据,与传统的地理数据存储方式不一样的是,数据不用根据地理位置分割管理,用户和客户端只要指定数据的类型,而不需要指定所在的人为指定的图号。分块的数据管理在处理范围超出数据分割范围或不一致的情况下往往需要把数据下载。重新进行拼接处理,而这种情况是经常会发生的,所以这大大影响了系统的易用性和效率。实际上这种数据几乎是无法使用的。ArcSDE数据海量数据管理能力使数据的集中管理成为可能,降低了数据维护费用,大大推动了GIS的数据共享和应用。你将更有希望找到你所需要的,更详细的数据。6.4 ArcSDE是一个地理数据事务处理系统我们多次提到了数据共享和锁定,起目的是在数据冲突发生之前避免其发生,但从另一方面看给应用带来了很大的不便,实际上应用锁定了某些数据,对其中大部分数据并没有修改,或者修改了并没有产生冲突。一个事务处理过程周期只局限于客户端连接周期,一旦关闭连接事务必须提交。这很大程度限制了其应用。如我们可能会要求地理信息系统来回答诸如“万一.”,“昨天”的问题,我们是否需要对整个数据备份,然后修改数据回答“万一.”的问题,或每天把整个数据备份,以随时准备调入应付“昨天”的问题。如电力工程项目需要经过设计,我们需要分析新的工程项目会对电力系统产生什么样的影响,但又不能改变现有的运行系统数据。而且这个设计过程又很长。再如我们需要知道如果某一设备发生故障会连续造成什么损失,但不可能真的去毁掉此设备。这就需要系统有长事务处理的能力。ArcSDE通过版本管理技术解决了这一系列问题。数据库中可以存储多个版本的数据,但并非是简单的数据备份,它们仅仅记录数据版本的区别。版本之间是树型继承关系,各个版本可以独立编辑和运行。只有当一个版本向其父版本提交时才会产生冲突。这时系统可以采用交互的手段来解决这些冲突。要么采用本版本数据,要么冲突版本数据,要么采用冲突之前的数据。6.5 ArcSDE是一个安全的地理数据库ArcSDE采用了数据库技术,利用数据库的安全手段,你的地理数据将更安全,更有保障。通过对数据库的备份可以备份地理数据。你也可以通过ArcSDE的数据备份功能来备份ArcSDE的数据。ArcSDE的版本管理功能保证了系统可以随时恢复到定义过的数据版本上。在网络不采用文件系统共享数据,用户不能拷贝和删除数据集,只能通过连接来访问授权的数据,保证了数据访问的合法性。ArcSDE提供了一系列命令对这种访问授权操作,方便了授权管理。另外由于数据集中管理,保证了数据的一致性。另外ArcSDE是一个可扩展的系统,ArcGIS的GeoDatabase就是针对地理信息的的特点,对关系型数据库概念进行的面向目标的扩充。7. ArcGIS的网络模型及分析功能7.1. 几何网络和逻辑网络在ArcInfo中,一个网络可以由多个要素类(Feature class)组成。例如:在电力系统中,可以由电线、开关、保险丝和变压器等构成一个网络。因为要素具有几何形状并且可以显示,所以这种网络被称为几何网络(geometric network)。在一个几何网络中只能包含线要素和点要素。对于每一个几何网络,均对应一个逻辑网络,它是一个幕后的数据结构,存储边线和交点的连接关系。当一个几何网络被生成时,一个逻辑网络将自动被ARCINFO产生和维护。在我们进行网络流向分析时,将只涉及到逻辑网络。因此,了解几何网络要素和逻辑网络元素之间的对应关系,对于我们来说是非常重要的。几何网络的内容: 组织所有要素类,构成网络。 包括边线和交点要素。 在几何网络上进行编辑和显示。 包括所有属性、关系和有效性规则。逻辑网络的内容: 存储网络的连通性。 包括边线和交点元素。 开发网络分析程序将只涉及到逻辑网络。 逻辑网络由一些表(Table)组成,不包含几何信息。 当几何网络被修改后,逻辑网络自动被维护。7.2. 连通规则在很多网络中,不是所有类型的边线可以连接到所有类型的交点上。同样,不是所有类型的边线通过交点能够和其它类型的边线相接。例如,在配电网络中,高压线不能直接与中压线或低压线连接。在自来水网中,一个10英寸的主管可以通过一个减压器连接到一个8英寸的主管上。网络连通性规则能够设置相互连接的网络要素类型及可以与另一种要素连接的任一特定要素的数量。通过建立网络连通性规则及其它规则(例如,属性域),你可以维护数据库中网络数据的完整性。在任何时候,你都能够有选择地验证数据库中的要素,产生报告,指出网络中哪些要素违反连通性规则或者其它规则。(1) 边线-交点规则(Edge-junction rule)类型A的边线能够与类型B的交点相连接的关系。(2) 边线-边线规则(Edge-edge rule)类型A的边线能够通过类型C的交点与类型B的边线相连通的关系。边线-边线规则中总是包含一个交点类型。(3) 缺省的交点类型(Default junction type) 两种类型的边线可以通过多种类型的交点相连通。你能够确定哪种类型的交点为上述边线相接时的缺省交点。这种交点类型为缺省的交点类型。(4) 边线-交点连接度(Edge-junction cardinality) 可以存在一种规则,允许类型A的边线连接到类型B的交点上。缺省情况下,类型A任何数量的边线可以连接到同一类型B的交点上。你可能需要限制这种情况。你能够指定2至5条类型A的边线能够连接到类型B的交点上,但是如果少于两条边线或者多于5条边线与该交点相接,将违反连通性规则。同样地,你能够限制与任一个类型D的交点相连的类型C的交点的数量。7.3. 分析功能7.3.1. 追踪(Tracing)追踪是指在网络中沿着或者逆着流向前进,直到一种情况发生为止。例如,逆着电流方向找到一个变压器,或者向上追踪发现所有阀门。障碍能够影响追踪结果,例如:向上追踪时,遇到障碍该方向的追踪将停止。因此,在给水网络中,你可以用障碍代表阀门,确定关闭这些阀门后哪些管线将停水。 逆向追踪从一个网络标识(Netflag)开始,逆着网络流向进行追踪。当遇到障碍、终点及Disabled状态的网络元素时,追踪停止。 顺流追踪从一个网络
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 2025福建宁德市建周建材有限公司招聘4人笔试历年参考题库附带答案详解
- 2025福建南平闽延电力建设公司招聘3人笔试历年参考题库附带答案详解
- 2025甘肃定西市陇西县人力资源有限公司招聘工作人员4人笔试历年参考题库附带答案详解
- 2025湖南冷链物流集团招聘法务主管1名笔试历年参考题库附带答案详解
- 2025年西安市工业合作联社下属企业招聘笔试笔试历年参考题库附带答案详解
- 2025年湖南邵阳市新宁县城乡建设发展集团有限公司招聘拟聘人员笔试历年参考题库附带答案详解
- 2025北京国际大数据交易所有限责任公司招聘笔试历年参考题库附带答案详解
- 2025中国电信股份有限公司淮南分公司实习生招募80人笔试历年参考题库附带答案详解
- 2025哈尔滨“丁香人才周”(春季)引才现场招聘活动模拟试卷及答案详解(典优)
- 2025年合肥滨投文化创意发展有限公司招聘3人考前自测高频考点模拟试题及参考答案详解1套
- 2025年一卷政治高考真题及答案
- 安静与智慧主题班会课件
- 云南民族大学附属高级中学2026届高三上学期联考(一)生物试卷(含答案)
- 2025至2030年中国包月视频点播行业市场竞争格局分析及投资方向研究报告
- 皮带机安全知识培训
- 零星维修工程施工组织设计方案方案
- 2025年汽车驾驶员(技师)考试试题及答案(含答案)
- 2025大连国际机场招聘25人笔试历年参考题库附带答案详解
- 2025年浙江铁塔招聘笔试备考题库(带答案详解)
- 2025年上海市(秋季)高考语文真题详解
- 《秘书文档管理第三版》课件第七章
评论
0/150
提交评论