我正在开发桌面应用程序,我有两点(纬度,经度)。我怎样才能得到这两点之间的距离?我查看了API,其中大多数是基于javascript或基于Web的。我没有开发网页。我怎么能在java中做到这一点?
我想要一个道路距离,而不是直线距离
答案 0 :(得分:7)
如果你有纬度和经度,你可以使用Haversine formula计算它们之间的距离 - 假设你想要“直线”距离。
编辑:好的,现在你实际告诉了我们你想要的东西,我怀疑你需要使用Directions API。您需要使用您的参数向相应的URL发出Web请求,指定XML或JSON输出 - 您需要解析它。请注意“JSON”!=“基于Javascript”。将JSON视为数据序列化格式,恰好是可执行的Javascript。
答案 1 :(得分:0)
快速Google给了我这个:http://www.postalcodeworld.com/samples/distance.java.html看起来这是使用我认为的Haversine公式所需要的非常好的实现。
答案 2 :(得分:0)
上面这个Great Circle Distance代码对于大多数应用来说都是好的。但是,如果你需要很高的精度,请注意,由于地球不是一个完美的球体,它可能会在某些边缘情况下失败。在那种情况下,你谈论的是更复杂的算法。