2011-12-29 25 views
2

私はアンドロイドアプリを作っています。ユーザー(ある座標がある)が通りに面していて、その通りが10〜20フィート以内にあるかどうかを確認することは可能ですか?Google Maps API Street Coordinates

もしそうでなければ、コード/座標を使って手作業で「踏んだ」オープンソースマップがありますか?私は盲人用のナビゲーションシステムを作りたいと思っています。ユーザーが通りの真ん中に立っているかどうかを確認する方法が必要です。

おかげで、 のRohit

答えて

1

GoogleマップジオコーディングAPI上に読むことをお勧めします:

http://code.google.com/apis/maps/documentation/geocoding/

あなたがアンドロイドにしている場合は、コールする特別GeocoderクラスがありますあなたのためのGoogleマップ:

Geocoder geocoder = new Geocoder(this, Locale.getDefault()); 
List<Address> addresses = geocoder.getFromLocation(lat, lng, 1); 

(出典:Android: Reverse geocoding - getFromLocation

キャッチするのは、これがちょうどユーザーの現在の場所の最も可能性の高いアドレスを与えることです。ファズファクタなどを指定する必要はありません。それでも、10〜20フィートは、これが一致するには十分近いはずです。

これで必要なデータが得られない場合は、オープンマップデータベースであるOpenStreetMapを参照することもできます。私はそれ自身で多くの経験を持っていませんが、ここにドキュメントがあります:http://wiki.openstreetmap.org/wiki/Main_Page

+0

道路に対応する座標の配列を取得する方法はありますか?だから私はそれらを現在の位置と比較することができますか? – rkrishnan2012

+0

1つのアドレスを緯度/経度のペアに変換できます(逆ジオコーディング).Google APIを使用すると、ストリート全体でこれを行うことはできません。 –