第三节 基于对象的空间信息模型
三、域模型和对象模型的集成
虽然系统的面向对象方法和基于对象的空间数据模型在概念上很相似,但两者之间仍然有着明显的差别。实现基于对象的模型并不一定要求运用面向对象的方法;另一方面,面向对象方法既可以做为描述基于域的空间模型的框架,也可以做为描述基干对象的空间模型的框架。对于基于对象的模型这是显然的,而对于基于域的模型同样可以用面向对象的方法来构建。实际上,在本章的开始,便根据域函数对象的性质和行为来描述域,包括一系列作用于域的操作,这正是面向对象的方法。
域和对象可以在多种水平上共存。我们已知面向对象方法可以定义域模型;相反,基于对象方法中有些类型可能是域。因此,对于空间数据模拟来说,基于域的方法和基于对象的方法并不互相排斥。有些应用可以很自然地应用域来建模,如前面例子中提到的某一区域的气候属性变化就适合于用域建模;但是,既使是在这种情况下,城模型也并不是适合所有情况。例如,如果采集降雨数据的各个点在空间上很分散且分布无规律,加之这些采集点还有各自的特征,那么,一个包含两个属性——位置和平均年降雨量的对象也许更适合于区域气候属性变化的描述。
因此,基于域的模型和基于对象的模型各有长处,应该恰当地综合运用这两种方法来建模。不论是在本章述及的地理信息系统应用模型的高层建模中,还是在第二章讲述的数据结构设计中,还是地理信息系统系统的应用中,都会遇到这两种模型的集成问题。