配色: 字号:
ArcGIS中文基础教程-92a128eb551810a6f52486b4
2021-10-26 | 阅:  转:  |  分享 
  
第一章GIS的概念和需求

理解GIS的三种角度:

GIS是一个用于管理、分析和显示地理信息的系统。地理信息可以通过一系列地理数据集来表达。而地理数据集则通过使用简单的,普通数据结构来为地理信息建模。GIS包含了一套用以处理地理数据的综合工具。

我们可以从多个角度来理解地理信息系统是如何工作于地理信息的:



2.从空间可视化的角度看:GIS是一套智能地图,同时也是用于显示地表上的要素和要素间关系的视图。底层的地理信息可以用各种地图的方式进行表达,而这些表现方式可以被构建成“数据库的窗口”,来支持查询、分析和信息编辑。

3.从空间处理的角度看:GIS是一套用来从现有的数据集获取新数据集的信息转换工具。这些空间处理功能从已有数据集提取信息,然后进行分析,最终将结果导入到数据集中。

这三种观点在ESRIArcGIS中分别用ArcCatalog(GIS是一套地理数据集的观点)、ArcMap(GIS是一幅智能的地图)和ArcToolbox(GIS是一套空间处理工具)来表达。这三部分是组成一个完整GIS的关键内容,并被用于所有GIS应用中的各个层面。

从空间数据库的角度:

GIS是世界上独一无二的一种数据库――空间数据库(Geodatabase)。它是一个“用于地理的信息系统”。从根本上说,GIS是基于一种使用地理术语来描述世界的结构化数据库

这里我们来回顾一些在空间数据库中重要的基本原理。

地理表现形式



每个GIS数据集都提供了对世界某一方面的空间表达,包括:

基于矢量的要素(点、线和多边形)的有序集合



诸如数字高程模型和影像的栅格数据集



网络



地形和其它地表



测量数据集



其他类型数据,诸如地址、地名和制图信息



描述性的属性





空间关系:

拓扑和网络空间关系,比如拓扑和网络,也是一个GIS数据库的重要部分。使用拓扑是为了管理要素间的共同边界、定义和维护数据的一致性法则,以及支持拓扑查询和漫游(比如,确定要素的邻接性和连接性)。拓扑也用于支持复杂的编辑,和从非结构化的几何图形来构建要素(例如,用线来构建多边形)。

地理要素共享几何形状。可以使用节点、边、面的关系来描述要素的几何形状

网络是描述一个能够相互贯通的GIS对象相连的图。这对于模拟路径和交通、管线、设备、水文学以及其它基于网络的应用非常重要。

在这个网络示例中,街道要素代表连接它们的端点(称为“连接”)的边。转向模型可用于控制从一边到另一边的通行能力

:

GIS将空间数据组织成一系列的专题图层和表格。由于GIS中的空间数据集具有地理参考,因此它们具有现实世界的位置信息并互相叠加。

GIS集成了多种类型的空间数据

在一个GIS中,同类型的地理对象集合被组织成图层,例如地块、水井、建筑物、正射影像以及基于栅格的数字高程模型(DEM)。明确定义的地理数据集对于一个实用的地理信息系统是相当重要的,同时专题信息集合使用层来组织,这样的思想也是GIS数据集一个关键的思想。

数据集可以用于表达:



经过解译的信息

通过空间分析和建模处理而得来的数据

通过层之间共同的地理位置,我们可以很容易地得到多个层之间的空间关系。

GIS使用普通的对象类来管理这些简单的图层,同时凭借一套功能丰富的工具获取数据层之间的关键联系。

GIS会使用通常是来自不同组织机构,并且具有各种表现方式的大量数据集。因此对于GIS数据集很重要的是:



易于同其他的地理数据集结合使用

能够被有效地编辑与校验

能够形成具有内容详实,使用和目标描述明确的清晰文档

任何的GIS数据库或者用基于文件的数据组织方式都遵循这些共同的原则与概念。每个GIS都需要有一个机制依据这些原则来描述地理数据,并且通过一套综合的工具来使用和管理此信息。从空间可视化的角度:



GIS使用包括交互式的地图和其它视图来对地理数据集进行操作。地图为人们如何方便地、交互地使用地理信息提供了一个强有力的途径。对于大多数的GIS应用来说,交互式地图提供了主要的用户界面,并且在不同级别的应用中――从手持移动设备的到基于浏览器的网络绘图以至高端的桌面GIS,都可以看到交互式地图的应用。

GIS地图类似于静态的、打印出来的地图,所不同的是你能够交互地使用它们。你可以方便地漫游、缩放一幅交互式地图,可以让某些图层在适合的比例尺下自动显示或关闭。你可以基于任意的属性给一个图层设置符号。例如,你可以根据地块的类型给它们施以不同的颜色,或者根据水井的水量给代表水井的点设置不同尺寸的符号。你也可以在一幅交互式地图中指定地理对象来获取更多的关于这个对象的信息,并执行空间查询和分析。例如,你可以找到学校附近200米以内的所有特定类型的商店,或者找到选定的道路500以内的所有沼泽地。此外,大部分的GIS用户是通过交互式的地图来编辑空间数据的。



地图用以表达地理信息,执行大量基于地图的任务,包括高级的数据编辑、制图、分析、查询和外业数据采集



开发人员经常嵌入地图到定制的应用中,许多用户也为某种GIS应用在Internet上发布Web上使用的地图。

按照时间顺序模拟台风的轨迹

使用图解显示输气管道

在用户开发的应用中嵌入地图

使用ArcGlobe显示珠穆朗玛峰的登山路线

以上四个例子分别为在追踪分析(TrackingAnalyst)中显示基于时间的信息(此信息可以被记录为事件),ArcGISSchematics的例子,使用MapControl控件实现地块搜索的陷入式开发应用的例子和一个ArcGlobe显示的效果。

从空间处理的角度:

从另外一个角度来看GIS是一系列地理数据集的和应用于这些数据集的操作工具。地理数据集可以是原始的量测(比如卫星图像),被分析者解析和编译出来的信息(例如道路,建筑物,土地类型),或者使用分析和模型运算从其他数据源中得来的信息。空间处理指的是用来生成派生数据集的工具和处理过程。

GIS包括了一套丰富的工具来处理和作用于地理信息。这一工具集通常被用来操作GIS信息对象比如数据集,属性字段,以及地图打印用的制图元素。这些综合的命令和数据对象结合在一起就构成了空间处理框架的基础。

数据+工具=新的数据





一个完整的GIS包括常规的信息和一组丰富的用于处理信息的GIS操作。例如,ArcGIS拥有一套丰富的语言,以及上千个应用于各种GIS数据类型的操作工具

空间处理过程



用来建立空间处理流程的一种途径就是按照一定的顺序来执行一些命令。用户可以在ArcGIS中使用ModelBuilder通过图形的方式编写这样的过程,他们也可以使用先进的脚本编辑工具比如Python,VbScript,和JavaScript来写脚本。

空间处理实际上可以在GIS的所有方面都加以应用,如数据的自动化生成和编辑,数据的管理,分析和建模以及高级制图。

在一个空间处理框架中,GIS包含一组工具和可以被处理的数据类型。在ArcGIS中可以创建,执行和共享这些多步骤的空间处理操作

数据编辑



分析和建模



为适宜性,可行性,预测和选择评估而建立的模型

整合GIS外部模型

模型共享



在一个组织内可被共享的通用模型



在所有的GIS应用中,管理GIS的数据流是非常重要的。GIS用户应用空间处理的功能从数据集中导入导出数据,以多种格式发布数据,如地理标记语言(GML)规范,连接相邻的数据集,更新GIS数据库的结构以及在数据库中执行批处理。



合并已有数据,创建新数据

制图

高级空间处理工具可以被用来获得多比例的地图,完成地图综合操作以及为打印高质量的地图产品自动执行许多绘图QA/QC工作流程。

GIS信息管理:



GIS数据是复杂的



GIS数据编辑是高级而专业的工作



一个地理信息系统是事务性的



和在其他的数据库管理系统一样,许多的数据更新通常会应用于GIS数据库。因此GIS数据库,和其他的数据库一样,必须支持更新事务。但是,GIS用户有一些特殊的事务需求。这里有一个主要的概念就是长事务。

在GIS中,一个单一的编辑操作能涉及到多个表格中的多行的变化。在用户提交之前,需要能做undo和redo的操作。编辑会话能维持几个小时甚至几天。

在许多情况下,对数据库的更新过程需要经过一系列的阶段。例如公用设施管理行业中,通常的工作阶段包括“设计”,“已提交”,“认可”,“在建”和“建成”。这个进程从根本上说是可以循环的。工作流程产生以后,分配给工程师,然后随着时间的进展从一个阶段到另一个阶段进行,最后,这些改变被“提交”,或者回复到原有的共享数据库状态。

GIS工作流程可以持续几天几个月。然而GIS数据库仍然需要持续的支持日常的操作。其他的用户对共享的数据库可能需要形成各自的数据浏览视图和数据库状态。

其他的一些GIS数据工作流程例子包括:



分布式地理数据库:一个区域数据库可能是一个中心数据库中某一地理区域的一部分。这区域数据库和中心数据库必须定期同步交换变化的部分。

分布式数据库交换更新内容



GIS与生俱来就是一个分布式信息系统



互操作性



GIS网络



Web的节点被称作GIS目录的门户,可以实现用户注册,数据发现,地理信息的获取及使用等功能。这样产生的结果是GIS系统越来越多的连接在万维网(WorldWideWeb)以实现信息的共享和使用。

这种情形已经存在了十多年了,并已经被描述成一个国家空间数据基础设施(NSDI)或者全球空间数据基础设施(GSDI)。这些概念不仅在国家和全球这种级别,在省级或者地方政府机构中也有广泛的应用。这种思想的集合被称作为空间数据基础设施(SDI)。

GIS网络是一个SDI的应用,是一个在WWW网络上发布,搜索和使用共享地理信息的用户站点的集合。

地理信息的本质是分布式的和松散集成的。极少情况下是所有的信息都存在一个单一数据结构的数据库实例中。GIS用户互相需要对方的部分GIS数据,GIS网络使得用户可以互相交流和共享各自的地理知识和数据。

GIS网络有三个关键部分:

GIS信息

GIS节点――用户编辑和发布地理信息集的位置

GIS用户――搜索,查询,连接和使用已发布的GIS

GIS网络中的三个关键部分

GIS目录的门户



这种GIS目录门户是一个Web站点,在这里,GIS用户可以搜索并查到与其应用相关的GIS信息。同样的这个门户也依赖于发布GIS数据服务,地图服务和元数据服务的网络。一个GIS目录门户站点会定期从众多站点中获取目录列表,这些站点参与发布一个中心GIS目录。这样一个GIS目录既可以为本站点也可以为其它站点的数据资源进行注释和说明。可以想象的出,一系列GIS的目录节点即可以形成空间数据基础设施的一个网络。



在GIS目录门户站点,GIS数据和服务被记录在目录中,这样用户可以从中搜索并查找不同GIS应用所需要的数据资源





Geodata.gov是美国国家空间数据基础设施中的一个节点



存储和管理所有的地理对象的空间数据库

为分布地理信息提供管理和共享能力的基于Web的网络



数据编辑

信息查询

空间分析和空间处理

制图作业

图像可视化和管理

GIS数据管理

Modularsoftwarecomponents(engines)toembedGIS

logicinotherapplicationsandbuildcustom

applications

GIS逻辑的组件(引擎)



为实现GIS需求而设计的一个全面的GIS平台



GIS是不断发展的:

在GIS发展的早期,专业人士主要关注于数据编辑或者集中于应用工程,以及主要把精力花费在创建GIS数据库并构造地理信息和知识。慢慢的,GIS的专业人士开始在大量的GIS应用中使用这些知识信息库。用户应用功能全面的GIS工作站来编辑地理数据集,建立数据编辑和质量控制的工作流,创建地图和分析模型并将这些工作和方法记录成文档。

这加强了GIS用户的传统观念,这些用户往往拥有连接在数据集和数据库上的专业工作站。这种工作站拥有复杂的GIS应用以及用来实现几乎所有GIS任务的逻辑和工具。



近期Internet的发展,DBMS技术的长足进步,面向对象编程语言,移动设备以及GIS的广泛使用已经促使GIS有更加开阔的前景和发挥更加重要的作用

