计算将地理边界框扩展x英里
Posted
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了计算将地理边界框扩展x英里相关的知识,希望对你有一定的参考价值。
希望有人可以帮我解决问题。
假设我有一个边界框的坐标,例如作为从Google Places API返回的视口,例如
"viewport" : {
"northeast" : {
"lat" : 37.4238253802915,
"lng" : -122.0829009197085
},
"southwest" : {
"lat" : 37.4211274197085,
"lng" : -122.0855988802915
}
}
然后我使用这些来返回Elasticsearch过滤Geo Bounding Box中的位置的结果:https://www.elastic.co/guide/en/elasticsearch/reference/5.1/query-dsl-geo-bounding-box-query.html
这很好,但是我想运行一个计算来增加这个视口,例如,5英里,返回值是另一个增加大小的边界框。
我想通过视口的对角线需要单程增加2.5英里,但我不确定计算方法。
提前致谢。
答案
所以事实证明这可以使用Vicenty的公式来解决:(https://en.wikipedia.org/wiki/Vincenty%27s_formulae#Direct_Problem)。
https://www.npmjs.com/package/geodesy的javascript实现对任何感兴趣的人。
赞美。
以上是关于计算将地理边界框扩展x英里的主要内容,如果未能解决你的问题,请参考以下文章
输入地理坐标,返回输入坐标 x 英里内的坐标 - C# .NET
python 很少实现http://janmatuschek.de/LatitudeLongitudeBoundingCoordinates代码获取地理位置的边界框坐标