我已将多边形存储在跨越X和Y轴的MongoDB数据库中,我想搜索包含给定点的多边形。为此,我使用$ geoIntersects运算符指定一个点,但MongoDB在跨越轴时不返回任何多边形。
集合中的一个对象:
{
"_id" : ObjectId("59caabf5f3c18e787b5df921"),
"polygons" : {
"type" : "Polygon",
"coordinates" : [
[
[
-100.31350135803223,
25.7219723533502
],
[
-100.31290054321289,
25.72386681990707
],
[
-100.31036853790283,
25.72332554682729
],
[
-100.31116247177124,
25.721102435127573
]
]
]
}
}
这些坐标对应于this location周围的多边形,现在,我正在查询体育场本身是否在多边形内部(显然是这样),如下所示:
db.testzones.find({
polygons:{
$geoIntersects:{
$geometry:{
"type" : "Point",
"coordinates" : [-100.312060, 25.722381]
}
}
}
});
但是我没有得到任何东西,但是如果我尝试使用this question's接受的答案的确切数据,我会得到一个结果,注意没有负坐标,这是让我相信那些是导致问题的原因。
我从去年发现了这个question(问题与我的相似,我几乎复制了标题和第一段)但是没有答案。我在这里做错了吗?或者我怎么能解决这个问题呢?我感谢任何帮助,我现在完全迷失了!