除了GIS桌面产品,GIS软件可以被集中在应用服务器上和Web服务器上,把GIS的功能通过网络传递给任意多的用户;可以集中一些GIS逻辑,将其嵌入和部署在用户定制的应用中;为野外GIS业务在移动设备上部署GIS软件的应用也多了起来。

企业GIS用户使用传统高级的GIS桌面软件,使用Web浏览器,专门的应用程序移动计算设备以及其它数字化设备连接中心GIS服务器。GIS平台涉及的范围在不断的扩展。

ArcGIS产品线正是为满足这种需求的发展而产生,从而为用户提供一个可伸缩的,全面的GIS平台,下面的框图对此进行了说明。



使用ArcGIS满足GIS用户所有的需求



ArcGISDesktop――一个专业GIS应用的完整套件

ArcGISEngine――为定制开发GIS应用的嵌入式开发组件

服务端GIS――ArcSDE?,ArcIMS?和ArcGISServer

移动GIS――ArcPad?以及为平板电脑使用的ArcGISDesktop和Engine



ArcObjects包含了大量的可编程组件,从细粒度的对象(例如,单个的几何对象)到粗粒度的对象(例如与现有ArcMap文档交互的地图对象)涉及面极广,这些对象为开发者集成了全面的GIS功能。每一个使用ArcObjects建成的ArcGIS产品都为开发者提供了一个应用开发的容器,包括桌面GIS(ArcGISDesktop),嵌入式GIS(ArcGISEngine)以及服务端GIS(ArcGISServer)。关于ArcObjects开发的更详细的信息可以在http://arcgisdeveloperonline.esri.com中找到。

桌面GIS



ArcGISDesktop是一个集成了众多高级GIS应用的软件套件,它包含了一套带有用户界面组件的Windows桌面应用(例如,ArcMap,ArcCatalogTM,ArcTooboxTM以及ArcGlobe)。ArcGISDesktop具有三种功能级别――ArcView?,ArcEditorTM和ArcInfoTM,都可以使用各自软件包中包含的ArcGISDesktop开发包进行客户化和扩展。

关于ArcGISDesktop的更多的信息请参考第四章“桌面GIS:ArcView,ArcEditor,ArcInfo”。



上面的图形展示了使用ArcGISDesktop的应用实例

服务端GIS

GIS用户通过部署一个集中式的GIS服务器在大型组织之内以及Internet的用户之间发布和共享地理信息。服务端的GIS软件适用于任何集中执行GIS计算,并计划扩展支持GIS数据管理和空间处理的场合。除了为客户端提供地图和数据服务,GIS服务器还在一个共享的中心服务器上支持GIS工作站的所有功能,包括制图,空间分析,复杂空间查询,高级数据编辑,分布式数据管理,批量空间处理,空间几何完整性规则的实施等等。

ArcGIS服务器产品符合信息技术的标准规范,可以和其它企业级的软件完美的合作,例如Web服务器,数据库管理系统(DBMS)以及企业级的应用开发框架包括.NET和JAVA2企业级平台(J2EE)。这促使了GIS和其它大量的信息系统技术的整合。

ArcGIS9所包含的三种服务端产品:

ArcSDE――一个在多种关系型数据库管理系统中管理地理信息的高级空间数据服务器。ArcSDE是一个位于ArcGIS其它软件产品和关系型数据库之间的数据服务器,其广泛的应用使得在跨任何网络的多个用户群体中共享空间数据库以及在任意大小的数据级别中伸缩成为可能。

ArcIMS――是一个可伸缩的,通过开放的Internet协议进行GIS地图,数据和元数据发布的地图服务器。ArcIMS已经在成千上万的应用中部署了,主要是为Web上的用户提供数据分发服务和地图服务。

ArcGIS

要了解关于ArcGIS9服务器产品的更多信息,请参考第五章,“服务端GIS:ArcSDE,ArcIMS和ArcGISServer”。

GIS将会利用Internet不断成长,并取得进一步的成功。Internet技术的不断发展,如Webservices,为GIS用户共享,地理信息的服务以及跨组织的GIS互联提供了坚实的保障。

嵌入式GIS



ArcGISEngine提供了一套应用于ArcGISDesktop应用框架之外(例如制图对象作为ArcGISEngine的一部分,而不是ArcMap的一部分)的嵌入式ArcGIS组件。使用ArcGISEngine,开发者在C++,COM,.NET和Java环境中使用简单的接口获取任意GIS功能的组合来构建专门的GIS应用解决方案。

开发者通过ArcGISEngine构建完整的客户化应用或者在现存的应用中(例如微软的Word或者Excel)嵌入GIS逻辑来部署定制的GIS应用,为多个用户分发面向GIS的解决方案。



使用ArcGISEngine将GIS嵌入到你的应用中

移动GIS



一些野外工作任务需要相对简单的GIS工具,但也有些工作涉及到需要高级GIS工具的复杂操作。ArcGIS包含了能够满足两方面需求的应用。ArcPad是ArcGIS实现移动GIS和野外计算(如需要记录和登记突发性事故的空间信息)的解决方案,这些类型的工作可以在手持计算机设备(运行MicrosoftWindows?CE或者PocketPC)或者平板电脑上完成。ArcGISDesktop和ArcGISEngine集中于需要GIS分析和决策分析的野外工作任务,这种典型的任务往往在高端平板电脑上执行。

要更多的了解移动GIS的信息,请参考第七章“移动GIS:ArcPad及设备”。

你可以在野外实现GIS

空间数据库(Geodatabase)



Geodatabase是一套获取和管理GIS数据的全面的应用逻辑和工具。无论是客户端的应用(如ArcGISDesktop),服务器配置(如ArcGISServer),还是嵌入式的定制开发(ArcGISEngine)都可以获取geodatabase的应用逻辑。

Geodatabase是一个基于GIS和DBMS标准的物理数据存储库,可以应用于多用户访问,个人DBMS以及XML。

Geodatabase原本被设计成一个开放的,简单几何图形的存储模型。Geodatabase对众多的存储机制开放,包括DBMS存储,文件型存储或者XML方法存储,并不局限于某个DBMS的供应商。

要更多的了解关于geodatabase的信息,请参考第三章“在geodatabase中的GIS数据概念”。



Geodatase是一个简单的几何存储模型



ArcGIS支持文件和数据库中的GIS数据

ArcGIS很大的一个优点是可以使用任何格式的GIS数据,并且可以同时访问多个数据库和文件。

ArcGIS用一个高级的通用的地理数据模型来表示空间信息,包括空间要素,遥感数据以及其他的空间数据类型。ArcGIS同时支持基于文件的空间数据类型和基于数据库的空间数据类型。



表1 基于文件的空间数据 Coverages Oracle Shapefiles OraclewithSpatial Grids DB2withitsSpatialType TINs InformixwithitsSpatialType Images(各种格式的) SQLServer VectorProductFormat(VPF)files PersonalGeodatabases(微软的Access) CAD文件 表(各种格式的) ? 表1是一些ArcGISGIS数据也可以在Web上通过XML和WebGeodatabaseXML,ArcXML,SOAP,WMS,WFS等。



什么是GEODATABASE?

Geodatabase是一种采用标准关系数据库技术来表现地理信息的数据模型。Geodatabase支持在标准的数据库管理系统(DBMS)表中存储和管理地理信息。

Geodatabase支持多种DBMS结构和多用户访问,且大小可伸缩。从基于MicrosoftJetEngine的小型单用户数据库,到工作组,部门和企业级的多用户数据库,Geodatabase都支持。目前有两种geodatabase结构:个人Geodatabase和多用户Geodatabase(multiusergeodatabase)。

个人Geodatabase,对于ArcGIS用户是免费的,它使用MicrosoftJetEngine数据文件结构,将GIS数据存储在小型数据库中。个人geodatabase更像基于文件的工作空间,数据库存储量最大为2GB。个人geodatabase使用微软的Access数据库来存储属性表。

对于小型的GIS项目和工作组来说,个人Geodatabase是非常理想的工具。通常,GIS用户采用多用户Geodatabase来存储和并发访问数据。个人Geodatabase支持单用户编辑,不支持版本管理。

多用户Geodatabase通过ArcSDE支持多种数据库平台,包括IBMDB2,Informix,Oracle(有或没有OracleSpatial都可以)和SQLServer。多用户Geodatabase使用范围很广,主要用于工作组、部门和企业,利用底层DBMS结构的优点实现以下功能:



2.多用户的并发访问;

3.长事务和版本管理的工作流。

基于数据库的geodatabases可以支持海量数据以及多用户并发。在众多的geodatabase实现中,空间地理数据一般存放在大型的binaryobject中,ESRI发现插入和取出这样的大对象,关系数据库是非常高效的。而且,GIS数据库的容量和支持的用户数远大于文件的存储形式。

Geodatabase DBMS 注释 个人geodatabase MicrosoftJetEngine(Access)

2GB大小限制

不支持版本管理 多用户,版本管理geodatabase Oracle

Oracle

IBMDB2

IBMInformix

MicrosoftSQLServer 需要ArcSDE

多用户编辑

基于版本管理的工作流

数据库大小和用户数限制依赖于数据库 ?

表2:个人和多用户geodatabase总结

要素

矢量要素(即用矢量表示的地理对象)是常用的地理数据类型,非常适合表现边界不连续的要素,如井,街道,河流,省和地块等。要素就是带有位置属性的对象。通常,要素由点、线、多边形或者注记来表示。同类型要素的集合叫做要素类,集合中的要素具有相同的空间表达和属性集合(如表示道路的线性要素类)。

常用的矢量要素

栅格

栅格数据用来代表连续的层,包括等高线,坡度,温度数据,降雨量等。航拍照片和各种图像一般都用栅格存储。

用栅格数据集存储图像数据

除了栅格数据和矢量数据,其他类型的空间数据也可以存放在关系表中,这样通过DBMS可以管理所有的地理数据。



Geodatabase用于管理和存储多种地理信息类型的集合

数据库的关键概念



数据存放在表中;

表包含了记录;

所有表中记录包含了相同的列;

每个列都有数据类型,例如Integer,Decimalnumber,Character,Date等

关系用于关联一个表的记录与另外一个表的记录,一般通过表中相同的列来进行,这两个列被称为主键和外键。

基于表的数据集具有相关的完整性规则。例如,每个记录具有相同的列,而域列出该列合法的值的集合或范围。

具有一系列函数和操作符,称作SQL,来对表和数据进行操作

SQL操作符用来对常规的关系数据库的数据类型进行操作,如Integer,Decimalnumber,Character等。



largeobject),或者一些DBMS扩展的空间类型,比如Oracle空间扩展模块提供的空间数据的存储类型。

SQL可以操作表中的行,列和类型。列类型(数值型,字符型,日期型等)是SQL代数中的对象。

DBMS管理这些简单数据类型和表,同时其他的应用逻辑实现更复杂的对象行为和完整性约束。开发者可以通过编写代码为对象添加行为和逻辑来实现更高级的对象。

如,一个组织机构实现一个命名为EMPLOYEES的表:

姓 名 入司时间 收入 Crosier James 10-10-98 10,000 Clark Rosemary 03-12-95 55,000 Brown Pete 06-12-89 23,000 一个简单的包含行和列的关系数据表。每列都有特定的数据类型,如字符,日期和带两位小数的数值型。



类似的业务对象在GIS中也被普遍应用。如要素类,拓扑,网络,线性参考系统,影像目录(rastercatalogs),尺寸,注记,地表等等都是高级对象的例子,他们在DBMS中存储的简单空间信息的基础之上实现了特定的GIS行为。GIS应用中,只含有空间信息属性的表是不够的。简单DBMS关系对象和应用对象对构建信息系统来说都是必须的。需要强调的概念是:在DBMS的应用中,高级对象普遍通过应用逻辑被使用。

应用逻辑的实现



用DBMS的存储过程或者数据库的触发器实现;



一个单独的应用层作用于表中的行和列。

在过去的二十年中,无数的DBMS应用证明了应用层的方式在实现高级应用方面具有压倒性的优势,比如在广泛使用的所有CIS(customerinformationsystems),ERP(enterpriseresourceplanning)和财务管理系统中,在应用层实现高级的应用逻辑带来了更多的开放性,扩展性,更高的性能,更丰富的工具集和灵活性。

