如何确定点是否在多边形中(多边形是在pymongo数据库中指定的)

时间:2015-04-18 13:01:51

标签: python polygon pymongo point geojson

我的问题似乎不清楚。详细说明:我在客户端生成一个pymongo数据库,在这个数据库中我有一个文档集合,这些文档都是这种格式:

{"_id": ...,
 "latlng":{"type":"Polygon",
           "coordinates":[[[-121.1,47.5],[-121.1,47.6],
                           [-121.2,47.6],[-121.2,47.5],
                           [-121.1,47.5]]]},
 "self":{"school":1, "home":2}} 

实际上,此集合是将城市划分为网格,每个文档都描述一个网格。

现在我的问题是:如果给出一个新点(新坐标),我需要确定该点所在的网格,并且我想尽快实现这一点(因为整个城市真的很大而且我有200万个网格)。

所以谁知道一个好方法? (我想通过查询数据库并使用GeoJSON来实现这一点,因为我的网格坐标是GeoJSON格式,但是我没有找到一个命令(比如geoWithin),它可以匹配包含它的多边形的点)

我注意到有一些类似的问题,但我想知道是否有人有使用pymongo数据库和处理同样问题的经验。非常感谢,如果你能与我分享你的经验。

0 个答案:

没有答案