1

私が抱えている問題は、最初から最後まで通り全体を強調したいということです。たとえば、Avと入力した場合。モンテーニュ、パリ、フランスのGoogleマップで、通り全体をハイライト表示したいと思います。Googleマップはこのオプションをサポートしていないようで、ポリラインを使用して通りをマークするアルゴリズムを実装する必要があります。しかし、通りが曲がっている可能性があるので、通りがどのように見えるかについての情報を得るのにいくらか簡単な方法があるかどうかはわかりません。それは問題です。

APIに通りの名前を渡すだけで、最初から最後まで通りを強調表示するために簡単に使用できる情報を取得することは可能ですか?私が使用するマップは、Googleマップである必要はなく、Yahoo、OpenStreetMapのBingでもかまいません。

目標は実際には次のようなものです。

ここに画像の説明を入力してください

4

1 に答える 1

2

私の知る限り、この機能を提供する一般的な Web マップ API はありません。どちらも簡単でも信頼できるものでもありませんが、次の 2 つの方法が考えられます。

a.) アプリケーションで強調表示できるようにするすべての道路データのローカル セットを OpenStreetMap からダウンロードします。次に、ユーザーが検索している通りの名前を入力すると、OSM データが検索され、関連する座標点からポリラインが作成され、マップ上にプロットされます。このアプローチの問題点は、道路データの完全なセットをホストおよび維持する必要があることと、通りの名前のスペルミスなどに対処するための適切な解析アルゴリズムを実装する必要があることです。Google マップに表示される道路の名前をよく見かけることがあります。たとえば、OSM でのスペルとは異なるスペルになります。

b.) ルーティング サービスを使用して、道路の一方の端からもう一方の端までのルートを計算し、ルートのポイントをたどるポリラインをプロットします。たとえば、Bing Maps Routes API ( http://msdn.microsoft.com/en-us/library/ff701717.aspx ) を使用すると、問題の道路の両端にある 2 つの交差点間のルートをプロットできます。たとえば、「Av . モンテーニュ & シャンゼリゼ通りロンポワン」から「モンテーニュ通り & ラルマ広場」まで。次のように、ルート ポイントからポリラインをプロットできます。

Bing Maps でストリートを強調表示する

このアプローチには 2 つの問題があります。1 つ目は、道路が両端で交差する道路の名前を知る必要があること (または問題の道路の端点を特定する別の方法)、2 つ目は、2 つの道路の間で選択されたルートです。これらの 2 つの交差点は、実際には道路そのものをたどらない場合があります (たとえば、道路が一方通行で、反対方向のルートを計算しようとした場合)。

于 2012-06-11T09:15:36.387 に答える