如何描述连接边之间的特殊关系?


11

考虑以下简单情况,其中三个边在一个节点处连接:

边缘关系

我想对A和B之间的关系进行简洁明了的描述,以使其与A和C之间的关系区别开到B,但是A不相邻?到C。” 但这并不是真正的邻接。

用另一种方式说:假设您站在节点上并且正对着A。您开始按顺时针方向旋转。下一个优势是B,而不是C。

有没有一种方法可以比我上面写的更简洁,正式或正确的方式描述A和B之间的这种关系?

它必须是有方向的(这种关系从A沿顺时针方向存在,而另一种沿逆时针方向存在)。并且必须扩展到节点上连接三个以上边缘的情况。也许与路由有关?(我在道路网络的背景下正在考虑这一点。)

我已经尝试过但还没有走很远的两种方法:

  1. 类似于9IM的拓扑参考:我研究过DE-9IM,即使我不是数学家,我仍然可以从图表和术语中看出它并不涵盖这种类型的关系。我在ESRI帮助Oracle帮助的拓扑描述中都找不到它。(也许那里有东西,但是我还没找到呢!)

  2. 面孔:我一直在考虑这样一个事实,即A的“北”侧的面孔也可能受B限制,但不受C限制。但是,正如您在此图中看到的那样,这并不总是正确的。想象一下,我的图是从道路网络中摘录的,其中A和C是主干道路,B是一条短死角道路。

我怀疑我要说的话可能没有一个术语。至少我希望能够以一种比上述简单的方式描述这种关系。这是一个与平台无关的问题。现在,我只是在寻找正确的词。稍后,我将尝试在shapefile中以python(pyqgis或arcpy)实现该概念,因此考虑到该终点的任何答案都将特别有趣,但并非必需。


为什么不按方向将连接到它的边的列表附加到每个节点?
julien 2012年

1
听起来您正在寻找DCEL。请注意,当您对平面图进行二元化时,面将成为节点。在图示中,共有三个面,分别是alphabetagamma,边A将betagamma分开,边B将gammaalpha分开,边C将alphabeta分开。这将产生一个循环图,其中包含您要查找的所有信息-实际上,它实际上是对偶图的邻接
ub

@julien,谢谢-这是一个不错的实现想法;我会尝试一下。但是首先...我正在寻找一个单词或短语来描述这种类型的关系。
andytilia 2012年

@whuber,感谢您的提示。我以前从未遇到过DCEL。看起来B是A的北向“下一个”半边,即A的西向半边。嗯:那么,如果我想逆时针旋转,则考虑A的朝南的半边。由公共节点暗示。我想知道当B不是人脸边界(即死路)时,是否可行。我会进一步调查。
andytilia 2012年

@julien,我正在再次阅读您的评论。我现在可以看到您也给了我建议的措辞。:-)也许我可以使用“按方向排列”来描述这种关系。一定要玩一下。
andytilia 2012年

Answers:


1

我知道我在这里参加聚会有点晚了,但这是很有趣的事情,我希望我的回答可以有所用。

您要问的是一种定性关系;通常忽略数量关系的同级关系。定性推理在地理空间科学中经常出现。查询示例包括:与该包裹相邻的包裹?区域A和区域B的重叠部分内部有哪些特征?哪些区域是凹形的?哪条路在左边?该关系是:相邻,内部,凹面和左侧。与数量较大,数量更短或数量更大的定量问题相比,定性查询经常被忽视或低估。

需要两个输入的定性关系称为二元关系。有两种常见的表示法:-isLeftOf(A,B)这是前缀表示法。-A isLeftOf B这是中缀符号。

在上面的示例中,还存在一元关系:isConcave。该关系将区域与其自身相关联,并且将返回布尔值。

9交叉模型(在9EIM中引用)中的所有Egenhofer空间谓词都是两个区域之间的二元关系。您可能也对Randell,Cui和Cohn的RCC(http://en.wikipedia.org/wiki/Region_connection_calculus)感兴趣。在该研究领域中给出的定性(拓扑)关系将区域与区域联系起来,以后的工作将线与区域联系起来,并将线与线联系起来。但是,这并不是您要找的东西。

好的,很抱歉,不过希望对您提出问题的术语有所帮助。

@whuber正确地提出了双重连接的边缘列表(DCEL)。这是组合图的近亲,通常在CAD系统的封面和机翼边缘下使用。带翅膀的边缘(http://en.wikipedia.org/wiki/Winged_edge)概念是众所周知的文本标准如何定义多边形中的孔的方法(http://en.wikipedia.org/wiki/Well-known_text #Geometric_objects)。请注意在多边形上,外部点的顺序是逆时针方向,内部点的顺时针方向。沿着边界沿着小边界行走的小仙女总是会看到她左侧区域的内部。

使用组合贴图和DCEL,关键是要在可定向的曲面上定义这些对象。我们不需要进入数学形式-这个想法非常简单:如果您可以像在GIS中的任何空间参考系统一样定义表面方向,那么您就可以拥有一个可定向的表面。因此,如果可以定义方向,则可以围绕曲面上的任何点定义方向顺序。使用方向排序,您可以定义isLeftOf(A,B),isRotationallyAdjacentTo(A,B)等。

在嵌入到曲面上的图形中定义顶点周围的顺序需要进行两种分配:1)为边缘端点分配标签; 2)为顶点周围的顺序分配约定。如果数组中的元素顺序是顺时针的(例如,图片中的[A,B,C]),那么我们可以知道B的哪一条边。

