学GIS空间数据库的时候,拓扑方面内容笔记

拓扑的定义

拓扑是研究几何图形或空间在连续改变形状后还能保持不变的一些性质的一个学科。它只考虑物体间的位置关系而不考虑它们的形状和大小

“拓扑”就是把实体抽象成与其大小、形状无关的“点”,而把连接实体的线路抽象成“线”,进而以图的形式来表示这些点与线之间关系的方法,其目的在于研究这些点、线之间的相连关系。表示点和线之间关系的图被称为拓扑结构图。拓扑结构与几何结构属于两个不同的数学概念。在几何结构中, 我们要考察的是点、线、面之间的位置关系,或者说几何结构强调的是点与线所构成的形状及大小。如梯形、正方形、平行四边形及圆都属于不同的几何结构,但从拓扑结构的角度去看,由于点、线间的连接关系相同,从而具有相同的拓扑结构即环型结构。也就是说,不同的几何结构可能具有相同的拓扑结构。

如三角形变成四边形、原型、环形,角度、长度、面积、形状等等都很可能发生变化。此时,不必考虑它们的形状和大小(如长度、面积、形状等等这些),只考虑物体间的位置、结构关系,只专注于在连续改变形状后还能保持不变的一些性质(如他们都是一个圈),这就是拓扑学。

拓扑学历史

拓扑英文名是Topology,直译是地志学,最早指研究地形、地貌相类似的有关学科。

几何拓扑学是十九世纪形成的一门数学分支,它属于几何学的范畴。有关拓扑学的一些内容早在十八世纪就出现了。那时候发现的一些孤立的问题,在后来的拓扑学的形成中占着重要的地位。

  • 1679年德国数学家莱布尼茨提出的名词 拓扑学,起初叫形势分析学,他在17世纪提出“位置的几何学”(geometria situs)和“位相分析”(analysis situs)的说法。

  • 1736年欧拉在解决了七桥问题,给当时数学界引起很多思考;

  • 1750年欧拉在发表了多面体公式;

  • 1833年高斯在电动力学中用线积分定义了空间中两条封闭曲线的环绕数。

  • 1847年 J.B.利斯廷根据希腊文τπο和λγο(“位置”和“研究”),提出Topology这一数学名词,即拓扑学。Topology,直译是地志学,最早指研究地形、地貌相类似的有关学科。

  • 1851年左右,即19世纪中期,德国数学家黎曼在复变函数的研究中提出了黎曼面的几何概念,并且强调为了研究函数、研究积分,就必须研究形势分析学,从此数学界开始了现代拓扑学的系统研究。

不同学科对拓扑的定义不尽相同

集合拓扑:拓扑是集合上定义的一种结构

点集拓扑学

点集拓扑学(Point Set Topology),有时也被称为一般拓扑学(General Topology),是数学的拓扑学的一个分支。

它研究拓扑空间以及定义在其上的数学结构的基本性质。这一分支起源于以下几个领域:对实数轴上点集的细致研究,流形的概念,度量空间的概念,以及早期的泛函分析。

点集拓扑学定义

拓扑是一个包含一个集合X连同和X的子集族Σ(称为开集系)的二元组(X,Σ),它满足如下三个公理:

  1. 开集的并集是开集。

  2. 有限个开集的交集是开集。

  3. X和空集∅是开集。

设T为非空集X的子集族。若T满足以下条件:

  1. X与空集都属于T;

  2. T中任意两个成员的交属于T;

  3. T中任意多个成员的并属于T; 则T称为X上的一个拓扑。具有拓扑T的集合X称为拓扑空间,记为(X,T)。

也等价于:

  • X和空集都属于T;

  • T中任意多个成员的并集仍在T中;

  • T中有限多个成员的交集仍在T中。

此时称称T中的成员为这个拓扑空间的开集。最普通的例子便是实数集上的距离拓扑,这与我们通常对实数的认识相同。最简单(粗)的拓扑为平凡拓扑,它只包含T本身和空集,最复杂(细)的拓扑的构成开集为T的所有子集。

同一个集合X,若指定不同的拓扑,则构造出不同的拓扑空间。凡属于X的子集称为X的一个关于T的开子集,即开集。开子集关于全集的补集,称为闭子集,即闭集。一个集合是不是开/闭子集,取决于拓扑的指定。由定义,X本身和空集是既开又闭的子集。

