2014-10-30 38 views
0

我使用MongoDB的存儲與幾何形狀在這種格式爲什麼我會得到以外的多邊形值與geoIntersect

"geometry" : { "type" : "Polygon", "coordinates" : [ [ [ 2.0315, 85.8546219515 ], [ 2.0315, 86.1673780485 ], [ 1.7185, 86.1673780485 ], [ 1.7185, 85.8546219515 ], [ 2.0315, 85.8546219515 ] ] ] } 

我試圖使用geoIntersect和使用這樣的查詢矩形多邊形多邊形:

find({geometry:{$geoIntersects:{$geometry:{"type": "Polygon", "coordinates":[ [[12,20], [13,20], [13,18], [12,18], [12,20]]]}}}}) 

當我做小查詢那樣,結果都很好,但是當我擴大到真正的大箱子:

find({geometry:{$geoIntersects:{$geometry:{"type": "Polygon", "coordinates":[ [[-166.2890625,46.55886030311719], [-166.2890625,47.39834920035926], [12.12890625,47.39834920035926], [12.12890625,46.55886030311719], [-166.2890625,46.55886030311719]]]}}}}) 

然後我開始變得非常奇怪的結果一樣

"geometry" : { "type" : "Polygon", "coordinates" : [ [ [ 2.9684999999999997, 85.54162195149999 ], [ 2.9684999999999997, 85.8543780485 ], [ 2.6555, 85.8543780485 ], [ 2.6555, 85.54162195149999 ], [ 2.9684999999999997, 85.54162195149999 ] ] ] } 

我只返回從數據庫實際上是我的輸入多邊形內部的幾個多邊形(共4個):

"geometry":{"type":"Polygon","coordinates":[[[12.343499999999999,47.1416219515],[12.343499999999999,47.454378048500004],[12.0305,47.454378048500004],[12.0305,47.1416219515],[12.343499999999999,47.1416219515]]]}} 
"geometry":{"type":"Polygon","coordinates":[[[12.343499999999999,46.829621951499995],[12.343499999999999,47.1423780485],[12.0305,47.1423780485],[12.0305,46.829621951499995],[12.343499999999999,46.829621951499995]]]}} 
"geometry":{"type":"Polygon","coordinates":[[[-166.0935,46.5166219515],[-166.0935,46.829378048500004],[-166.4065,46.829378048500004],[-166.4065,46.5166219515],[-166.0935,46.5166219515]]]}} 
"geometry":{"type":"Polygon","coordinates":[[[-166.0935,46.829621951499995],[-166.0935,47.1423780485],[-166.4065,47.1423780485],[-166.4065,46.829621951499995],[-166.0935,46.829621951499995]]]}} 

我不應該在我的意見中,有八十年代的任何緯度。我不知道這些來自哪裏。它們構成返回的大部分。 (847/851結果)

回答

0

我不認爲多邊形適合一個半球。從$geoIntersects docs,

用GeoJSON指定爲$ geoIntersects查詢的任何幾何都必須適合單個半球。

+0

謝謝你的回覆。當我使用較小的區域時呢?我發現,一旦我的經度範圍> 8.5度,我就開始得到不正確的值 - 只是不太嚴重的失真。有關爲什麼可能發生的任何想法?如有必要,我可以發佈一個輸入/輸出示例。 – lthomas 2014-11-03 15:40:30

相關問題