2016-11-21 105 views
-1

我正在用Java编写应用程序。我有一个长长的列表,我想将它转换为路径。然后计算点之间的距离。最后根据路径上当前位置(纬度,长度)检测点,并计算到最终点的剩余距离。计算点之间的路径和距离

我该怎么做,你知道任何可以帮助我的图书馆吗?

+1

你到目前为止试过了什么?你已经寻找和发现了什么类型的图书馆?一个简单的Google搜索可以找到http://www.geotools.org/ https://github.com/locationtech/spatial4j和https://java-source.net/open-source/geospatial,这些库可以帮助你? – Harry

+1

这是要求图书馆在这里的主题,但要获得信息,计算一些距离,这取决于位置的限制,坐标之间的距离取决于纬度,因为你在一个球体上。网上有一些公式。对于图书馆,您是否想过Google API?有API可以做到这一点(每天/每周/每月免费使用请求限制) – AxelH

+0

是的我想我可以自己计算,所以你有这样的公式吗?但也许不发明轮子我应该使用一些图书馆?它需要是免费的解决方案。我不问库仅仅是为了解决所描述的问题。在其中一个项目中,我们使用graphhoper,但对于这个太大了,也许简单的代码就足够了 –

回答

1

当点距离不远时,可以使用勾股定理计算距离。通过计算点之间的距离并将它们相加,可以得到总距离。 (我假设这些点是排序的)我相信你也希望得到最接近当前位置的路径上的点。为此,您可以使用相同的公式检查每个点的距离并使用最短距离。如果你有很多点,你可能只想首先使用第十点来节省时间和资源。

我希望我能帮到你