Geodatabase也使用了相同的多层架构,它在管理GIS对象的DBMS之上的应用层实现高级逻辑和行为。

Geodatabase在DBMS之上的应用层实现高级的逻辑和行为

Geodatabase的体系结构

GIS软件和数据库共同完成地理数据的管理。某些数据管理,如磁盘存储,属性数据类型的定义,联和查询和多用户的事务处理都是由数据库完成的。GIS应用软件则通过定义DBMS表,用来表示各种地理数据和特定领域内的逻辑,以及维护数据的完整性和实用性。

实际上,DBMS是专门用来存放地理数据的,而完全不是用来定义地理数据的行为的。这是一个多层的结构(应用和存储),数据的存取是通过存储层(DBMS),由简单表来实现,而高级的数据完整性维护和信息处理的功能是在应用层软件(GIS)完成的。

Geodatabase的实现也使用了和其他高级DBMS应用相同的多层结构。Geodatabase对象作为具有唯一标识的表中的记录进行存储,其行为通过Geodatabase应用逻辑来实现。

Geodatabase的体系结构基于简单的关系型存储和复杂的应用逻辑

Geodatabase的核心是标准的(不是特殊的)关系数据库模式(一组标准的DBMS表,字段类型,索引等等)。数据的存储由应用层的高级应用程序对象协调和控制(可以是ArcGIS客户端或ArcGISServer)。这些geodatabase对象定义了通用的GIS信息模型,可以在所有的ArcGIS应用和用户中使用。

Geodatabase对象的作用就是向用户提供一个高级的GIS信息模型,而模型的数据以多种方式进行存储,可以存储在标准的DBMS的表中,或者文件系统中,也可以是XML流。

所有的ArcGIS应用程序都与geodatabase的GIS对象模型进行交互,而不是直接用SQL语句对后台的DBMS实例进行操作。Geodatabase软件组件实现了通用模型中的行为和完整性规则,并且将数据请求转换成对相应的物理数据库的操作。



geodatabase逻辑层和存储层的分开使得geodatabaseXML

Geodatabase在RDBMS中的存储



Geodatabase的模式包括地理数据的定义、完整性规则和行为,比如要素类的属性,拓扑,网络,影像目录,关系,域等。模式由DBMS中一组定义地理信息完整性和行为的Geodatabase的元数据表(metatable)来维护。

SQL可以操作表中的行,列和类型。列类型(数值型,字符型,日期型等)是SQL代数中的对象。

空间数据一般存储为矢量要素和栅格数据,以及传统意义上属性表。比如:一个DBMS表可以用来存放一个要素的集合,表中的每行可以用来保存一个要素。每行中的shape字段存储要素的空间几何或形状信息。shape字段的类型一般分为两种:

BLOB

DBMS支持的空间类型

相似的要素的集合(具有相同的空间类型(如点,线或多边形),加上相同的一组属性字段)由一个单一的表来管理,称为要素类。



不同的数据库中存储矢量和栅格数据的字段类型是不同的。如果DBMS支持空间扩展类型,Geodatabase可以直接使用这些类型存储空间数据。作为SQL3MMSpatial和OGC简单要素SQL规范的主要作者,ESRI一直致力于将SQL向空间化方向扩展,重点是支持在标准的DBMS和独立的OracleSpatial中存储Geodatabase。



Geodatabase实现在关系型数据库中存储地理数据。在标准的DBMS表中用标准的SQL数据类型存储和管理所有的地理元素。图中列出了用于开发地理数据模型的一些Geodatabase的结构元素。?

Geodatabase的版本管理和分布式的工作流

GIS数据,和其他的数据一样,需要不断地进行维护和编辑更新。所以,Geodatabase被设计为可以支持事务处理。Geodatabase可以同时被多用户编辑,支持大数据量的连续存储,符合大部分GIS应用程序的需要。

GIS数据处理流程和数据共享机制需要一个长事务处理模型,以完成大量的修改和数据复制。在GIS中,一个编辑过程常包含多次数据处理的过程,这些过程可以定义成一个事务。比如:一个土地利用层中的“多边形的切割”,包括三个步骤:删除原有的多边形,添加两个新多边形,并且更新土地拥有者和税务的信息。这个geodatabase的更新事务其实包括了传统RDBMS(关系数据库管理系统)中的三个事务。另外,GIS用户也需要做到:

在编辑会话中可以UNDO-REDO编辑操作

为更新的要素建立历史档案——如,已注销的地块及其变化。

在多用户数据库中,GIS的事务处理必须基于DBMS的短事务处理。ArcSDE实现了将高级复杂的GIS事务处理映射到DBMS的事务处理上面。

在很多场合下,长事务处理是非常重要的。长事务处理可以通过多用户的DBMS和ArcSDE来实现:



2.多用户编辑—多用户编辑可能需要对某个空间要素进行同时更新。每个用户需要对其自己的数据库状态进行编辑,查看,而不需要看到其他用户的数据库状态。最后,每个用户需要把更新提交,并且解决和其他用户的编辑冲突的情况。

3.Check-out,Check-in的事务处理—用户经常会从一个很大的geodatabase数据库中取出一部分区域的数据,在一个离线编辑会话中进行更新,这些更新可能会持续几天或几个星期,最后用户把更新提交到主数据库。或者,用户会取出geodatabase中的一部分,在野外使用设备进行校验和更新。

4.历史数据—虽然所有的版本已经被更新,用户还可能需要维护每个要素的历史数据。他们需要维护一个已经废弃的要素,或者称为历史数据库。用户也可以跟踪单个要素的历史(比如全国地图中地块的变更和要素属性的更新)。

5.传送改变的数据—一个GIS基础数据可能有很多人在编辑,他们很有可能需要通过互联网,以已经定义好的XML模式在数据库之间共享这些更新。这些数据库可以具有不同的GIS架构。

6.分布式地理数据库—一个区域数据库可以是主GIS数据库中某个特殊地理区域的备份。一定周期内,这两个数据库中进行GIS数据的同步和更新。这些DBMS可以是不同类型的,如SQLServer,Oracle或IBMDB2。

什么是版本:

Geodatabase可以通过维护geodatabase的状态来实现这些GIS工作流,重要的是,同时需要维护GIS数据库中的数据完整性。管理、查看多个状态是基于版本管理实现的。当修改、添加或注销要素或对象时,他们的不同状态都作为版本记录下来。一个版本把要素或对象的每个状态和重要的事务信息都写为表中的一条记录。

版本把数据的改变存放在变化表中,一个Adds表和一个Deletes表。通过简单查询语句来浏览和编辑不同数据库状态——比如,及时查看某个点在数据库中的状态,或者看到某个用户编辑后的版本。

ArcSDE处理版本管理的核心任务,进而完成在异构系统和不同DBMS中实现长事务处理。

版本清楚地记录了geodatabase的对象状态

GeodatabaseXML是ESRI用来在Geodatabase数据和外部数据之间进行数据交换的机制。ESRI公开了整个geodatabase数据内容和模式的XML规范,并且提供了例子演示如何在不同的系统之间共享这些数据或者数据的变化。

通过GeodatabaseXML规范使通过XML交换空间数据简单化。外部程序可以接收以下形式的XML数据流:



2.交换一个要素类(很像交换一个shapefile);

3.交换变化的数据;

4、在ArcGIS用户间交换和共享全部或部分的geodatabase模式

第四章桌面GIS产品:ArcView,ArcEditor和ArcInfo

什么是ArcGISDesktop

ArcGIS桌面产品(ArcGISDesktop)是一系列整合的应用程序的总称,包括ArcCatalog,ArcMap,ArcGlobe,ArcToolbox和ModelBuilder。通过协调一致地调用应用和界面,你可以实现任何从简单到复杂的GIS任务,包括制图,地理分析,数据编辑,数据管理,可视化和空间处理。

ArcGISDesktop是可以满足各种类型用户的可伸缩的产品。从功能上讲,它可以分为三个层次:



ArcEditor增加了高级的地理编辑和数据的创建。

ArcInfo是GISdesktop的旗舰,包含复杂GIS的功能和丰富的空间处理工具。

ESRI和其他一些组织为这三个层次产品都提供了一系列的ArcGISDesktop的扩展模块。用户也可以通过对ArcObjects(ArcGIS软件的组件库)的编程为ArcGISDesktop开发自定义的扩展。用户可以采用标准的Windows编程界面如VisualBasic,.NET,Java和VisualC++来开发扩展模块和自定义的工具。

ArcCatalog是管理空间数据存储和数据库设计,以及进行元数据的记录,预览和管理的应用程序

ArcMap用来浏览、编辑地图,以及基于地图的分析



嵌入到ArcGISDesktop环境中的ArcToolbox和模型编辑器(ModelBuilder),具有空间处理(Geoprocessing)和空间分析的功能

ArcGlobe是ArcGISDesktop的3D分析扩展模块的一部分,提供对海量地理数据的交互式浏览?

ArcMap



ArcMap提供两种类型的地图视图:地理数据视图和地图布局视图。在地理数据视图中,你能对地理图层进行符号化显示、分析和编辑GIS数据集。内容表界面(TableOfContents)帮助你组织和控制数据框中GIS数据图层的显示属性。数据视图是任何一个数据集在选定的一个区域内的地理显示窗口。

在地图布局窗口中,你可以处理地图的页面,包括地理数据视图和其他地图元素,比如比例尺,图例,指北针和参照地图等。通常,ArcMap可以将地图组成页面,以便打印和印刷。

设计和生成用于印刷的地图

组织和编辑数据



生成地图,并与ArcReader,ArcGISEngine应用程序,ArcIMSArcMapServer和ArcGISServer共享

在ArcMap中进行建模和分析ArcCatalog

ArcCatalog应用模块帮助你组织和管理你所有的GIS信息,比如地图,数据集,模型,元数据,服务等。它包括了下面的工具:



记录、查看和管理元数据。

定义、输入和输出geodatabase结构和设计。

在局域网和广域网上搜索和查找的GIS数据。

管理ArcGISServer。

GIS使用者使用ArcCatalog来组织、发现和使用GIS数据,同时也使用标准化的元数据来说明他们的数据。GIS数据库的管理员使用ArcCatalog来定义和建立geodatabase。GIS服务器管理员则使用Arccatalog来管理GIS服务器框架。

ArcCatalog中的元数据

在ArcCatalog中预览三维场景

在ArcCatalog中预览由ArcGISServer生成的地图服务

在ArcIMS元数据服务器中组织、编辑和管理

ArcCatalog中的空间处理



定义Geodatabase模式

用ArcToolbox和ModelBuilder来进行空间处理

空间处理是通过对已有数据的分析得到新信息的过程,是GIS的一个关键的功能。许多GIS行为中都使用空间处理来进行批处理。用户可以使用空间处理功能产生高质量的数据,对数据的质量实行QA/QC的检查,以及进行建模和分析。

ArcGISDesktop提供了一个空间处理框架,框架中的工具可以以多种方式运行,如ArcToolbox中的对话框,ModelBuilder中的模型,命令行,以及脚本。这个框架方便了对空间处理模型的创建、使用、说明和共享。空间处理框架主要包括两个部分:ArcToolbox(一个空间处理工具的集合)和ModelBuilder(为建立空间处理流程和脚本提供的可视化的建模工具)。

ArcToolbox

ArcToolbox具有许多复杂的空间处理功能,包括的工具有:



数据转换

Coverage的处理

矢量分析

地理编码

统计分析

ArcToolbox内嵌在ArcCatalog和ArcMap中,在ArcView、ArcEditor和ArcInfo中都可以使用。

当然每一个产品层次包含的空间处理工具不同的。ArcView具有核心的简单数据的加载、转换,以及基础的分析工具。ArcEditor增加了少量的geodatabase的创建和加载的工具,ArcInfo提供了进行矢量分析、数据转换、数据加载和对Coverage的最完整的空间处理工具集合。ArcView中的ArcToolbox包含的工具超过80种,ArcEditor超过90种,ArcInfo则提供了大约250种工具。

ArcView和ArcEditor中都具有空间处理功能,但因为ArcInfo包含了实现重要GIS分析的广泛的空间处理工具,所以它是最强大的空间处理工具级别。需要建立GIS数据和完成分析的使用者将至少需要一个ArcInfo级别的许可。

