2

我有一组点(英国完整的邮政编码质心)。邮政编码与邮政编码扇区和邮政编码区之间存在层级关系。原来的部门和地区是连续的。我希望得出部门和地区的近似边界,以便国家的任何部分恰好落入一个部门和一个地区,所有生成的多边形理想情况下应该是连续的并且(显然?)所有原始点都应该在适当的多边形中。有没有合适的算法?更好的是,是否有一些适当的实施?


我想我一定解释得很糟糕,因为我认为这不能回答我的问题。

让我们只谈谈部门,因为答案也适用于地区。

有1.8m坐标。考虑每一个都标有诸如“SG13 7AT”之类的邮政编码邮政编码标签本身可以反映邮政编码-扇区-区结构-在这种情况下扇区是“SG13 7”除了这些点及其邮政编码之外没有其他数据标签。

我知道存在定义该部门的边界。但是,此边界数据并非免费提供。已知每个邮政编码点都在其真正的扇区边界内。

我想要的是重新创建扇区边界的近似值,使这些点落在新创建的多边形内,并且我创建的多边形是连续的。这些边界不会准确反映原件,但它们足以满足我的目的。

4

1 回答 1

2

为了将平面划分为扇区,根据采样的邮政编码,使用对完整点集计算的 Voronoi 图,然后将每个图单元分配给包含单元站点的扇区。

我用两个扇区的例子来说明这一点,红色和蓝色。假设您的初始数据是这样的:

来自两个部门的数据:红色和蓝色

然后在计算 Voronoi 图之后,对单元的划分将如下所示。我概述了红色和蓝色扇区之间的边界。请注意,它们都是无界的,但这只是因为数据不包括其他部门。

数据的 Voronoi 图

现在在你澄清事情之前我的回答......

您需要的是“点位置查询”的数据结构:给定空间的细分(在您的情况下为平面)和查询点,找到包含查询点的对象。在线、线段和多边形上有有效的算法(log(n) 查询时间),它们已在计算几何库 CGAL 中实现。

请注意,我使用CGAL 2D 三角剖分演示来说明解决方案

查看此链接以获取点位置查询的文档。

于 2012-05-28T07:42:17.640 回答