GIS 空间关系:九交模型

前言

空间关系用于描述几何对象之间的拓扑结构,如何确定空间对象位置及其空间关系是GIS首要解决的问题。而九交模型的提出和实现为GIS空间关系的确定奠定了基础。

1. 九交模型起源

九交模型诞生于论文《Point-Set Topological Spatial Relations》,这篇由Max J. Egenhofer和Robert D. Franzosa于1991年发表在International Journal of Geographical Information Systems的奠基性论文,首次系统性地提出了九交模型(9-Intersection Model),为GIS空间关系分析建立了严格的数学框架。

2. 九交模型基本概念

九交模型英文叫做9-Intersection Model,它主要通过分析几何对象内部 (Interior)、外部 (Exterior)和边界(Boundary)交集情况来确定几何对象之间的空间拓扑关系。

使用简单几何要素描述其内部、外部及边界情况如下:

  • 要素:内部是点,边界是空集,外部是平面上除点以外的所有其他部分。
  • 线 要素:内部、边界和外部不容易划分,内部是以端点为界限的线的那一部分,边界是线性要素的端点,外部是平面中除内部和边界外的所有其他部分。
  • 要素:内部是以环为边界的里面的那一部分;边界是环本身;外部是边界外的一切。

图片来源于Yukon(禹贡)数据库

为了能够唯一描述每一种简单几何对象的空间关系,空间实体的"补"作为空间实体的外部被引入空间关系描述框架 ,它同空间实体的边界、内部构成了简单空间实体的基本组件。假设空间实体 A 的边界为 A、内部为 A°、"补"为 A-,空间实体 B 的边界为 B、内部 B°、"补"为 B-,它们两两之间的交集就构成了空间关系描述的 9元组框架。

对于任意两个几何对象A和B,它们的拓扑关系可以用一个3×3的矩阵表示:

内部每一元素的取值都有空(∅)与非空(¬∅)两种可能。根据排列组合原理,9个元素项共有29= 512 种可能的取值,也就是说两个简单空间实体之间存在 512 种关系可能,当然,绝大部分空间关系可能没有意义。

对上图中九交矩阵元素含义表示如下:

  1. A°∩B°:两对象内部的交集
  2. A°∩∂B:A内部与B边界的交集
  3. A°∩B⁻:A内部与B外部的交集
  4. ∂A∩B°:A边界与B内部的交集
  5. ∂A∩∂B:两对象边界的交集
  6. ∂A∩B⁻:A边界与B外部的交集
  7. A⁻∩B°:A外部与B内部的交集
  8. A⁻∩∂B:A外部与B边界的交集
  9. A⁻∩B⁻:两对象外部的交集

而在实际应用中常见的空间关系模型有以下几种,这些关系为:

  1. 相离(Disjoint):是指两对象不相交,即在对象的内部、外部和边界均没有交集。
  2. 相接(Meet/Touch):是指两对象边界相交。
  3. 重叠(Overlap):是指两个对象存在部分交集。
  4. 相等(Equal):是指两个对象完全重合。
  5. 包含(Contains):是指其中一个对象是另一个对象的子集。
  6. 被包含(在内部)(Within):是指B包含A,即几何对象A在几何对象B的内部。
  7. 覆盖(Covers):是指两个对象A和B,其中对象B是对象A的子集。
  8. 被覆盖(CoveredBy):是指两个对象A和B,其中对象A是对象B的子集。

3. 九交模型现实意义

九交模型在GIS和空间数据库中具有重要的现实意义。它不仅为空间关系的精确描述提供了理论基础,还支持空间查询、分析、推理、数据质量检测、多源数据融合、自然语言表达、不确定性处理和标准化等应用。随着GIS技术的不断发展,九交模型的应用范围将进一步扩大,为更多领域的空间信息处理提供支持。

参考资料

  • 九交模型论文:https://www.tandfonline.com/doi/epdf/10.1080/02693799108927841?needAccess=true
  • Yukon(禹贡)数据库:https://yukon.supermap.io/2.0/demos/demo_de9im.html

OpenLayers示例数据下载,请回复关键字:ol数据

全国信息化工程师-GIS 应用水平考试资料,请回复关键字:GIS考试

【GIS之路】 已经接入了智能助手,欢迎关注,欢迎提问。

欢迎访问我的博客网站-长谈GIShttp://shanhaitalk.com

都看到这了,不要忘记点赞、收藏 + 关注

本号不定时更新有关 GIS开发 相关内容,欢迎关注 !

相关推荐
烟袅14 分钟前
作用域链 × 闭包:三段代码,看懂 JavaScript 的套娃人生
前端·javascript
风止何安啊33 分钟前
收到字节的短信:Trae SOLO上线了?尝尝鲜,浅浅做个音乐播放器
前端·html·trae
抱琴_40 分钟前
大屏性能优化终极方案:请求合并+智能缓存双剑合璧
前端·javascript
用户4639897543240 分钟前
Harmony os——长时任务(Continuous Task,ArkTS)
前端
fruge41 分钟前
低版本浏览器兼容方案:IE11 适配 ES6 语法与 CSS 新特性
前端·css·es6
颜酱1 小时前
开发工具链-构建、测试、代码质量校验常用包的比较
前端·javascript·node.js
颜酱2 小时前
package.json 配置指南
前端·javascript·node.js
todoitbo2 小时前
基于 DevUI MateChat 搭建前端编程学习智能助手:从痛点到解决方案
前端·学习·ai·状态模式·devui·matechat
oden2 小时前
SEO听不懂?看完这篇你明天就能优化网站了
前端
IT_陈寒2 小时前
React性能优化:这5个Hooks技巧让我减少了40%的重新渲染
前端·人工智能·后端