其他的空间处理工具集合来自于ArcGIS扩展模块,比如ArcGISSpatialAnalyst,它具有约200个栅格建模工具,还有3DAnalyst,包含44种TIN和地形分析的空间处理工具。ArcGIS的GeostatisticalAnalyst提供克里格(kriging)和面插值的工具。



ArcToolBox可在所有的ArcGISDesktop应用程序中使用,如ArcCatalog

ModelBuilder

ModelBuilder为设计和实现空间处理模型(包括工具,脚本和数据)提供了一个图形化的建模框架。

模型是数据流图示,它将一系列的工具和数据串起来以创建高级的功能和流程。你可以将工具和数据集拖动到一个模型中,然后按照有序的步骤把它们连接起来以实现复杂的GIS任务。

ModelBuilder是一个高效的机制,它能让你和你组织内外的人共享你的方法和流程。

ModelBuilder为创建和执行复杂的GIS过程提供了一个交互机制

ArcGlobe

ArcGlobe是ArcGIS桌面系统中3D分析扩展模块中的一个部分,提供了全球地理信息的连续、多分辨率的交互式浏览功能。像ArcMap一样,ArcGlobe也是使用GIS数据层,显示geodatabase和所有支持的GIS数据格式中的信息。ArcGlobe具有地理信息的动态3D视图。ArcGlobe图层放在一个单独的内容表中,将所有的GIS数据源整合到一个通用的全球的框架中。它能处理数据的多分辨率显示,使数据集能够在适当的比例尺和详细程度上可见。

ArcGlobe的统一交互式地理信息视图使得GIS用户整合并使用不同GIS数据的能力大大提高。ArcGlobe将成为广受欢迎的应用平台,完成编辑,空间数据分析,制图和可视化等通用GIS工作。

在人口和生物多样性之间具有潜在矛盾的区域

SARS的报告病例和死亡病例的全球分析

芝加哥城市一览

什么是ArcView,ArcEditor,和ArcInfo?

ArcGIS桌面系统是为GIS专业人士提供的信息制作和使用的工具。它可以作为三个独立的软件产品购买,每个产品提供不同层次的功能水平:



ArcEditor除了包括了ArcView中的所有功能之外,还包括了对Shapefile和geodatabase的高级编辑工能。

ArcInfo是一个全功能的旗舰式GIS桌面产品。它扩展了ArcView和ArcEditor的高级空间处理功能,还包括传统的ArcInfoWorkstation应用程序(Arc,ArcPlot,ArcEdit,AML等)。

因为ArcView,ArcEditor,和ArcInfo的结构都是统一的,所以地图、数据、符号、地图图层、自定义的工具和接口、报表和元数据等,都可以在这三个产品中共享和交换使用。使用者不必去学习和配置几个不同的结构框架。这是使用统一结构的优点。

除此之外,使用ArcGIS桌面系统创建的地图,数据和元数据可以通过下面的方式在多个用户之间共享,例如使用免费的ArcReader产品,自定义的ArcGISEngine应用程序,ArcIMS和ArcGISServer创建的高级GISWeb服务。

通过一系列的可选的软件扩展模块,这三个级别产品的能力还可以进一步得到扩展,比如ArcGISSpatialAnalyst和ArcPress。关于扩展模块的更多信息,请看后面“可选的ArcGIS桌面系统的扩展”章节。



什么是ArcView?

ArcView是ArcGIS桌面系统中三个功能产品级别中的第一个。ArcView9中包括了下面的应用:ArcMap,ArcCatalog,ArcToolbox和ModerBuilder。它是一个强有力的GIS工具包,提供了数据使用,制图,制作报表和基于地图的分析。



上表列出了ArcView的一些核心功能。ArcView提供了包括高级地图符号和地图编辑工具,元数据管理和动态投影等优秀的数据使用能力

什么是ArcEditor?

ArcEditor是GIS数据使用和编辑的平台,可以创建和维护geodatabase,shapefiles和其他地理信息。ArcEditor除了具有ArcView中的所有功能之外,还可以创建geodatabase行为,比如拓扑,子类,域和几何网络等。ArcEditor也包含元数据创建、地理数据搜索和分析、制图等工具。

当使用ArcSDE访问数据库时,ArcEditor提供完整的版本管理机制,可以编辑和维护多用户的geodatabase。ArcEditor包括了版本管理的高级工具,例如,可以识别和解决冲突版本的合并工具,离线编辑和历史管理工具。

关于ArcSDE的更多信息,请看第5章的“什么是ArcSDE”部分。



什么是ArcInfo?

ArcInfo是ArcGIS桌面系统产品中的旗舰。它是ArcGIS桌面系统中功能最齐全的客户端。ArcInfo提供了ArcView和ArcEditor中的所有功能。除此之外,它在ArcToolbox中提供了一个综合的工具集合,这些工具支持高级的空间处理和多边形的处理。传统经典的工作站的应用也由ArcInfo的workstation中提供,比如Arc,ArcPlot和ArcEdit。由于增加了高级空间处理功能,ArcInfo成为一个完整的GIS数据创建,更新,查询,制图和分析的系统。

需要一个完整的GIS的组织都至少要有一个ArcInfo。

上表列出了ArcInfo的一些核心功能。ArcInfo具有ArcEditor和ArcView的所有功能,并增加了高级的空间处理功能。ArcInfo级别的ArcToolbox对于创建空间数据来说是非常重要的。

ArcGIS桌面系统中的可选的扩展模块

ArcGIS桌面系统有很多可选的扩展模块。扩展模块允许你完成如栅格空间处理和三维分析这样的任务。ArcView,ArcEditor和ArcInfo中的任何一个都可使用所有的扩展模块。



ArcGIS空间分析模块(ArcGISSpatialAnalyst)

ArcGIS空间分析模块提供了众多强大的栅格建模和分析的功能,利用这些功能可以创建,查询,制图和分析基于格网的栅格数据。ArcGIS空间分析模块还可以进行栅格和矢量结合的分析。使用该模块,你可以获得数据的衍生信息,识别空间关系,寻址,计算点到点旅行的综合的代价。

ArcGIS空间分析模块在ArcGIS桌面系统空间处理框架中是一个关键的工具包。

栅格运算和建模



用ArcToolbox和ModelBuilder进行栅格空间处理和建模

ArcGIS3D分析

通过ArcGIS3D分析模块,能够对表面数据进行高效率的可视化和分析。使用ArcGIS3D分析模块,你可以从不同的视点观察表面,查询表面,确定从表面上某一点观察时其他地物的可见性,还可以将栅格和矢量数据贴在表面以创建一副真实的透视图。ArcGIS3D分析扩展模块的核心是ArcGlobe应用程序。ArcGlobe提供浏览多层GIS数据、创建和分析表面的界面。

ArcGIS3D分析模块提供了三维建模的高级GIS工具,比如挖填分析,可见分析以及地表建模等。



ArcGIS3D分析模块具有三维可视化和地表建模等功能

使用空间处理进行TIN分析的例子

ArcGIS3D分析模块提供动画制作工具。上图是正在播放的由ArcGlobe生成的动画文件

ArcGISSchematics

ArcGISSchematic模块生成基于数据库的示意图。不论是电力,燃气,电信或平面网络(tabularnetworks),ArcGISSchematic都可以根据需要产生网络逻辑图或示意图。

Schematic是GIS网络的逻辑视图。通过该模块可以提取网络结构的逻辑视图,并可以把结果放到文档或地图中。





ArcGISSchematic生成的电力和给水网络的逻辑示意图示例

ArcGIS数据互操作扩展模块(ArcGISDataInteroperabilityextension)

ArcGIS数据互操作扩展模块提供直接读取和使用超过60种通用GIS矢量数据格式和多种GML规范的功能。而且,可以将GIS数据以各种格式发布。例如ArcGIS能直接读取和使用S57海图数据集,带有扩展实体属性的高级CAD数据集,MapInfo的数据集,和UKOrdnanceSurvey’sMasterMap的GML文件。除此之外,还支持以超过50种格式输出GIS数据。

数据互操作扩展模块也提供一系列的数据转换工具,用以构建更加复杂的矢量数据格式的转换器。

ArcGIS数据互操作扩展模块是由ESRI和SafeSoftware共同开发的。SafeSoftware是GIS互操作的领头人。这个扩展模块建立在SafeSoftware广受欢迎的FME(FeatureManipulationEngine)产品之上,可以:



使用FME定义复杂数据语义的翻译器

关联多种表格式中的属性数据和数据库中的要素

任何要素类都可以输出为超过50种格式(比如输出到GML),也可以设计高级的翻译器来输出自定义的数据格式

ArcIMS也有一个数据分发的扩展模块,这样GIS和数据发布者可以提供同样多的GIS数据格式的分发服务。

在ArcCatalog中使用数据互操作扩展模块转换FME数据



你可以将数据拖动到ArcMap中,使用ESRI所有的制图功能,比如查看要素和属性,识别和选择要素

数据互操作扩展模块可以直接读取超过65种空间数据,包括GML,DWG/DXF,MicroStationDesign,MapInfoMID/MIF和TAB等。

ArcGISSurveryAnalysis

好多年以来,许多测量界的专业人士和GIS从业人员都渴望能有一种把复杂的测量信息融入到GIS中来的方法,并以此为基础来提高和量化GIS数据库的空间精度。而这就是ArcGIS测量分析(ArcGISSurveyAnalysis)模块的目标。

通过ArcGIS测量分析模块,用户可以管理复杂的测量数据库,并把他们集成到GIS中,而且可以随时增加和改进测量数据。测量系统中的相对精确度和错误可在任何一个测量定位点上显示。除此之外,使用者可以把要素的位置配准到测量系统中的测量点,从而对要素的几何位置进行校正。

GIS组织机构通过ArcGIS测量分析模块使用测量和GPS信息,大大提高了GIS数据的空间精确度。

地理要素位置可以跟测量点结合以提高空间精度

上图显示了测量网络的traverse和测量信息(measurement)

ArcGIS的ArcScan扩展模块

ArcScan为ArcEdirtor和ArcInfo增加了栅格编辑和扫描数字化等能力。它通常用于从扫描矢量地图和手画地图中获得数据。它简化了ArcGISWorkstation的数据获取工作流程。

使用ArcScan模块,能够实现从栅格到矢量的转换任务,包括栅格编辑,栅格捕捉,手动的栅格跟踪和批量矢量化。

平面规划图



土壤图



上图显示了测量网络的traverse和测量信息(measurement)

ArcGIS地理统计分析模块

地理统计分析模块为提供统计学工具用于分析、显示连续数据和生成表面。空间数据探察分析工具提供了不同视角来显示数据:数据分布,全球趋势,空间自相关的级别和多数据集之间的变化等。地理统计分析模块能够进行预测而且给出这些预测的可信程度,允许你回答诸如这样的问题,“在特定的地方臭氧超过EPA(EnvironmentalProtectionAgency)标准的概率是多少?

通过ArcGIS地理统计分析模块,可以轻松快速的进行概要统计(summarystatistics),趋势分析和图形化显示表面预测(surfaceestimation)的统计数据]

ArcGIS追踪分析模块

用户可以使用ArcGIS追踪分析模块显示分析时间数据,包括随着时间变化追踪要素的移动轨迹,以及某个时间段特定位置的追踪系统值的变化。

ArcGIS追踪分析模块包括:



用颜色符号表示时间状态(显示时间的变化)

交互式回放

行为(基于属性和空间查询)

高亮显示

抑制

支持线和面

回放中显示时间的柱状图

基于时间对地图图层进行符号化

管理许多时间数据图层的时间窗口

设置时间偏移来对比时间事件

动画文件

为其他分析设置数据时钟

在ArcGIS追踪分析模块中,互动式的回放管理器(开始,停止,暂停,重放)用来浏览windows中的事件

ArcGISPublisher和ArcReader

ArcGISPublisher通常用于公开发布ArcGIS桌面系统制作的数据和地图。Publisher能够为任何一个ArcMap的地图文档产生一个可供发布的(.pmf)格式的地图文件。PMF文件可以在免费的ArcReader应用系统中使用,这样可以自由的与许多用户共享你的ArcMap文档。PMF格式还可以通过ArcMapServer和ArcIMS在网上部署地图。

