希望有人可以帮助我进行计算。
说我有一个边界框的坐标,例如作为从Google Places API返回的视口,例如
"viewport" : {
"northeast" : {
"lat" : 37.4238253802915,
"lng" : -122.0829009197085
},
"southwest" : {
"lat" : 37.4211274197085,
"lng" : -122.0855988802915
}
}
然后,我将使用这些结果按地理边界框内的位置从Elasticsearch过滤中返回结果:https://www.elastic.co/guide/en/elasticsearch/reference/5.1/query-dsl-geo-bounding-box-query.html
这很好,但是我想进行一次计算以将此视口增加例如5英里,而返回值则是另一个尺寸增加的边界框。
我想穿过视口的对角线需要每次增加2.5英里,但是我不确定计算方法。
谢谢。
答案 0 :(得分:1)
因此事实证明,可以使用Vicenty的公式(https://en.wikipedia.org/wiki/Vincenty%27s_formulae#Direct_Problem)来解决。
https://www.npmjs.com/package/geodesy上有兴趣的人的JavaScript实现。
赞美Vicenty。