0
私は、ジオポイントの束を集めて、ユーザーがどこに行くかに基づいて地図上に表示するアプリケーションを持っています。私はそれらのジオポイントのすべての方向を向けることができるようにしたい。基本的に私は彼らが取った道のターン方向で回したい。問題は私が見るものすべてであり、私はたくさんの場所を見てきましたが、2ポイントの出発地と目的地でこれを行う方法しか示していません。2つ以上のジオポイントの方向転換の方法
私は、ジオポイントの束を集めて、ユーザーがどこに行くかに基づいて地図上に表示するアプリケーションを持っています。私はそれらのジオポイントのすべての方向を向けることができるようにしたい。基本的に私は彼らが取った道のターン方向で回したい。問題は私が見るものすべてであり、私はたくさんの場所を見てきましたが、2ポイントの出発地と目的地でこれを行う方法しか示していません。2つ以上のジオポイントの方向転換の方法
ジオポイント間の方向を計算しなければならない場合は、ジオポイントを計算する必要があります。まず、南北方向の違いとeas/west方向の違いを取得する必要があります。次に、atan2を使用して、2つのジオポイントの間の角度を計算することができます。
double north_south = point1.getLatitude() - point2.getLatitude();
double east_west = point1.getLongitude() - point2.getLongitude();
int angle = (int) (Math.atan2(east_west, north_south)/
Math.PI * 180.0 + 360.0f);
これは、2点間の方向(度)を取得する方法です。ユーザーをナビゲートする場合は、ナビゲーションソフトウェア全体を作成する必要があります。これははるかに複雑です。
私は理解していますが、ターン方向でターンを得るためには、2つ以上のアドレスをGoogleマップに渡す方法があります。私は10 geopointsを持っている場合、それらをアドレスに変換し、googleマップやターンでgoogleマップの順番でターンを取得するか、私は戻ってサービスから私たちに与えられた方向でターンを得るためにgoogleマップまたは何かeleseに渡しますか? – user638049
あなたはナビゲーションインテントを開始することができます(ここで見ることができます:http://stackoverflow.com/questions/2662531/launching-google-maps-directions-via-anent-on-android)しかし、私が知る限りこれは複数のジオポイントでは不可能です。 –