ArcGISPublisher包括可编程的ArcReader控件,可通过VisualBasic,C++,.NET,或者Java进行开发。这样可将ArcReader嵌入到一个已有的应用程序中或对ArcReader进行客户化。

在公开发布.pmf文件的地图压缩数据时,你可以选择在ArcReader工程文件中设置用户名和密码,这样就可只与合法的用户安全地共享地图和数据了。

ArcReader帮助你以多种方式部署GIS。它提供了开放地访问GIS数据的方式,可以在高质量的专业地图中展现信息,ArcReader的使用者也可以交互地使用和打印地图。

在ArcGIS桌面系统中添加ArcGISPublisher扩展,可以为使用者提供访问你的空间信息的能力。使用ArcMap制作地图,用ArcGISPublisher发布,还可用ArcReader,ArcGIS。



用ArcGIS桌面的Publisher扩展模块在ArcMap中生成pmf文件免费发放pmf给用户

Server,和ArcIMSArcMapServer与很多用户共享这些地图。

ArcGIS的ArcPress扩展模块

ArcPress是ArcView,ArcEditor,和ArcInfo中进行地图打印的扩展模块。作为ESRI的栅格影像处理器(RIP),ArcPress提供符合标准图形交换格式和本地打印机语言的打印文件,可以在符合工业标准的通用打印机或桌面打印机上使用。

大的GIS地图可能包括海量数据,复杂符号和超大的影像,在现有的打印机上打印这样的地图非常困难和耗时。GIS环境中的ArcPress起到把高质量的地图快速传递到打印机上的作用,而不需要额外附加内存和硬盘。ArcPress把你的计算机作为打印机的一个处理器,使得你不需要购买昂贵的硬件或升级打印机就能够进行连续打印。

ArcGIS的Maplex扩展模块

ArcGIS的Maplex扩展模块在ArcMap中增加了高级的标注放置和冲突检测的方法。它可以生成能保存在地图文档中的文字,也能产生可以保存在geodatabase复杂的注记层中的注记。

使用Maplex可以节约很多的时间。实例研究已经表明,在地图上标注,使用Maplex至少可以节约50%的时间。Maplex是GIS制图的一个重要工具,它提供了很好的文字渲染和具有打印质量的文字放置方式。因此,任何需要制作高质量地图的地方都应该考虑至少需要一套ArcGIS的Maplex。



ArcPress提供先进的地图打印功能

使用ESRI标准标注引擎的标注放置效果

使用ESRIMaplex标注引擎的标注放置效果

ArcIMS,和ArcGISServer

服务器GIS:

服务器GIS用于多种类型的集中式的GIS计算。基于服务器的GIS技术目前正快速发展、日趋成熟。

GIS软件可以被集中地管理在应用服务器和网络服务器上,通过网络向任意数量的用户提供各种GIS功能。企业GIS用户可以使用传统的、高级的GIS桌面软件、网络浏览器、定制的应用、移动计算设备、以及数字设备等连接到中央GIS服务器,获得GIS服务。



管理大型GIS数据库

通过Internet提供地理信息

维护中心GIS网络门户以提供数据挖掘和使用

集中提供各种高级GIS功能给一个机构内部的多用户访问

企业GIS数据库的后台处理

分布式GIS计算(如,分布式GIS数据管理和分析)

通过Internet提供丰富的GIS功能

GIS服务器是与主流IT标准兼容的,并可以跟其他的企业软件(如,网络服务器、DBMS和企业应用程序框架,包括JavaJ2EE和微软.NET)很好地集成。这就使得GIS系统能够与大量的信息系统技术和计算标准开放、协同地工作。

服务器GIS的种类

ArcGIS提供了三种服务器软件:ArcSDE,ArcIMS和ArcGISServer。

ArcSDE是一个先进的空间数据服务器软件。它为任意的客户端应用,例如ArcIMS或ArcGISDesktop,提供了一个在DBMS中存储、管理和使用空间数据的通道。



ArcGISServer是提供给企业和网络应用开发者的一个具有丰富GIS功能的服务器GIS产品。它用来构建分布式的、多层的企业信息系统配置。

服务器GIS功能 ArcSDE ArcIMS ArcGISServer DBMS中的多用户数据管理 x ? 多层结构、可配置的GIS数据服务器 x ? GIS网络发布:-地图 x ? -数据 ? x ? -元数据(基于XML的服务) x ? HTML地图应用 x ? Java地图应用 x ? 给开发者的ASP和JSP连接器 x ? 元数据目录管理与搜索 ? x ? 支持网络互操作 ? x x 数据互操作工具 ? x x 支持.NET,ASP和JavaJSP的Web应用开发框架 ? x 数据访问和更新API ? ? x 基于服务器的编辑 ? ? x 分布式数据管理:-下载/上传 ? x -提取/插入 ? x -复制 ? ? x 中央服务器的GIS分析 ? x 提供给企业和网络开发者的丰富的ArcObjects开发库 ? x 基于SOAP的GISWeb服务 ? x 栅格分析工具 ? ? x 地表/3D分析工具 ? x 三种ArcGIS服务器软件的服务器GIS功能

什么是ArcSDE?

ArcSDE是ArcGIS与关系数据库之间的GIS通道。它允许用户在多种数据管理系统中管理地理信息,并使所有的ArcGIS应用程序都能够使用这些数据。

ArcSDE是多用户ArcGIS系统的一个关键部件。它为DBMS提供了一个开放的接口,允许ArcGIS在多种数据库平台上管理地理信息。这些平台包括Oracle,OraclewithSpatial/Locator,MicrosoftSQLServer,IBMDB2,和Informix。



ArcSDE功能

高性能的DBMS通道 ArcSDE是多种DBMS的通道。它本身并非一个关系数据库或数据存储模型。它是一个能在多种DBMS平台上提供高级的、高性能的GIS数据管理的接口。 DBMS支持 ArcSDE允许你在多种DBMS中管理地理信息:Oracle,OraclewithSpatialorLocator,MicrosoftSQLServer,Informix,以及IBMDB2. ArcSDE为用户提供大型空间数据库支持,并且支持多用户编辑。 ArcSDE可以支持海量的空间数据库和任意数量的用户,直至DBMS的上限。 GIS工作流和长事务处理 GIS中的数据管理工作流,例如多用户编辑、历史数据管理、check-out/check-in以及松散耦合的数据复制等都依赖于长事务处理和版本管理。ArcSDE为DBMS提供了这种支持。 ArcSDE保证了存储于DBMS中的矢量和栅格几何数据的高度完整性。这些数据包括,矢量和栅格几何图形、支持x,y,z和x,y,z,m的坐标、曲线、立体、多行栅格、拓扑、网络、注记、元数据、空间处理模型、地图、图层,等等。 ArcSDE通道可以让用户在客户端应用程序内或跨网络、跨计算机地对应用服务器进行多种多层结构的配置方案。ArcSDE支持Windows,UNIX,Linux等多种操作系统。 ArcSDE通过提供多种基本GIS功能在多用户GIS系统中扮演了一个重要角色ArcSDE在ArcGIS和关系数据库间扮演着通道的角色,并可以有多种配置方式



为什么使用ArcSDE?



标准的SQL并不支持空间数据。ISOSQL/MMSpatial和OGC的简单要素SQL规范扩展了SQL,并且为不同的矢量数据定义了标准的SQL支持。DB2和Informix直接支持这些SQL类型。Oracle使用的是自己的标准,其空间类型系统是核心数据库系统上的一个独立的、可选扩展。而微软的SQLServer不提供空间类型的支持。ArcSDE不但灵活地支持了每个DBMS提供的独特功能,而且能为底层DBMS提供它们所不具备的功能的支持。

ArcSDE支持高性能的空间数据的管理,它支持的数据库包括:

Oracle(带压缩二进制)

Oracle(带Locator和Spatial)

微软SQLServer(带压缩二进制)

IBMDB2(带SpatialExtender)

IBMInformix(带SpatialDatablade)



ArcSDE分摊了DBMS和GIS之间对管理空间数据的职责



GIS软件负责为特定的DBMS提供各种地理数据的表达。从实际效用上看,DBMS是被作为一个空间数据的实现机制。

ArcSDE是基于多层体系结构的(应用和存储)。数据的存储和提取由存储层(DBMS)实现,而高端的数据整合和数据处理功能由应用层(ArcGIS)提供。

ArcSDE支持ArcGIS应用层并提供DBMS通道技术,使得空间数据可以存储于多种DBMS中。ArcSDE用于高效地存储、索引和访问维护在DBMS中的矢量、栅格、元数据及其它空间数据。

ArcSDE同时能保证所有的GIS功能可用,而无需考虑底层的DBMS。使用ArcSDE,用户在DBMS中即可有效管理他们的地理数据资源。

ArcSDE使用DBMS支持的数据类型,以表格的形式管理底层的空间数据存储,并可使用SQL在DBMS中访问这些数据。

ArcSDE同时也提供了开放的客户端开发接口(CAPI和JavaAPI),通过这些接口用户定制的应用程序也可以完全访问底层的空间数据表。

这种灵活性意味着一个开放、可伸缩的解决方案;给用户更多的选择;以及更好的互操作性。

ArcSDE的优势 支持海量数据 支持长事务处理和版本管理 支持所有的GIS数据(矢量、栅格、测量、地形、元数据及其它) DBMS 支持多用户 将GIS整合到统一的IT策略中



扩大你的GIS系统规模



空间数据存储



ArcSDE保证能够访问多种DBMS,使用每种DBMS所支持的标准SQL类型来管理数据,并且支持所有的空间数据类型(包括要素、栅格、拓扑、网络、地形、测量数据、表格数据,以及位置数据,例如地址、模型和元数据),而无需用户考虑DBMS的底层实现。

ArcSDE能够使用DBMS所提供的标准的SQL来存储数据,并且能够完全支持每种DBMS所扩展的――如果有――用于空间数据类型的SQL。如果DBMS没有任何扩展的空间数据类型支持,二进制大对象(binarylargeobject)类型将会被默认使用。

DBMS 空间数据存储类型 RDBMS字段类型 SQLServer ArcSDECompressedBinary Image 微软的SQLServer没有扩展对空间数据类型的支持。但是它们的二进制类型,即所谓的Image字段,可以完全管理复杂的二进制数据流。在普通的和高级的GIS应用中,都需要这些二进制流来表达复杂的线要素和多边形要素。实践证明,SQLServer的二进制类型同其它企业级RDBMS一样,具有稳健、灵活和高效的优点。 OGCWell-KnownBinary Image OGCSimpleFeatures类型 IBMDB2 SpatialExtender-GeometryObject ST_Geometry IBM的两个RDBMS:DB2和Informix,都扩展了对矢量空间数据类型的支持。这些类型的扩展与ESRI保持了一致,并且是基于ISOSQLMMforSpatial规范的。 Informix SpatialDatabase-GeometryObject ST_Geometry Oracle 1.ArcSDECompressedBinary LongRaw ArcSDE默认的存储机制,而且是被最普遍使用的数据存储机制。它的特点是高效、灵活、稳定。 2.LOB LOB LOB是为了使用OracleReplicationServices 3.OGCWell-KnownBinary LOB OGCSimpleFeatures类型 OracleWithSpatialOption/LocatorOption OracleSpatialGeometryType SDO_Geometry ArcSDECompressedBinary和LOB类型外,OracleSpatial的用户也可以选择使用SDO_Geometry类型。用户可以逐表格地判断是否使用这种类型,这样可以让他们对每个单独的数据集都能采用最佳的存储方案。 ST_Geometry和SDO_Geometry实际上都归诸于一系列的点、线、面类型。



多用户geodatabase技术的基本原理:ArcSDE是geodatabase应用程序操纵geodatabase的一个通道,并且让geodatabase能够在关系数据库中准确地表达。Geodatabase应用软件提供高级的数据处理功能,而ArcSDE保证了在多种DBMS体系中有效地存储和访问数据。

什么是ArcIMS?

GIS地图、数据和元数据的网络发布

ArcIMS是一个通过中心网络门户来发布GIS地图、数据和元数据的有效解决方案。使用ArcIMS构建的GIS网站允许任意数量的用户通过企业局域网或Internet进行访问。

