2016-11-21 11 views
-1

私はJavaでアプリケーションを書いています。私はlatのリストを持っており、それをパスに変換したい。次に、ポイント間の距離を計算します。最後に、現在地(緯度、経度)を基にして経路上の点を検出し、最終点までの残りの距離を計算します。点と点の間の距離を計算する

どうすればいいですか、私を助けるライブラリがありますか?

+1

これまでに何を試みましたか?どのような図書館を探して見つけましたか?単純なGoogle検索では、http://www.geotools.org/ https://github.com/locationtech/spatial4jとhttps://java-source.net/open-source/geospatialが見つかります。 ? – Harry

+1

これはここで図書館に依頼するのは一般的ですが、情報のためにある程度の距離を計算するには、これは場所の限界に依存します。座標間の距離は、あなたが球面上にあるので緯度によって決まります。ネット上には数式があります。ライブラリについては、Google APIについて考えましたか?すでにAPIを使用しています(無料で1日/週/ 1か月のリクエストで制限されます) – AxelH

+0

はい私は自分で計算できると思いますので、そのような公式はありますか?しかし、おそらく私はいくつかのライブラリを使用する必要があります車輪を発明しないでください?それは自由な解決策である必要があります。私は説明された問題の解決のためだけにライブラリについて質問しません。プロジェクトの1つでは、graphhoperを使用していますが、これには大きすぎます。単純なコードで十分でしょう –

答えて

1

ポイントがそれほど離れていないときは、ピタゴラス定理を使って距離を計算できます。ポイント間の距離を計算して合計すると、合計距離を取得できます。 (私はポイントがソートされていると仮定します)あなたはまた、現在の場所に最も近いパス上のポイントを取得したいと思う。これを行うには、すべてのポイントの距離をチェックし、最短のものを使用するために同じ形式を使用することができます。あなたが本当に多くのポイントを持っている場合は、時間とリソースを節約するために、最初に10ポイントごとに使用したいと思うかもしれません。

私はあなたを助けてくれることを願っています

関連する問題