本质上,拓扑就是要给一个集合指定一个几何结构,然后这个集合就成了一个我们可以研究的空间。比如,有了拓扑和开集的定义后,我们就可以摆脱大一数学分析的ε-δ来给出更一般的连续性定义:设A和B是两个拓扑空间,A到B的映射f称为连续的,若任何B的开集在f下的原象是A的开集。这样我们对于函数的研究将不再局限于实数,而是搬到更一般的拓扑空间内了。

平面拓扑关系

对于一般的拓扑关系,一图概括如下

Egenhofer和Franzosa在1991年共同撰写的论文Point-Set Topological Spatial Relations,为空间拓扑(九交模型)奠定了重要基础。

依据集合论,作者对于点集拓扑空间定义了以下基本概念,以描述空间对象:

  • Interior(内部)  :对于  , interior指的是所有包含  的开放集合的并集。对于空间对象,可以认为是空间对象的内部。

  • Closure(闭包)  :对于  , closure指的是所有包含  的闭集合的交集。对于空间对象,可以认为是空间对象整体。

  • Boundary(边界)  :对于  , boundary指的是Y的闭包与Y的补集的闭包的交集,即  。对于空间对象,可以认为是空间对象的边界。

简而言之,一个空间对象可定义为由内部+边界构成。

根据以上三条定义可知以下两命题:

  1.  。即:内部和边界的交集为空。

  2.  。即:内部和边界的并集为整个对象。

九交模型

在一个平面R2上,两个对象A和B之间的二元拓扑关系要基于以下的相交情况:A的内部(A°)、边界(αA)和外部(A-)与B的内部(B°)、边界(αB)和外部(B-)之间的交。

考虑取值有空(0)和非空(1),可以确定有256种二元拓扑关系。对于嵌在R2中的二维区域,有八个关系是可实现的,并且它们彼此互斥且完全覆盖。这些关系为:相离(disjoint)、相接(meet)、交叠(overlap)、相等(equal)、包含(contain)、在内部(inside)、覆盖(cover)和被覆盖(covered by)。

九交模型

三维空间拓扑关系

  • 点-点空间关系2种:相离、相等;

  • 点-线空间关系3种:相离、相接、包含于;

  • 点-面空间关系3种:相离、相接、包含于;

  • 点-体空间关系3种:相离、相接、包含于;

  • 线-线空间关系7种:相离、相交、交叠、相等、相接、包含于、包含;

  • 线-面空间关系5种:相离、相接、进入、穿越、包含于;

  • 线-体空间关系5种:相离、相接、进入、穿越、包含于;

  • 面-面空间关系10种:相离、相接、交叠、相等、包含于、包含、覆盖、被覆盖、穿越、被穿越;

  • 面-体空间关系8种:相离、相接、交叠、进入、包含于、包含、穿越、被穿越;

  • 体-体空间关系8种:相离、相接、进入、相等、包含于、包含、穿越、被穿越。

基本空间拓扑关系的计算

点与直线的关系计算

直线方程:

Ax+By+C=0

A=y1-y2,

B=x1-x2,

C=y2x1-y1x2

令S=Axi+Byi+C

  • 当S<0 点在顺时针方向上;

  • 当S=0 点在直线上;

  • 当S<0 点在逆指针方向上。

两条直线关系的计算

直线方程:

Ax+By+C=0

Ex+Fy+G=0

当FA-EB=0时,两条直线的交点不存在;否则,交点坐标为:

xi=(GB-FC)/(FA-EB)

yi=(CE-AG)/(FA-EB)

空间目标之间的拓扑关系推理

两条线的直线段之间基本空间拓扑关系的推理

点与其他类型空间目标之间的拓扑关系决策树

线与面之间的全域空间拓扑关系决策树

面与面之间的全域空间拓扑关系基本类型的决策树

空间度量关系

度量关系是在欧氏空间(Euclidean Space)(Blumenthal,1970)和度量空间(Metric Space)(Dhage,1992)上进行的操作,它是一切空间数据定量化的基础。它包含长度、周长、面积、距离等定量的度量关系,其中最主要的度量空间关系是空间对象之间的距离关系。

欧几里德距离定义如下(Kolountzakis and Kutulakos,1992):

曼哈顿距离是两点在南北方向上的距离加在东西方向上的距离(Wu et al.,1987),即:

空间顺序关系及描述方法

锥形模型

每区域赋予东、南、西和北,为得到更精确的方向关系可对其再进行细分得8或16方向。

最小外接矩形模型

该模型通过延伸目标的MBR的边,将空间划分为9个区域,分别表示为北、东北、东、东南、南、西南、西、西北和目标MBR所在的中心方向。

Freksa-Zimmermann模型