ArcIMS使网站能够提供GIS数据、交互式地图、元数据目录以及特定的GIS应用。通常,ArcIMS用户通过他们的Web浏览器,借助ArcIMS内含的HTML或Java应用程序来访问这些GIS服务。除此以外,ArcIMS服务还能够被更多的客户端访问,如ArcGISDesktop、ArcGISEngine应用、ArcReader、ArcPad、ArcGISServer节点、MapObjectsforJava应用以及各种使用HTTP和XML进行网络通讯的无线设备。

ArcIMS用于在万维网上发布GIS地图、数据和元数据。用户通常使用他们的Web浏览器和ArcGIS软件来访问这些ArcIMS服务。

如何使用ArcIMS?



提供特定功能的GIS应用



这些Web应用拥有一些共同的特点。那就是它们可以承受大量用户的访问,允许每天超过数以百万次的网络点击;它们的用户界面都十分专题化,使用它们的用户往往只需重复少量特定的操作;它们用来整合并发布GIS信息给广大用户;通常,ArcIMS不用于数据更新和高级的、专业化的GIS分析。

美国全国天气服务飓风网站

英国地质测量网站

给专业GIS用户发布数据

许多机构需要为它们机构内外的专业GIS人员提供一系列的GIS数据。这些ArcIMS应用关心的是专业GIS人员之间的数据共享,使他们能够利用这些数据与其它的信息相结合来完成各种任务。

GIS网络技术



ArcGISDesktop利用ArcIMS服务器来访问数据,以丰富地图信息,并集成远程信息于工作中。

许多GIS用户已经认识到传输于网络中的GIS数据愈来愈多。GIS网络是一个松散耦合的GIS节点集合,每个节点即是GIS数据和Web服务的一个集合。GIS的一个令人兴奋的发展趋势就是发展全国的、洲际的、以及全球的空间数据基础构架(SDI,SpatialDataInfrastructure)。在这个构架内,用户可以通过一个共同的网路目录门户注册他们自己的GIS数据与各种信息,并可通过GIS目录门户搜索(就象用www.google.com进行Internet搜索一样),找到并访问特定用途的GIS信息。

ArcIMS是构建GIS网络的一个关键技术。它提供了相应的工具来构建一个GIS门户。这个GIS门户提供元数据目录、目录搜索和挖掘服务、GIS数据和元数据获取服务、地名词典服务、以及网络制图服务。

可选的GISProtal扩展用于构建和管理GIS目录门户。现在很多企业已经开始利用ArcIMSPortal来创建他们的SDI节点。



GeoCommunicatior――美国土地管理局和美国森林服务机构的土地记录和土地管理网站

ArcIMS的功能

当ArcIMS的客户端给服务器发送一个请求,ArcIMS服务器就根据请求进行处理并将处理结果发给客户端。通常的ArcIMS请求包括地图生成、提取特定范围的地理数据、或元数据搜索。ArcIMS提供一系列的GIS网络传输服务。最常见的ArcIMS服务是,给各种类型的客户端提供交互式的地图。

当你给你的网站创建一幅地图时候,你需要确定包含哪些数据层,以及如何渲染地图要素。你可以定义符号、增加标注、设置比例尺系数等等。当客户端发送一个地图请求时,地图是在服务器端根据请求生成的。生成的地图将按以下任一种服务方式响应:影像、矢量流、或ArcMap影像服务。

影像服务是用ArcIMS图像渲染功能向发送请求的客户端传送一个地图快照的压缩图像。客户端每请求一个新的信息(如漫游地图),服务器就生成一新的地图图像。影像服务也可以传递压缩的栅格数据给客户端。影像服务可以使用ArcXML和OGCWMS两种协议中的任一种。

要素服务以流的方式向客户端传输压缩的矢量要素。要素流使客户端能够处理更高级的GIS任务,例如要素标注、要素符号化、地图提示创建、以及要素的空间选择。这种功能允许用户在客户端改变地图的外观。要素服务可以使用ArcXML和OGCWFS两种协议中的任一种。

ArcMap影像服务是将ArcMap文档以图像流的形式向客户端传送。这种服务可以传送使用ArcMap制作的高质量的专业地图。理论上用ArcMap制作的地图所包含的任何信息,用ArcIMS借助ArcMapServer都可以完整地被发布。ArcMapServer也支持访问版本化的geodatabase,并且可用于多种企业GIS中。ArcMap影像服务可以使用ArcXML和OGCWMS两种协议中的任一种。

以下列出了几种主要的ArcIMS网络发布功能:

影像渲染:影像渲染可以创建地图当前视图的一个快照。例如,当你在地图上漫游和缩放、或打开和关闭图层的时候,ArcIMS的地图服务器就可以给每个视图快照并以图像的形式发送给ArcIMS客户端。

要素流功能:要素流功能是指以流的方式向客户端发送矢量数据,使客户端完成一些高级GIS任务:如要素标注、地图提示创建、空间选择等等。要素流功能需要一些更加高级的ArcIMS客户端支持,包括ArcExplorer-JavaEdition、ArcGISDesktop、及ArcIMSJavaViewer。从ArcIMS网站得来的要素流可以与本地的要素集成一起用于分析。

数据查询:你可以创建新的查询条件或执行预定义的查询来获取特定的信息。客户端提交这些查询条件给服务器,服务器将查询的结果返回给客户端。

数据提取:你可以从服务器上请求地理数据集。服务器将响应得到的特定数据,如shapefile,以zip压缩格式传送给客户端,以供本地使用。

地理编码:这种功能允许你提交一个地址来从ArcIMS地理编码服务器上得到地址的地图位置。根据你输入的地址,服务器或者返回一个与地址准确匹配的位置,或者是一个候选匹配列表。

元数据目录服务:用ArcGISDesktop、ArcIMS和ArcSDE创建的元数据可以用ArcIMS发布以供搜索。这种开放的搜索机制,让你的用户能够从你的网站上很方便地找到并访问所需要GIS信息。

元数据目录浏览和搜索应用:结合ArcIMS,一系列基于网络的HTML应用程序,都可以完成元数据目录的搜索任务。这也包括可定制的地名词典。这些应用工具对于构建一个GIS目录门户都是相当重要的。

ArcMapServer:你可以使用ArcGIS制作你的地图,然后用ArcIMS发布。这样用户在一个ArcIMS网站就可以访问高级的geodatabase和ArcMap的专业制图。

网络地图应用:ArcIMS包含了一系列基于浏览器的、用于GIS访问的网络地图应用。使用网络浏览器作为GIS终端,可以使非专业GIS用户也能分享专业的GIS技术。

可选的ArcIMS扩展:GIS网站的网络发布功能可以通过使用一系列可选的ArcIMS扩展得到加强。这些扩展包括:

DataDelivery扩展:ArcIMSDataDelivery扩展允许ArcIMS站点提供多种GIS数据格式的数据下载,包括用ArcGISDesktopDataInteroperability扩展定义的复杂数据转换器。ArcIMSDataDelivery扩展是基于加拿大Safe公司的专门用于高级空间数据转换的FME软件包。

GISPortal扩展:ArcIMSGISPortal扩展是一系列用于实现一个完整的GIS门户的ArcIMS网络应用。支持的GIS门户功能包括:主要的HTML网络门户页面和界面;结合定制地名词典的元数据搜索和获取应用;元数据获取应用;用于管理集中、共享的元数据目录的GIS目录数据库模式(schema);能够使用多源的、远程的网络数据源生成交互式地图的动态网络地图应用。GISPortal扩展是美国GeospatialOne-Stop门户(www.geodata.gov),欧盟INSPIRE门户,和大量其它国家的GIS目录门户的技术基础。

RouteServer:ArcIMSRouteServer扩展提供了一个全美国的街道导航数据库,以支持对街道数据的优化路径选择和地理编码服务。

可选的扩展增强了ArcIMS站点的功能

用ArcXML开发ArcIMS应用

ArcIMS使用XML作为它的通讯和交互语言。ArcIMS公开发布的XML语言叫做ArcXML。它提供了访问所有的ArcIMS功能的能力。ArcIMS中所有客户端请求和服务器端的响应都是以ArcXML编码的。

ArcIMS的开发人员可以使用ArcXML对网络应用编程,定制和扩展核心的ArcIMS功能。

ArcXML也支持一系列的ArcIMS连接器,这些连接器能够让网络开发人员使用包括ColdFusion、ASP、JSP等标准开发工具定制ArcIMS应用。



ArcIMS支持GIS互操作:

ArcIMS通过支持多种IT和GIS的WebServices协议,在GIS互操作中扮演着关键的角色。重要的是,GIS用户能够通过多种规范向他们的客户提供互操作选择。这些规范包括XML、SOAP、WMS、WFS、GML、Z39.50等等。ArcIMS支持大多数的GIS和ITWeb服务标准。

什么是ArcGISServer?

ArcGISServer是一个用于构建集中管理、支持多用户的企业级GIS应用的平台。ArcGISServer提供了丰富的GIS功能,例如地图、定位器和用在中央服务器应用中的软件对象。

开发者使用ArcGISServer可以构建Web应用、Web服务、以及其它运行在标准的.NET和J2EEWeb服务器上的企业应用,如EJB。ArcGISServer也可以通过桌面应用以C/S(Client/Server)的模式访问。ArcGISServer的管理由ArcGISDesktop负责,后者可以通过局域网或Internet来访问ArcGISServer。

ArcGISServer平台

ArcGIS

ADF包含一个软件开发包,其中有软件对象、Web控件、Web应用模板、帮助、以及例子源码。同时,它也包含一个用于部署Web应用的Web应用运行时;这样,不需要在Web服务器上安装ArcObjects,就可以运行这些Web应用。



ArcGISServer为Web应用和C/S应用开发提供ArcObjects功能

为什么使用ArcGISServer?

ArcGIS

ArcGISServer的提供Web服务的能力,使得GIS能够与其它的IT系统有效集成,如关系数据库、Web服务器、以及企业应用服务器。

集中的GIS服务器可以通过Web浏览器向用户提供GIS功能,简化了系统和应用程序的管理,降低了费用

如何使用ArcGISServer?

ArcGIS

基于浏览器的GIS访问

许多用户将使用Internet浏览器来连接使用ArcGISServer开发和发布的Web应用。这些用户通常将使用Web浏览器与Web应用交互来访问GIS。Web应用的用户可以仅具有少量甚至没有GIS常识,也能够顺利使用由ArcGISServer提供的GIS功能。他们可以使用他们的Web浏览器来访问集中运行在服务器上的传统GIS应用。

ArcGIS

提供集中的、多用户的geodatabase编辑

对于很多机构来说,企业级的geodatabase管理是一个非常重要的目标。他们需要提供大量用户同步地编辑和更新这些数据。其中大部分用户将会通过他们的Web浏览器和特定的编辑应用程序来远程地更新中心数据库。

ArcGISServer提供了一个框架保证这些远程用户在维护数据的完整性的时候,可以直接对多用户的geodatabase进行更新。

上图显示的是一个用ArcGISServer开发的基于浏览器的农业信息编辑应用。在这个应用中,农业外业机构能够使用他们的Web浏览器添加如滴灌和风障等要素到一个中心的、多用户的geodatabase中有版本管理功能的企业级geodatabase的分布式管理

ArcGISServer为一系列GIS系统间的分布式数据管理工作流提供了一个集中的geodatabase应用服务器。这个GIS应用服务器通过为所有的数据库事务提供丰富的geodatabase功能来管理空间数据的完整性。例如:



其它用户需要复制分布在各地的geodatabase到单独的系统中。并且每个实例需要周期性地发送和接收最近的改动以与所复制的每个内容同步。

在服务器上执行特定的空间处理操作

许多用户希望能在一个集中管理的企业级geodatabase上执行高级的GIS分析和空间查询操作。例如,用户需要访问高级的GIS功能:



定位地址

执行管网追踪

缓冲、叠加和提取要素

ArcGISServer提供了对高级GIS功能的十分便利的访问,以支持以上这些及许多其它的空间操作。

发布高级的GISWeb服务

ArcGISServer包含了一个SOAP工具包,用来创建和宿留通过XMLAPI来处理请求的Web服务。开发者可以将ArcObjects中的GIS功能以SOAPWeb服务的形式发布,并且通过Internet的分布式计算框架来访问这些Web服务。

例如,可以创建特定的Web服务用来:



定位地址并执行地址验证

在中心geodatabase中进行查询

集成GIS与IT

