4

Google Maps APIを使用して、特定の住所を検索し、緯度と経度を返すのは簡単です。たとえば、リンク

ただし、公園などの特定の場所の名前を入力すると、問題が発生するようです。多くの場合、これらには特定の番地がありません(少なくとも、簡単に見つけることはできません)。Cadigal Reserveは上記のリンクと同じ住所にありますが、クエリ文字列の一部として入力して番地を削除すると、結果はかなり役に立たなくなります。link

これをmaps.google.comに直接入力すると、公園自体を簡単に見つけることができます(もちろん、URLを調べることで緯度/経度を見つけることができます)。

Google Maps APIを使用して、このような公園の場所をジオコーディングする方法はありませんか?

4

1 に答える 1

1

ジオコーディングは正確な科学ではないことを理解することが重要です。特定の場所にジオコーディングする必要があることがわかっている住所がある場合に推奨される方法は、キャッシュを構築し、ローカル(クライアント側)のジオコーディングを使用することです。

APIのバージョン2では、GeocodeCacheを拡張することにより、事前に計算されたジオコーダー応答を含む独自のクライアント側キャッシュを構築します。キャッシュが定義されたら、setCache()メソッドを呼び出して、先に進みます。これはここでかなり説明されています:

http://code.google.com/apis/maps/documentation/javascript/v2/services.html#Geocoding_Caching

ただし、AFAIK GeocodeCacheは、APIのV3で削除されました...

したがって、既知のアドレスとそれに対応する座標の独自のクライアント側キャッシング戦略を実装することをお勧めします。アプリケーションが既知の住所のジオコード要求を受信すると、応答は(Googleのジオコーディングサーバーではなく)キャッシュから送信されます。

すべてに失敗すると、理論的にははるかに正確なデータセット(およびリクエストの上限など)を持つ有料のジオコーディングサービスをいつでも使用できます。

最後に、ここでの問題のいくつかをうまく処理できるので、ジオコーディング戦略のドキュメントも確認する必要があります。

于 2011-02-25T22:39:24.703 に答える