以直线段为参考的定性空间方向模型:以直线为空间参考目标,把二维空间分解为15个方向区域。

以点为参考目标的基本空间方向

点A与点B的空间方向关系可以用向量AB与正北方向的夹角(顺时针)来描述。

以直线为参考目标的基本空间方向

点与线或面之间的空间方向关系

线与点、线或面之间的空间方向计算与描述

面与点、线、面之间的空间方向关系计算与描述

  • 点与点之间距离&点与线之间距离:dPL(P,L)=min{d1,d2,…dn}

  • 线与线之间的距离:d(L1,L2)=min{d(P1,P2)|P1∈L1,P2 ∈L2}

  • 点与面之间的距离:

    • “中心距离”是点P与面A中几何中心或者重心之间的距离,

    • “最小距离”是指点P与面A中所有点之间距离的最小值,

    • “最大距离”是指点P与面A中所有点之间距离的最大值。

  • 面与面之间的距离

    • “中心距离”是指两个面状物体的质心之间的距离;

    • “最小距离”是指面A1中的点P1与A2中的点P2之间的距离的最小值;

    • “最大距离”是指面A1中的点P1与A2中的点P2之间的距离的最大值。

    • (a) 点A与点B之间的空间方向关系。

    • (b)点A与直线BC之间的空间方向关系,以角平分线L的方位表示。

    • (c) 用两条直线的中点代表代表其方位。

    • (a) 直线AB和直线CD的方向可用向量EF(E和F分别为两直线的中点)来描述。

    • (b)直线AB和点C的方向关系。

    • (c) 划分直线段AB的方向片,点C相对直线AB的关系可描述为点C在直线AB的哪个方向片中。

    • (d)直线AB和直线CD的方向可用向量EF(E和F分别为两直线的中点)来描述,或用向量ED和向量EC来定义。

    • (a) 方向线PS和PE定义了点A与线L之间的全域空间方向关系,点A与P1、P2、P3(中点)的连线定义了点A与不同直线段的局域空间方向关系。

    • (b)方向线PS和PE重和,说明点A被线L包围,这是全域空间方向关系,点A与P1、P2、P3、P4(中点)的连线定义了点A与不同直线段的局域空间方向关系。

    • (c)方向线PS和PE定义了点A与面B之间的全域空间方向关系,用方向线P1、P2把面域B分为3部分,每部分可以用该锥形的角平分线描述方向关系,这3部分的面积与面积B的总面积之比分别为B1、B2、B3。也可以用该锥形的每个角平分线在面内的长度与角平分线在面内的总长度之比L1、L2、L3来表示。

    • (d)方向线PS和PE重和,说明点A被面B包围,这是全域空间方向关系,面域不同和点A之间的局域空间方向关系描述方法与(c)同。

    • (a) 线ABCD与点E之间的全域空间方向关系为“相同”,直线段AB与点E之间的局域空间方向关系为“西”。

    • (b) 反映线与线之间的全域空间方向关系,直线段AB与线L2的每条直线段和线的任意子集之间都有局域空间方向关系。

    • (c) 线与面的全域空间方向关系和局域空间方向关系均可象(b)一样计算和描述。

    • (a) 面P与点C之间的全域空间方向关系为“相同”,面P的直线AB与点C之间的局域空间方向关系为“北”。

    • (b) 面P与直线EFG之间的全域空间方向关系和局域空间方向关系如图所示,前者为“东”、“相同”和“南”,而后者为“东”。

    • (c) 把区域栅格化,判断子区域与源目标的全域空间方向关系和局域空间方向关系。

转载本站文章《代数拓扑\集合拓扑\代数拓扑\拓扑关系\拓扑结构_笔记》, 请注明出处:https://www.zhoulujun.cn/html/theory/math/2019_0929_8164.html

