有没有办法检查谷歌地图多边形或圆形区域是否大于地球半球

时间:2018-01-31 15:00:13

标签: mongodb google-maps

有没有办法检查谷歌地图多边形或圆形区域是否大于地球半球,以便我们可以知道geowithin查询在mongo查询Link中无法正常工作。或者条件是什么地理空间查询工作完美。

[(1, 1), (0, 0), (1, 1), (0, 0), (1, 1)]

对于egs:多边形的面积可以通过以下公式计算:

{ <location field>: { $geoWithin: { $geometry: { type: <"Polygon" or "MultiPolygon"> , coordinates: [ <coordinates> ] } } } }

其中e是多边形完成事件时事件对象变量。但我们如何将它们与地球半球区域进行比较?

1 个答案:

答案 0 :(得分:1)

  

我们如何将它们与地球半球区域进行比较?

只要Earth radius is about 6371 km,您就可以计算出半球的球面面积:

A = 2πr^2
A = 2π(6371)^2 
A = 255032236 square km

如果google.maps.geometry.spherical.computeArea(e.getPath())的结果大于上述值,则面积多边形/圆形大于地球半球的一个。