在您的示例中,每个元素都彼此相邻。这个事实在数组中也是可见的,因为数组实际上表示一个排列,即顺序很重要,但是哪个元素首先不重要。因此[A,B,C]等效于[C,A,B]。换句话说,数组使最后一个元素与第一个元素相邻。


谢谢!我喜欢“旋转相邻”一词。就像您说的那样,只需要使用围绕顶点排序的约定进行扩展即可。在我的情况下,我需要逐个定义约定,因此我将使用您建议的排列方式对isRotationallyAdjacentTo(A,B,Direction)之类的代码进行编码。或者就上述情况而言,“ A与B顺时针旋转相邻,而A与C不顺时针旋转相邻”。
andytilia 2012年

顺便说一句,我还没有研究区域连接演算。解决问题的方法不是什么(如您所述),但这仍然很有趣。您能指出我兰德尔,崔和科恩的“后期作品”吗?(hm:RC&C角色创建了一个称为RCC的框架)
andytilia

4

当您查看从Teleatlas,Navteq,ESRI等供应商处获得的拓扑图和连接图时,您将开始看到一种模式(当然,每个人都有自己的“特殊”工作方式)。

就个人而言,即使1)地理空间拓扑图2)路由图仅仅是图,并且可以将其概括化表示为同一数据结构,但我还是尽量避免这种情况。

我尽力使自己与众不同。

  • 当我说“地理空间拓扑”(1)时,是指用于表示要素的几何关系的图形结构(例如,边A的左边,边[A,B,C]形成的面,面所包含的面) B等)。
  • 当我说“路由图”(2)时,是指用于解决路由问题的图结构(例如,具有[X]限制/条件的从A-> B的最短路径)

它们只是图,并且属于科学广度,但是有一个明显的优势,那就是不归纳为同一件事。它们用于不同的目的,并且专门针对特定目的优化和应用操作要容易得多。

ESRI为此。它们具有用于地理空间拓扑的图形结构(TopologyGraph)用于路由问题的不同图形结构(网络数据集)。哎呀,他们甚至有一个更旧的图结构- 几何网络 -很好地解决了公用事业网络中的流量问题。

可以说,在PostgreSQL / PostGIS世界中,我们也遇到了这种情况。有一个用于路由的数据结构,另一个用于地理空间拓扑的数据结构。

在您的问题中,您正在谈论图形并顺时针和逆时针浏览它们以及面,这使我觉得您想要一个专门的结构用于(1)。

对于“地理空间拓扑”,我认为代表这种拓扑的一种不错的方法是英国水文局在其S57 完整拓扑的拓扑描述中的处理方式

UKHO全拓扑

与所有主要实现都非常相似。

现在,如果您要查找的是路由,那么根据您需要单向还是双向连接,该图将变得不同。最后,归结为:

  • FROM节点连接到创建Edge的TO节点
  • 边缘具有左,右侧(如地址范围)的属性。
  • 所述(即,节点在边缘连接)可以具有一组限制。因此,基本上,您将有一个主结点条目来表示结点本身,并使用带有FROMTO条目的单独条目来表示流量限制。

祝您好运,并让我们知道您的项目结果如何。


非常感谢您对两种图形进行了清晰的区分。您认为路由图通常在边缘和/或节点上包含一些信息,而地理空间拓扑永远不需要在边缘和/或节点上归因(它仅基于对象之间的空间关系),这是否是一个合理的区分?我想我的问题很适合地理空间拓扑领域:无论边上的任何属性如何,边A和边B之间的关系都存在。但是我仍然缺少一种简洁的方式来命名这种关系……
andytilia

我认为说“地理空间拓扑永远不需要在边缘和节点上进行归因”这一说法实在太强了,它确实是基于个案的。我已经看到了包含属性的拓扑图,该属性在具有该节点的要素之间共享。例如Z或温度值。我想说的只是称呼它为节点,并在必要时区分连接的节点,但是,当然,对于要解决的整体问题,我没有足够的了解。
拉吉·亚瑟(Ragi Yaser Burhum)2012年

嗯,对了,谢谢:桥上的两条道路的平面图形表示。可能有一个具有四个边缘的节点,但并非所有边缘都相互连接。因此,该节点需要包含有关交叉路口级别的信息,以将这种情况与路口交叉路口区分开。
andytilia 2012年

1
完全是:)。这就是为什么我提到Junctions。我在考虑那件事。一种实现方法是使用FROM-TO条目将结点表示为“主节点”。天桥/地下通道的情况一直发生。甚至最糟糕的情况是,例如海湾大桥或芝加哥,您在2D空间中具有匹配的边缘(它们实际上彼此重叠),并且一组边缘以一种方式流动,而另一组以另一种方式流动。
拉吉·亚瑟(Ragi Yaser Burhum)2012年
By using our site, you acknowledge that you have read and understand our Cookie Policy and Privacy Policy.
Licensed under cc by-sa 3.0 with attribution required.