ArcGISServer是一个与主流IT技术相兼容的软件产品。它支持许多计算技术标准,能够保证与其它的企业信息技术很好地协同工作。ArcGISServer支持多层计算结构;DBMS访问和使用;企业应用服务器,如.NET和J2EE;以及提供多种用来开发和集成GIS功能到其它的企业技术中去的API(C++,COM,.NET,Java,SOAP)。

ArcGISServer的特点

ArcGISServer允许开发人员在一个服务器环境中访问完全的ArcGIS功能。

以下是ArcGISServer的一些关键特征。

标准的GIS框架

ArcGISServer提供了一个标准的框架用于开发GIS服务器应用。ArcGISDesktop(ArcView、ArcEditor和ArcInfo),以及ArcGISEngine,都是基于同一套软件对象构建的。ArcGISServer是可扩展的。它丰富的功能让开发人员能够集中精力实现他们的GIS应用,而不需要从零开始实现各种GIS的功能。

集中管理的GIS

ArcGISServer支持集中管理的企业级GIS,如运行在服务器上的支持多用户的Web应用。Web服务器应用可以运行在多种Web服务器上,支持任何数量的用户访问。

Web控件

ArcGISServer提供了一套Web控件。这些Web控件简化了将GIS功能(如交互式制图)内嵌到Web应用中的编程模型,并且允许开发人员添加其它高级的GIS功能到他们的Web应用中。

Web应用模板

ArcGISServer含有一套Web应用模板,为创建Web应用的开发人员提供了一个快速的起点。Web应用模板同时也提供了大量的例子,展示了如何使用Web控件来构建Web应用。

跨平台功能

ArcGISServer支持Windows、SunSolaris和Linux,并且支持多种Web服务器。ArcGISServerADF支持在Windows服务器平台上的.NET和JavaWeb应用开发,以及在SunSolaris和Linux服务器上的Java开发。

支持标准的开发语言

ArcGISServer支持多种开发语言,包括:



COM和.NET,用于扩展GIS服务器

COM、.NET、Java和C++,用于构建桌面客户端应用。

这样就允许开发人员使用多种开发工具、选择自己熟悉的编程语言进行开发。

ArcGISServer体系结构

ArcGISServer扩展

ArcGISServer有一系列可选的扩展来增强核心系统的功能。以下是这些扩展的简单介绍。

Spatial扩展

ArcGISServer的Spatial扩展提供了一套强大的功能,用以创建、查询和分析基于像元的栅格数据。在GIS服务器中你可以使用Spatial扩展从数据中获得信息、识别空间关系、寻找合适位置、计算旅行代价表面、以及执行大量其它的栅格空间处理操作。



ArcGISServerpatial扩展提供一套功能强大的工具S,用以创建、查询和分析基于像元的栅格数据

3D扩展

ArcGISServer3D扩展提供了一套3DGIS功能用来创建和分析地表。

ArcGISServer3D扩展允许你创建和分析地表。功能包括通视分析、坡度分析、坡向分析、山影分析等等。

StreetMap扩展

ArcGISServerStreetMap扩展提供了美国全国范围内的街道制图和地址匹配功能。StreetMap图层会自动地管理、标注、和绘制要素,如地区界标、街道、公园、及水体等。

所有数据都在CD-ROM中提供。

ArcGISServerStreetMap扩展提供了全美国街道级的制图和地址匹配功能。

ArcGISEngine

在许多情况下,用户不仅需要通过高端的专业GIS桌面或连接到互联网服务器的浏览器访问GIS,还需要通过介于两者之间的一种中间方式访问GIS——如:辅助式应用,面向GIS的应用和移动设备等。

GIS客户端可以是从简单的浏览器到专业的GIS桌面,如ArcView和ArcInfo的任何应用

典型的中间GIS应用方式是通过定制应用访问GIS功能,这种应用介于简单的Web浏览器和高端GIS桌面之间。例如:



通过将GIS功能嵌入字处理文档和电子表格中

面向GIS的应用,它们与ArcView类似,但是只支持特定的部分高级功能(类似于一个定制的ArcView的便捷版本)。

这些软件要求简单、有针对性的用户界面。他们通过高级的GIS逻辑执行一些具体的任务。例如,很多组织只需要简单的数据编辑器而不是一个完整功能的桌面GIS。客户化的GIS应用也要具有高度灵活的可定制性。用户界面是为了给不熟悉GIS的用户使用GIS功能。因此,软件开发者需要有一个可编程的GIS工具包,在构建应用时提供常规的GIS功能。

ArcGISEngine提供的工具可以满足这些需求。它提供了嵌入式的GIS组件,能用来在一个组织内建立应用,为用户提供有针对性的GIS功能。ArcGISEngine是为每个用户的特定需求提供有针对性的GIS功能实现的基础。

什么是ArcGISEngine?

ArcGISEngine是用于构建定制应用的一个完整的嵌入式的GIS组件库。利用ArcGISEngine,开发者能将ArcGIS功能集成到一些应用软件,如:MicrosoftWord和Excel中,还可以为用户提供针对GIS解决方案的定制应用。

ArcGISEngine流域分析

ArcGISEngine可以在Windows,UNIX,和Linux桌面上运行并支持一系列的应用软件开发环境,例如:VisualBasic6,MicrosoftVisualStudio.NET,和各种Java开发环境,像ECLIPSE和JBuilder。

ArcGISEngine用于构建定制的应用,并部署在多个地方

ArcGISEngine开发包

ArcGISEngine包含一个构建定制应用的开发包。程序设计者可以在自己的计算机上安装ArcGISEngine开发工具包,工作于自己熟悉的编程语言和开发环境中。ArcGISEngine通过在开发环境中添加控件、工具、菜单条和对象库,在应用中嵌入GIS功能。例如:一个程序员可以建立一个应用程序,里面包含一个ArcMap的专题地图、一些来自ArcGISEngine的地图工具和其他定制的功能。

右图是一个定制的ArcGISEngine应用的例子,它是用VisualBasic开发的。在VB的窗体里添加了一个地图控件,一个内容控制列表控件,一个菜单和一个工具条。这个地图控件与一个ArcMap地图文档相关联(一个.mxd文件),它用来交互式地显示和查询地图。

对编程语言和框架的开放支持

除了支持COM环境之外,ArcGISEngine还支持C++,.NET,和Java,使开发者能够跨操作系统、选择多种开发构架,通过ArcGISEngine进行开发。

ArcGISEngine支持一系列操作系统平台和编程语言

WINDOWS UNIXANDLINUX C++ C++ Java Java COM .NET ArcGISEngine的组成

ArcGISEngine开发包包括三个关键部分:



工具条和工具

对象库

包含控件、工具条和对象的ArcGISEngine应用示例

控件



工具条和工具

工具条是GIS工具的集合,在应用程序中用它来和地图和地理信息交互。如,工具包括:平移、缩放、点击查询和与地图交互的各种选择工具。工具在应用界面上用工具条的方式展现。通过调用一套丰富的常规的工具和工具条,建立定制应用的过程被简化了。开发者可以很容易的将选择的工具拖放到定制应用中或创建自己定制的工具来实现与地图的交互。

地图浏览工具条包含一组用于放大,平移,全屏和前一屏的交互式工具

对象库



