我有一个包含许多文档的mongodb集合。这些文档的一个属性是一个二维点云集合,我目前正在查询以找到任何点位于多边形内的文档等。这非常出色。Mongodb - 查找提供的多边形的最近点
我现在想要做的是什么,我不确定它实际上是否能够在每个点云集合中找到最接近的点到提供的多边形。
要给出一个可视化文件,想象一下这些文件包含一个代表道路隧道扫描的二维点云。我希望能够提供一个代表卡车的多边形并找到最接近它的点。这将是一个文件基础上,所以在英语中我们会问以下内容:
result = nearest point to <Polygon> in document <Document X>.<CloudPoints>
奖金 - 如果有可能,以能够与某种方式连接这个结果返回的所有文件,这甚至会更好,虽然我怀疑这远远超出了Mongo设计使用的正常界限。
编辑:
根据要求,这里是一个例子。考虑一下我们收集的文件如下所示。在这个例子中,我有很多文件都有一些坐标集合,这些坐标集合代表了碰巧受到保护的鸟巢的位置,并附有关于公司有多接近地面工程的法律等。
BirdsNests >
_id : 1234
_Description : North town pipe replacement 2016
_NestLocations >
[100, 150]
[140, 180]
[165. 134]
etc...
如果我提供一个多边形,我想知道的是,坐标集合中的最近点是该多边形。注意:这应该是它的任何表面,如。这将允许人们提供代表拟议工作地点的多边形,并让Mongo报告哪个巢位置最接近站点参数。
这将一个文件的基础上要求初步所以我们会要求文件1234,什么是集合中最接近坐标到此提供的多边形。
请注意所有使用的例子都是纯虚构的。
你可以添加一些数据和例子,你想要达到什么? – aks
@aks根据要求更新。 –
鉴于上面的图片,左边的绿点似乎不是最接近我的点......只要确保我正确理解了您的问题,对于给定多边形边上的所有点坐标,您想要找到最接近绿点? (在你的照片中,它似乎是左上角的那个) –