地理信息系统数据管理和模型的实现,特别是逻辑模型的实现,依靠用户对系统功能的正确调用来完成。因此必须使系统和使用者之间相互“理解”。事实上是系统设计者与使用者沟通,使用者要明确如何发出指令,使系统完成特定的应用任务,系统需要能够解释使用者发出指令的意义以及完成正确的操作。这就遇到两个问题:①使用者不可能完全了解系统的底层结构和具体算法;②使用者的问题是灵活多变的,系统不可能“事先”了解使用者的所有问题以备提问。这就需要建立一套独立于系统物理结构和计算机之上的逻辑规则,使用者基于这种逻辑规则组织自己的应用问题和分析模型,系统则依据逻辑规则将用户的问题和模型分解成相应的基本操作步骤加以完成,这套逻辑规则必须为系统设计者和使用者双方理解和采用。这些规则可称为地理信息系统的逻辑设计模型。它们包括地理信息系统数据的基本内涵、基本操作公理、地图集合定义,进而可将所有地图及地图之间的操作表示为逻辑表达式,然后分解为基本操作予以完成。
一、数据模型
地理信息系统数据包括三方面的内容:①数据所处的位置,以及一定地理坐标下的一组坐标表示;②数据之间的空间拓扑关系;③数据所代表的与空间位置无关的地理意义,即通常所说的属性。如前所述,地理信息系统将地理要素抽象为点、线、面(区域)实体,地理实体由属性标识。空间相邻且具有同一类属性或属性集合的点、线和区域实体可以构成数据平面。
二、操作公理
基本的操作公理包括:①处于相同或不同的数据平面上的数据可依据其空间关系和属性进行运算;②数据可依据其空间关系扩展到相邻区域;③地理信息系统数据之间的逻辑运算基于布尔代数;④数据可以通过计数、量算、逻辑运算等操作重新标识,重新标识的数据可与原始数据同样参加进一步的运算。
布尔逻辑运算用于数据恢复(按一定条件进行的数据检索)的主要作用是:按属性数据的组合条件来检索其它属性项目或图形数据,实际上就是一个逻辑选择过程。布尔逻辑用AND、OR、XOR、NOT等运算去检查特定条件是真还是假(表7—1)。
表7-1逻辑运算的真与假
*表中1表示“真”,0表示“假”。
图7-2(图略)表示简单的布尔逻辑运算结果。如果集合A是具有a属性的集合,集合B是具有b属性的集合,那么语句AANDB,AORB,AXORB,ANOTB就恢复了图7—2中用阴影表示的属性组合项目。再用一个例子来说明,土壤制图单元数据库中,每个单元都可能包括土壤结构、pH值等属性。假设集合A为表层土壤是粘性土结构的所有制图单元的集合,集合B是表层土壤pH值大于7.0的所有单元的集合。那么逻辑运算语句的作用如下:
X=AANDB
检索出全部土壤结构为粘性土且pH值大于7.0的制图单元;
X=AORB
检索出全部土壤结构为粘性土以及土壤pH值大于7.0的制图单元,其中包括两个条件都满足的那些制图单元;
X=AXORB
检索出全部土壤结构为粘性土以及土壤pH值大于7.0的制图单元,但不包括两个条件都满足的那些制图单元;
X=ANOTB
检索出全部土壤结构为粘性土以及土壤pH值小于7.0的制图单元。
这些逻辑运算都是按属性数据的特定组合条件去检索出相应的图形数据。也可以按同样组合去检索相应的属性项目列表等。
应注意的是布尔逻辑运算不满足交换律,这是与数学运算不同之处。AANDBORC这一逻辑运算表达式的结果(图7-2)取决于“AND”相对于“OR”的优先权,经常用圆括号来明确指明运算顺序。上例中,如果加入一个表示排水不良的土壤制图单元集合C,那么
X=(AANDB)ORC
这个表达式就是恢复出土壤结构为粘性土而且pH值大于7.0的所有制图单元再加上排水不良的那些制图单元;而表达式
本文标题:地理信息系统逻辑设计模型
手机页面:http://m.dljs.net/dlsk/gis/4749.html
本文地址:http://www.dljs.net/dlsk/gis/4749.html