ArcView GIS教程

  • 格式:doc
  • 大小:1.74 MB
  • 文档页数:59

ArcView简介ArcView文档项目文档视图文档表格文档图表文档地图图版文档空间查询与分析事件主题与地址匹配ArcView简介∙ArcView概况∙ArcView可以做什么∙ArcView的用户界面及组成ArcView概况ArcView是世界上最大的GIS软件厂商美国环境系统研究所(ESRI)的桌面GIS软件。

从ArcView的2.0版以后,ArcView就广泛受到GIS领域的重视。

ArcView2.0版给自己的定位是“基于GIS的桌面制图系统”,桌面制图系统是指利用ArcView可以方便地制图各种专题地图,而所谓“基于GIS”则指ArcView2.0具有较强的空间查询和分析功能,利用ArcView2.0的GIS功能可以使用桌面制图更加灵活。

到ArcView3.0,数据编辑、空间分析和可视化功能大大得到加强,具有了丰富的GIS功能,因此,ESRI 将其定位发展到桌面地理地理信息系统,ArcView3.0的启动封面上的标题也从原先的“ArcView”改为“ArcView GIS”。

ArcView地理信息系统具有如下的特点:∙跨平台:ArcView是利用xxx开发出来的跨平台,在Window和Unix 上均可运行。

∙面向对象:ArcView是由应用、视图、表格、图表和图版等对象组成。

甚至进行二次开发的每个Script都可以当作对象来操作。

∙开放性:包括系统用户界面的开放性、程序运行环境的开放性和数据管理的开放性。

∙系统用户界面的开放性: ArcView的菜单、按钮、工具条、窗口等都可以很容易地实现用户定制。

同时ArcView内置了面向对象的程序设计脚本语言Avenue,可以借此进行更彻底的用户化定制。

∙程序运行环境的开放性:利用内置的Avenue脚本语言,可以直接调用操作系统执行文件;在Windows环境下可以通过DDE和DLL与外部程序通讯,在Unix环境下可以通过IAC与外部程序通讯。

∙数据管理的开放性:空间数据可以直接接收DXF、DWG、TIF、JPEG、BMP、ArcInfo系列数据,通过Avenue编程,可以接收其它空间数据;专题属性数据可以直接接收DBF文件数据,通过ODBC可以与Oracle、INFORMIX、Sybase等相联。

用ArcView可以做什么以下是利用ArcView可以完成的一些典型的任务:∙显示和查询ARC/INFO地理信息系统数据。

∙显示和查询表格数据,并与空间数据相关联。

∙通过SQL检索外部数据库的数据,并与空间数据关联。

∙实现地址匹配,即根据文字描述的地址信息找到地图上对应的地物。

∙查询任意地物特征的属性。

∙根据属性数据对空间数据进行分类表达并显示。

∙根据属性选择空间地物。

∙根据地物的属性创建饼形图、直方图等图表来对比地物的属性。

∙对地物的属性特征进行统计和分析。

∙根据地物之间的邻近关系选择地物。

∙根据地物间的位置重合关系选择地物。

∙地图的排版和打印。

∙地图排版可输出供其它程序使用。

∙根据需要,实现ArcView的用户定制。

ArcView应用的用户界面和组成ArcView应用的组成见图1。

图1:ArcView应用的组成ArcView文档文档(Doc):ArcView支持多种信息的表达方式,每种信息类型称之为文档。

文档窗口(DocWin):每种文档信息都出现在一个独立的窗口中,将这个窗口称之为文档窗口。

文档用户界面(DocGUI):每个文档窗口决定了这类信息的用户界面(包括各自独立的菜单栏、按钮条和工具条)和用户与这类信息进行交互的方式。

用户界面:∙菜单栏∙按钮条∙工具条∙文档窗口标题、大小、位置∙各GUI要素所对应的操作(如菜单、按钮、工具命令)决定用户与文档进行交互的方式。

ArcView的文档∙∙∙∙∙∙∙ArcView项目每个ArcView的应用只能有一个当前项目和项目管理窗口。

ArcView的项目是一类文档,但ArcView项目双管理多种文档,包括:视图文档、表格文档、图表文档、地图图版文档和Avenue脚本文档。

以下逐项介绍组成ArcView 项目的五类文档。

视图文档如图1所示,ArcView的视图文档由目录表和地图显示区组成。

目录表说明当前视图文档中显示哪些地理信息图层,每个图层在ArcView中被称之为一个主题。

地图显示区用于显示反映各个主题的地理特征。

利用视图文档的目录表,可以完成以下任务:∙打开或关闭主题显示:通过点击目录表主题名称左侧的检查框,可以决定地图显示区中是否显示对应主题的地理特征。

关闭主题只对显示起作用,而不会从视图文档中删除该主题。

∙切换主题的激活状态:通过点击目录表中的主题项,可以切换主题的激活状态。

处于激活状态的主题才可以进行选择、信息查询和空间分析等操作。

∙改变主题在地图显示区的显示顺序:可以通过在目录表中拖曳主题项来决定各主题在地图显示区中的显示顺序。

点状主题应该在面状主题之后显示,因此就可以通过目录实现这一点。

∙编辑主题图例:ArcView的目录区内置了图例编辑器,双击目录表中的主题,就可以激活图例编辑器。

图例可以是单一的符号,也可以根据主题的属性数据进行分类,得到分类图例。

