gpt4 book ai didi

javascript - 如何在 Node js的mongoose中查找坐标是否在多边形内

转载 作者:太空宇宙 更新时间:2023-11-04 01:03:12 26 4
gpt4 key购买 nike

我尝试过很多不同的尝试,但都失败了。目前,我的查询没有失败,但没有为我提供任何结果。我正在使用 Mongoose v 3.8.9,它使用 Mongodb v 1.4。我认为我的坐标索引正确,因为它适用于使用 .geoNear() 进行查询。但是,geoNear() 只允许单个坐标,因此我无法指定 g

这是一个运行但不返回任何结果的示例。我什至更改了其中一个文档,以将该点精确地包含在 geoJSONpolygon 中指定的四个点之一。

 var geoJSONpolygon = { type: 'Polygon',coordinates:[[43.6582231,-79.3988945],[43.6583683,-79.3980648],[43.6583143,-79.3979845],[43.6584212,-79.3975422]] }

newLocation.find({}).where('pos').within().geometry(geoJSONpolygon).lean().exec(function(err,doc){
console.log(doc);
res.send(doc);
});

最佳答案

这就是我用的,可能对你有帮助。

   Position.find(
{ geo :
{ $geoWithin : { $box :
[ [ box[0] , box[1] ] ,
[ box[2] , box[3] ] ] } }

}, function(err, response) {
if (err) return err;

console.log(response)

});

您还可以设置调试并检查结果:

mongoose.set('debug', true)

关于javascript - 如何在 Node js的mongoose中查找坐标是否在多边形内,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/25331747/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com