对开发者来说这些ArcObjects库支持所有的ArcGIS功能,并且可以通过大多数通用的开发环境来访问(例如:VisualBasic6,Delphi,C++,Java,VisualBasic.NET,和C#)

ArcGISEngine包含一组用于构建定制应用的可嵌入的GIS逻辑,包括用户界面组件(控件和工具)和可编程对象库

ArcGISEngine运行时选项

ArcGIS

Spatial(空间分析)选项



3D(三维)选项



Geodatabas更新选项



ArcGISEngine可选扩展的开发组件的概况

运用ArcGISEngine开发应用程序

开发者可以在他们自己选择的集成开发环境下,开发ArcGISEngine应用程序,例如:



对Java开发者来说有ECLIPSE,SunONEStudio或Borland’sJBuilder

开发者使用集成开发环境注册ArcGISEngine开发组件,然后建立一个基于窗体的应用,添加ArcGISEngine组件并编写程序代码构建自己的应用。

例如,一个Java开发者,通过添加一个地图控件、一个内容表和一些选择工具条,建立一个面向GIS的地图应用。开发者可以将ArcMapMXD文件与地图控件关联,并为特定任务编写按钮和其他功能。最终的应用程序可能会分发给许多用户。

部署ArcGISEngine应用程序

一旦开发完成,ArcGISEngine应用可以安装在以下两种类型的ArcGIS许可环境下:

ArcGIS

现有的ArcGIS桌面许可(也就是ArcView,ArcEditor和ArcInfo运行许可)可用来配置运行ArcGISEngine应用

ArcGISEngine运行时安装光盘包括在ArcGISEngine介质包中并可以被安装和配置在多台计算机上。每个运行ArcGISEngine的应用需要一个单独的授权文件。授权文件需要单独的选项许可来运行包含ArcGISEngine选项的应用。



怎样应用ArcGISEngine?

ArcGISEngine可用来建立广泛的GIS应用,并在任何应用中嵌入GIS功能。一些GIS部门想为他们的终端用户创建特定的附带工具的GIS浏览窗口。在其它情况下,一部分GIS功能与其它工具结合,去完成一些重要的任务和工作流程。

例如:一个城市的政府部门可能想建立一系列特定的地块浏览应用,访问GIS数据库信息,并与关键的企业工作流程,如申请许可,税务管理,规划等相结合。

ArcGISEngine开发环境

ArcGISEngine城市宗地应用



通过ArcGISEngine3D扩展定制的交互式全球浏览应用ArcGISEngine组件可以嵌入到微软Word文档和Excel电子表中

为什么使用ArcGISEngine?

许多用户要求有特定的、轻量级的GIS应用,可以是独立的应用程序或嵌入到其他应用中。例如,用户也许需要的功能比ArcView弱,但仍需要在应用中实现复杂的GIS逻辑。在这种情况下,用户需要有特定的、定制的GIS应用,ArcGISEngine为此提供了一个低成本的、轻量级的选择。

ArcGISEngine被用来:



有效地构建和配置GIS应用程序

在简单的应用中实现高级的GIS逻辑

在其它的应用程序中嵌入GIS和地图

用C++或Java建立跨平台的应用

第七章:移动GIS:ArcPad及其硬件设备

移动计算

通过将GIS带到野外以及与周围世界直接交互的能力,移动计算正发生着根本性的改变。移动GIS包括一系列的技术的综合:



移动硬件设备包括轻便设备和野外个人电脑

全球定位系统(GPS)

可以接入到网络GIS的无线通讯设备

传统的,野外数据的采集和编辑一直是耗时并且容易出错的工作。野外地理数据的获取一直借助于纸制地图。野外编辑是通过在纸制地图上绘草图,并在笔记里记录标示来实现的。一旦回到办公室,这些野外编辑的数据被编译和手工输入地理信息系统数据库。结果是:地理信息系统数据不能经常更新或者不够精确。这样导致了地理信息系统分析和决策结果的不可靠性。



许多基于野外的利用地理信息的工作从移动GIS日益增强的高效和准确中获益良多,包括:

经常要求野外数据整理和绘图的资产评估

经常要求更新属性信息和GIS要素几何信息的资产维护

野外资产巡视

事故报告——例如,与空间相关的事件

GIS分析和辅助决策

这些基于野外的工作在许多GIS应用中都非常常见,像自然资源调查和维护、自然资源地图绘制、矿藏探查、事故记录、野外巡视、野外火情绘图等许多方面。

一些野外任务只需要简单的地理工具完成简单操作。相反的,一些任务需要完成复杂的操作,相应的,需要复杂的地理工具。ArcGIS及其应用满足了上述两种要求:

ArcPad侧重于需要简单地理工具的野外工作。这些工作通常在手持设备(运行微软WindowsCE或PocketPC操作系统)上完成。

ArcGISDesktop和ArcGISEngine侧重于需要更高级的地理工具的野外工作。这些工作通常在高端的TabletPC(TabletPC)上完成。

野外GIS经常通过应用的定制来简化移动任务。同时以无线方式连接中心GISWeb服务器获取实时的数据信息,这些站点通常由ArcIMS和ArcGISServer构建。

ArcPad:移动制图和GIS系统

ESRI公司的ArcPad软件是用于移动Windows设备的移动制图和GIS技术。ArcPad为野外用户通过手持和移动设备提供数据库访问,制图,GIS和GPS的综合应用。通过ArcPad可以实现快速,便捷的数据采集,大大提高了野外数据的可用性和有效性。

ArcPad的常用功能:



通过无线技术作为ArcIMS的客户端访问数据

地图导航,包括平移和缩放,空间书签以及定位到当前GPS位置等功能

查询要素,显示超链接,定位要素

地图测量:包括距离,面积和方位

连接到GPS,并通过GPS导航

简单的编辑:通过鼠标,笔或者GPS输入,创建和编辑空间数据

移动的地理数据库编辑:通过ArcGIS从数据库中检出数据,并进行转换和投影;用ArcPad在野外进行编辑,并且把改变的数据提交给中心GIS数据库

GIS野外工作自动化的应用开发

ArcPad支持各种WindowsCE和PocketPC设备



ArcPad通常用于构建专门的制图和数据采集应用。下面列举了一些ArcPad的应用示例:

街道交通标志巡视

电线杆的维护

米表读取

道路铺设管理

军事野外操作

矿藏开发

动植物栖息地研究

有毒物质检测

农作物管理

财产损失评估

野外测量

事故报道和调查

实时野外火灾边界制图

废弃容器检测

野生动物跟踪

GIS数据有效性校验

ArcPadApplicationBuilder

对于移动GIS来说,构造一个用于制图,数据采集和更新的个人化的,定制的野外解决方案是非常有必要的。ArcPad用户可以通过ArcPadApplicationBuilder定制ArcPad,构建特定的应用。

ArcPadApplicationBuilder运行在WINDOWS系统的计算机上。开发者在这个环境中创建定制的应用并且可以在他们的组织中将这些应用配置到大量的ArcPad设备上。

运行在TabletPC上的ArcGIS桌面和ArcGISEngine

许多用户要求带有内置GPS的高端的野外计算机。这些野外的计算机运行完整的WINDOWS操作系统并且能远程完成许多高级的基于计算机的工作任务。在最近几年里,微软推出了一种新的操作系统——微软WindowsXPTabletPC版本,它带来多种创新的特点,如基于光笔的计算,数字墨水技术以及增强的移动功能。

运行于TabletPC上的ArcGISDesktop对于野外计算来说是一个功能强大的移动平台。TabletPC技术使用户能绘制红线,通过GPS获取精确的野外测量数据,同时可以在野外支持ArcGIS完整的功能和空间数据库。

TabletPC综述

Tablet

TabletPC平台通常通过下面四种方式应用:

TabletPC作为一个笔记本电脑:WindowsXPTabletPC版本是现在WindowsXP操作系统的一个延伸版本。

TabletPC的基于光笔的技术:TabletPC允许你运行WindowsXP操作系统并且所有的基于Windows系统的应用都使用光笔替代鼠标。例如,在ArcGIS中,光笔可以用来拖拽工具栏中的按钮和在地图上画图。

WindowsXP语音识别:语音识别功能被嵌入TabletPC的输入面板中,可以与ArcGIS一起来完成口述功能。

TabletPC的数字墨水技术:光笔用来在TabletPC上勾绘。通过勾绘创造的数字墨水可以通过文本识别引擎转化成文本,添加到编辑任务的编辑草图中,或者作为图形进行存储。

运行在TabletPC的ArcGISDesktop和ArcGISEngine

ArcGIS包含一组用于TabletPC的工具,用户可以体验到TabletPC的创新特点——基于光笔的计算,数字墨水技术,以及强大的移动功能,包括ArcGIS的丰富的制图和数据编辑功能。

ArcGIS9主要的一个亮点就是支持在TabletPC上运行ArcGISDesktop以及丰富的制图和编辑工具。TabletPC上也可以运行ArcGISEngine。例如ArcGISEngine的用户可以使用光笔的界面来查询和高亮显示要素,添加和改变属性值,以及用定制的应用程序进行交互操作。

ArcGIS

ArcGIS的制图应用ArcMap包含一个集成了数字墨水技术的工具条。通过Tablet工具条,可以使用光笔工具创建注释或勾绘草图,并绑定到地理位置上。

在TabletPC的ArcMap中创建的草图和注释是地理相关的,并且可以作为地图图形保存或作为注记存储在空间数据库中

这里列出一些Tablet工具条的功能:

光笔工具:在地图上创建新的ink图形

高亮工具:在地图上绘制透明ink用于高亮显示要素

清除工具:从地图上清除多余的墨水(ink)笔划

完成墨水草图命令:创建新的墨水图形元素

清除墨水草图命令:清除所有的墨水图形

添加墨水到草图命令:通过ink来完成目前的编辑任务(如创建新的要素)

识别墨水图形命令:将选中的通过光笔工具创建的ink图形转换为文本元素

重新激活选中墨水图形命令:从选中的墨水图形创建新的墨水草图,以便可以通过光笔或高亮工具进行编辑

查找墨水图形工具:在地图或空间数据库中基于识别的文本查找墨水图形。

TabletPC的客户化



第八章GIS的未来趋势

GIS的未来趋势

GIS将不断的发展和变化。它的发展不仅基于一系列基本的GIS的特性,而且还依赖于计算机和Internet技术的不断发展。下面是一些重要的影响因素:



GIS系统越来越相互关联,地理知识正在网络上共享。用户可以在系统间共享和复制更新,InternetGIS将会更加成熟和被广泛使用。日益增强的分布式GIS的功能将被看作是一个完整的GIS平台的重要组成部分。

在过去的几年里,GIS门户已经被用于许多机构,提供对分布信息的集中式访问。随着时间的推移,GIS门户将会有助于分布式GIS数据管理和使用。

独立GIS系统将会基于网络以一种松散耦合的方式相互连接。Internet很快将成为统一访问地理知识的框架。这些地理知识依然由许多独立的GIS结点创建、维护和发布。在过去的十年里,这个远景曾被作为国家或全球空间基础设施(SDI)详细描述过。实施这个远景的技术正在成熟。

GIS系统具有固有的分布式的特性。用户相互依靠彼此的信息共享和使用。分布式GIS的内涵远不只是分布式的GIS数据库和数据复制,而是所有GIS任务的分布式协作。除了GIS发布和数据共享之外,用户还可以通过Internet来编辑、应用和管理地理知识。

最后一章主要是展现GIS发展的主要趋势,以及近年来GIS的发展和演化过程。AcrGIS平台正是为了顺应GIS的未来发展趋势而构建和发展的。

智能化GIS

“GIS正在从数据库方法向知识方法演变。”——ESRI总裁JackDangermond,2003年7月。

历史上,人们通常用抽象化的方式来表达和共享知识。这些抽象化的方式,汇总了大量知识,用于表达人类的经验和理解。这些抽象化的结果——如:文字、象形文字、语言、数学、音乐,以及艺术品、绘画、肖像、地图等——被用来一代一代地进行文化和文明的记录与交流。

人类通过抽象化的方式表达和交流人们对地球以及整个环境的理解。地理为关于“位置”的抽象和表达提供了一种通用的框架。

在数字计算时代,我们已经开始获取我们所知的任何事物并通过网络(互联网)进行共享。这些知识很快被数字化。同时GIS正在不断发展,帮助人们更好地在各个层面上理解、表达、管理和沟通整个地球,并使之成为一个系统。





地图和全球可视化



地理数据集



空间处理和工作流模型



数据模型



元数据



这五个元素,与完整的GIS软件一起构成了建立智能化地理信息系统的基石。智能化GIS使得封装数字化的地理知识成为可能。这些元素也为应用GIS战胜诸多挑战提供了基础(例如,效率的提高,智能的有见地的决策,有科学依据的规划,资源计算、评估和交流等)。

GIS将地理信息抽象为五种元素用于表达地理知识。这些元素与高级软件一起组成了构建智能化GIS的基石



ArcGIS和geodatabase可以很好地支持这种基于知识的方法论。他们可以帮助创建、使用、管理和共享所有五种地理知识元素。

分布式GIS

长期以来,GIS用户在数据共享和使用上依靠相互协作。今天,大家已经达成共识,地理信息系统中使用的数据和属性来源于多种组织机构。每个GIS组织开发自己地理信息系统中信息内容的一部分,但不是全部,至少一些层来自于组织的外部。

GIS标准的演化



WebServices提供了一种新的多系统集成的互操作方式

GIS最重要的标准将以不断发展的计算机和网络标准为基础。Internet在分布式GIS中扮演了至关重要的角色并将持续下去。不断发展的信息技术框架也将会起到巨大的帮助作用。基于XML和SOAP的WebServices框架帮助独立的系统通过网络相互协作。无线通讯技术和基于浏览器访问的集中式的企业级应用架构的发展都意味着,对用户来说,GIS可以分布在任何计算机环境中。

分布式GIS应用范围不断扩大

大多数GIS数据共享还会基于文件共享和数据复制FTP下载的这两种简单机制。然而,数据共享框架将不断发展。例如,应用ArcIMS或类似技术广泛实施的GIS网络发布应用。而且,部署GIS目录门户的应用也不断增加,提供了通过GIS站点集中访问发布的地理信息的途径。所有这些分布式GIS应用将会非常重要。

除了GIS数据的发布和使用,GIS用户也会在分布式GIS数据管理和空间处理方面加强合作。一些组织将会建立越来越复杂的企业级系统来支持所有这些应用,其他的组织会根据他们的特定需要实施部分的应用。





GIS系统架构不断发展,基于Internet的分布式趋势也越来越明显



GIS软件技术的持续发展,必然提供对高级应用的支持。然而也必须提供足够的灵活度,支持完整的各个层面GIS应用的实施。



InternetGIS不断发展的使用模型

分布式GIS技术的远景

许多组织依靠相互协作的GIS——构建,并维护最新的,多尺度的,连续的地理信息。这个过程不是作为单一组织的独立行为,而是依靠多组织的相互协作。

目前,大多数组织建立和维持着自己的地理内容。虽然组织之间的信息类型差别很大,但大多开始于相同的基础数据集,并不断更新、丰富以满足特定的需求。



为达成这一目的,一个方式就是建立一个GIS组织的分布式网络,每个组织拥有一部分数据,并有数据共享的责任共同建立一个共享数据库。

GIS数据库应该是多用途的,并坚持具有共同的表现形式和内容的指导方针。每个参与者都必须使用本地GIS去建立、维持、分享和出版特定区域或特定专题的GIS数据。

协作式GIS对联合并集成独立的数据提供者,构成一个GIS网络迈出重要的一步。GIS网络将独立的个体连接成为一个整体(例如:为一个地方政府、州、国家乃至世界维护一个完整的地理信息数据)。用户还希望构建一个框架,可以通过Internet进行更新和共享,用以维护一个能够保持同步复制的智能GIS数据。

达到这一预想需要六个基本的GIS技术:

1.开放的、多用途的GIS数据管理技术。地理信息必须被构建和维护,并可重复利用。地理信息必须通过被广泛接受的GIS数据格式进行共享。

2.基础信息采用通用的数据模型(内容标准)。数据的互操作性是必需的。用户可以建立基本的可重用的GIS数据库模式,并在基本的数据模型之上增加专题数据要求。

3.强大的、完整的GIS工具用于创建和生产地理信息。例如,数据生产和编辑、数据转换、空间处理、元数据建档和编目、绘图和制图。GIS桌面将继续成为这项工作的主要平台。

4.基于网络的数据管理和分发框架。基于www的GIS服务器、GIS网络和GIS门户技术将提供一个标准的广泛参与的GIS框架。GIS门户将扮演一个重要角色。这些将基于被广泛采用的计算机标准建立,如WebServices。

5.广泛采用最好的GIS实践、方法和流程的实际应用。为了鼓励广泛的参与,协作式GIS必需满足GIS用户完成工作的方式。用户在协作和参与中,应重在实践,而非前沿理论。GIS标准必须是来源于实践并被实践检验和广泛接受的方法。

6.采用已被证明的工业标准的应用。分布式、协作式GIS要求采用被广泛接受和使用的信息技术。

这些和其他GIS远景可以通过完整的GIS技术进行配置,如,智能GIS数据库、完整的桌面GIS、嵌入式GIS、服务器GIS和移动GIS,以支持这些概念和要求。



GIS的发展远景







2









献花(0)
+1
(本文系gymrlwu78v8...首藏)