【发布时间】:2018-03-02 23:34:19
【问题描述】:
我收藏了这类文档:
{
_id: ObjectId,
type: "string", // COUNTRY, STATE, CITY
geometry: {
type: "MultiPolygon",
coordinates: <coordinates>
}
}
我想计算例如COUNTRY 是每个STATE。我试过这样做:
var state = db.entity.findOne({_id:ObjectId("someStateID")});
db.entity.find({
geometry: {
$geoIntersects: {
$geometry: state.geometry
}
},
type:"COUNTRY"
});
这工作得很好,除了在某些情况下,一些STATE 的线接触到邻居COUNTRY 的边界,在那里我得到了两个或更多文档。
有没有办法可以通过重叠百分比对结果进行排序?或者任何类型的过滤器来知道哪个是确切的父母?
【问题讨论】:
标签: mongodb polygon geospatial geo polygons