【问题标题】:mongodb - $geoIntersects sorted by overlapping percentagemongodb - $geoIntersects 按重叠百分比排序
【发布时间】: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 的边界,在那里我得到了两个或更多文档。

Here is an example image

有没有办法可以通过重叠百分比对结果进行排序?或者任何类型的过滤器来知道哪个是确切的父母?

【问题讨论】:

    标签: mongodb polygon geospatial geo polygons


    【解决方案1】:

    我发现在 mongo 中没有办法做到这一点,我不得不用代码来做到这一点。 Here is an easy way to solve this problem

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 2021-10-22
      • 1970-01-01
      • 1970-01-01
      • 2023-04-04
      • 2021-12-17
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多