代数拓扑\集合拓扑\代数拓扑\拓扑关系\拓扑结构_笔记相关推荐

  1. 自然语言语义分析研究进展_笔记

    自然语言语义分析研究进展_笔记 词语语义分析:确定词语意义,衡量两个词之间的语义相似度或相关度; 句子语义分析:研究包含句义分析和句义相似度分析两方面; 文本语义分析:识别文本的意义.主题.类别等语义 ...

  2. Android Studio基础_学校课程案例_笔记

    移动应用课程案例_笔记 开发环境搭建 Android Studio Genymotion 模拟器 案例 飞机大战三个控件 密码与用户登录 五个按钮 桌面台球-帧布局 用户登录-表格布局 图片-线性布局 ...

  3. 【微信_小游戏_canvas_基础_笔记1】

    微信_小游戏_canvas_基础_笔记1 game.js文件 s_1.js文件 你好! 这是我第一次使用 Markdown编辑器 所展示的欢迎页. 第一次分享学习经历. 学习的是 joke_shi 教 ...

  4. html,xml_网页开发_爬虫_笔记

    20220402 笔记本走手机热点,重连之后又是另一个ip 20220331 https://mp.weixin.qq.com/s/znXuCB0Fl32TbP_0UaO6SQ 爬虫相关知识快速复习 ...

  5. python语法详解大全_笔记:Python 语法要点汇总

    Python 是一门解释型语言,无需编译和链接 Python 解释器 交互模式 脚本模式 源码编码 默认情况下,Python 源文件是 UTF-8 编码 指定源文件的字符编码 # -*- coding ...

  6. xamarin拖一个gridview控件报错怎么解决_[笔记阁]Xamarin初探:版式面板(一)

    工丅Shinichi1分钟前在.NET程序员中,学习xamarin是一个自认为挺不错的跨平台开发框架,从此篇文章开始,将会逐步揭开xamarin的面纱.什么是版式面板? 官方解释:版式面板是一种 Xa ...

  7. C# list集合 重复元素 索引_C#学习笔记12--集合/索引器/扩展

    在游戏开发的时候, 经常需要创建和管理相关对象组, 比如服务器列表, 商城物品列表等等. 在从服务器拿到这些数据的时候, 首先需要将他们存放到一个数据集合里面, 然后对集合中的数据循环遍历进行处理. ...

  8. 数据类型不匹配_笔记 | 自学Python 06:数据类型之列表

    列表是一种用于保存一系列有序项目的集合,也就是说,你可以利用列表保存一串项目的序列. 想象起来也不难,你可以想象你有一张购物清单,上面列出了需要购买的商品,除开在购物清单上你可能为每件物品都单独列一行 ...

  9. qstring截取一段字符串_笔记 | 自学Python 05:数据类型之字符串

    3.2 String (字符串) 字符串,就是一个个字符组成的有序的序列,是字符的集合,在python中通常使用单引号.双引号和三引号引住的字符序列,由数字.字母.下划线组成.从以下6个方面来了解: ...

  10. c语言字符串截取_笔记 | 自学Python 05:数据类型之字符串

    字符串,就是一个个字符组成的有序的序列,是字符的集合,在python中通常使用单引号.双引号和三引号引住的字符序列,由数字.字母.下划线组成. 从以下6个方面来了解: ①字符串是不可变的 上一期我们介 ...

最新文章

  1. python导出json
  2. 就是一个人写代码做软件项目也建议用版本管理器也要考虑采用异地容灾手段...
  3. HTTP代理ip的这些误区你知道吗?
  4. 对不起,Ubuntu 21.04出现了内部错误 解决办法
  5. QT pro文件详解
  6. myeclipse怎么导入mysql驱动_myeclipse sql导入数据库驱动包
  7. 【Elasticsearch】elasticsearch 线程池以及相关配置
  8. inspect python模块_Python inspect模块:仅限关键字参数
  9. java判断端口是否可用
  10. python — pip 下载速度慢解决方法(含Anaconda、spyder 下载包的方法)
  11. 如何快速构建一个Flutter互动直播应用
  12. php过滤特殊表情符号
  13. 鼠标悬停出现遮罩或图片放大效果
  14. 拓嘉辰丰:拼多多差异化运营,做特色店铺
  15. 时间戳指什么呢?(通俗易懂的简介大白话)
  16. AMD发布22.11.2驱动,支持《极品飞车:不羁》等游戏
  17. 云计算科普:Pets(宠物)和Cattle(牲口)傻傻分不清楚?
  18. Android Studio 的ListView 的用法
  19. python 实战之模仿开发QQ聊天软件(三)TCP/IP服务器与客户端建设
  20. 怎样改变图片尺寸大小不变形?如何设置图片尺寸?

热门文章

  1. F28335学习之ADC配置
  2. Android百度地图修改定位时间间隔
  3. jeecg boot微服务架构图
  4. 抖音快手火山 热门采集/个人主页无水印视频批量解析下载工具2019-11-11
  5. 英文简历模板计算机专业,2016年计算机专业英文简历模板
  6. 树莓派4B无屏幕安装系统及联网使用VNC无线投屏功能
  7. 论文写作笔记4 期刊选择-医学计算机
  8. 5W1h分析法分析---play框架
  9. 微信小程序点击事件传递自定义参数的方法和跨页面传递数据
  10. 串口连接BBB(三)