应用图例编辑器的修改,地图显示区内主题的显示方式就会自动调整。

图2:视图文档的用户界面视图文档的GUI如图2所示。

利用视图文档的GUI可以完成以下对于主题的操作:∙(1) 维护主题目录表:通过增加或删除主题,决定地图显示区显示哪些主题的地理特征。

∙(2) 修改主题的属性:选择Theme->Properties,可以激活主题属性编辑窗口,利用它可以定义只显示当前主题中符合特定条件的图形要素、决定主题的注记内容和显示方式、锁定主题、为主题建立指向图片、声音、其它ArcView文档、其它ArcView项目等的热链接等。

∙切换主题的编辑状态:选择Theme->Start/Stop Editing切换主题的编辑状态。

∙地图显示的导向:选择菜单栏、按钮条和工具条的操作,可以实现图形的缩放、漫游等。

∙主题特征的信息检索:利用工具栏提供的信息检索工具,可以通过点取方式,即时地查看主题图斑的属性信息。

∙主题特征的选择:ArcView提供了三类主题特征选择方式:图形交互式选择、属性信息选择方式和基于主题间空间关系的选择。

图形交互方式选择是指用户在地图图形显示区圈定范围,系统自动选择落在这一范围内的主题特征;属性信息选择是指用户可以以主题的属性信息为条件,以“根据实例查询(QBE)”检索所对应的主题特征;基于主题间空间关系的选择则指根据不同主题特征间的邻近关系、位置重合关系,从一个主题的特征检索另一个主题的特征,例如检索在公路0.25公里范围内有多少个加油站。

表格文档表格文档事实相当于ArcView系统中内置的一个小型数据库管理系统。

GIS系统强调空间数据和属性数据的综合管理和分析,但是目录多数GIS软件虽在空间数据管理方面的功能都有一定的规模和水平,却往往忽视了与空间数据相关的属性数据管理和分析功能的开发,而ArcView在这方面做得比较好。

利用ArcView的表格文档,可以完成数据库管理和数据分析的全部工作,包括增加、修改、删除数据库记录、修改数据库文件的结构(字段)、数据记录的排序、计算字段的值、字段值的统计的分析、数据库文件的输入和输出、表与表之间的关联和联接等。

表格文档可以自动管理两类数据表,一类是主题属性表,另一类是外部数据表。

表格文档的数据表是DBF文件格式的,通过ODBC和SQL,或通过Avenue程序设计可以将其它外部数据库的数据表加载到ArcView中来。

图表文档图表文档提供了一种属性信息的图形化对比分析的信息表达方式。

因此,它依赖于表格文档。

只有ArcView项目中存在表格文档,无论它是外部数据文件、还是主题数据表,才可以建立和使用图表文档的内容。

ArcView提供了饼形图、水平直方图、柱状图、曲线图、散点图、面域图等形式来形象化地表达数据之间的对比关系。

这几种表达方式之间可以随时进行转换。

同时编辑图表的功能也非常丰富,图例文字、图例的位置的排列、分组说明文字、坐标间距和坐标轴文字、图表标题等都可以随时修改。

图4是ArcView图表文档的用户界面。

图4 ArcView图表文档的用户界面地图图版文档利用地图图版文档,用户可以制作专题地图。

地图图版文档中可以包括主题图形、数据表、图表图形、其它图形和文字要素。

ArcView还提供了指北针、地图图版模板等辅助制图工具。

在专题地图制作过程中,ArcView可以根据图版中的主题数据自动建立图例、比例尺等制图要素。

用户还可以自定义地图图版模板。

所有制图要素都是动态和可编辑的。

利用这些工具,用户可以制作出各种专题地图供输出。

图5是ArcView地图图版文档的用户界面。

图5 ArcView地图图版文档的用户界面Avenue脚本文档Avenue是ArcView内置的面向对象的专用程序设计脚本语言。

在Avenue中对象结构体系中包括了ArcView系统中所有可操作的文档和其它要素。

每个对象都有一系列的属性和方法。

几乎所有的ArcView操作都可以通过Avenue脚本语言来实现,而且事实上ArcView本身的许多功能也是通过Avenue脚本实现的。

这就为用户建立完全定制化的应用提供了非常有效的工具。

Avenue中对象属性的描述与在ArcView系统环境中保持一致,而对象方法的命名统一采用动宾结构,动词部分使用的主要有Set、Get、Return。

因此,很容易通过语句了解脚本的功能。

由于Avenue是一个完整的面向对象和服务于ArcView的程序设计语言,它不仅包括常规程序设计语言的基本要素,还包括GIS功能实现方面的内容,因此学习起来需要花费一定的功夫。

下面我们不妨来看看Avenue脚本的例子。

我们可以用("We are the World","消息盒")来在ArcView环境中显示一个消息盒,显示“We are the World”。

在该脚本中,MsgBox 是消息盒对象,Info是消息盒对象的方法,“We are the World”是要显示的内容,而“消息盒”是消息盒的标题。

我们还可以用户如下命令打开名称为“FirstView”的视图文档:av.GetProject.FindDoc("FirstView").GetWin.Open另外,Windows环境下的ArcView的Avenue还提供了通过DLL调用Windows API 函数,和通过DDE与外部程序通讯的方法,这大大增强了ArcView应用的二次开发的深度。

VB和Avenue成为开发ArcView应用的最佳组合。

Avenue还有许多内容,这里无法详细描述。