私はAndroid用の屋内ナビゲーションプログラムを開発していますが、最初から立ち往生して
います。Javaで地図をどのように表現しますか?
ダイクストラのアルゴリズムを簡単に適用できる方法を好みます。
注:各部屋のサイズと入口と出口がどこにあるかを知るためのプログラムが必要です。
編集: UIではなくBLで使用するオブジェクトを探しています
Androidには、アプリケーションの画面に追加できるmapViewと呼ばれるGUI要素が組み込まれています。これはGoogleマップであり、アプリケーションのAPIキーを取得する必要があります。それにオーバーレイを追加し、緯度と経度に基づいてマップ上のポイントを見つけることができ(他の方法もサポートしていると思います)、これらのポイントはダイクストラのアルゴリズムに使用できます。これがお役に立てば幸いです。
あなたが説明しているのは、拡張されたトポロジーマップ(ノードの絶対位置の推定値がある)だと思います。したがって、基本的には、ノードに接続された場所でグラフを描画できるコンポーネントが必要です。また、追加のものを描画する可能性が必要になる場合があります(wifi接続のヒートマップ、Bluetoothデバイス、または位置を推定して環境に関する情報を収集するために使用しているものなど)。あなたはSLAMの問題にも取り組んでいます。
そのための視覚的なタスクを実行できる既存のコンポーネントはわかりませんが、Googleで何かを見つけたかもしれません。しかし、私はそれをお勧めしません。私は自分のコンポーネントを作成するだけです(を使用して、TextView
その上に自分のものを描画します)。それははるかに柔軟性があり、それほど労力はかかりません。機能とデータ形式を選択できます。これは、このような場合に非常に役立ちます...
残りのすべてを実行した後でも(これはたくさんあります!)、グーグルマップを統合したり、ズームしたりできる、いくつかの凝ったコンポーネントを探すことを決定できます。