1

Googleマップのナビゲーションマーカーの完全なリストを探しています。

混乱を避けるために、私はこれを探していません

左折、右折、ラウンドアバウト、左分岐、右分岐、左わずか、右わずかなどのナビゲーションマーカーの完全なリストを探しています。

テキスト表現には、ラウンドアバウトの3番目の出口のようないくつかの変数があることを理解しています。これは、1番目の出口または2番目の出口などです。しかし、私はこれからラウンドアバウトを抽出し、この命令の可変部分を脇に置いておきたいと思っています。この目的のために、マーカーの完全なリストが必要です。

たくさん検索しましたが、バーやゴルフ場などの興味のある場所のマーカーしか見つかりませんでした。

前もって感謝します :)

編集:私の要件をさらに明確にするために: GoogleMapsAPIには「 html_instructions」タグが含まれています。できるだけ多くの異なる命令に画像を割り当てたいです。この目的のために、私は運転指示の完全なリストを特定する必要があります。

4

4 に答える 4

2

@edbの回答で示唆されているように、テキストは言語と地域に依存します。プロジェクトでローカリゼーションを処理する必要がないため、英語の手順のリストをまとめました。@edbの回答から、対応する方向記号を使用できます。

方向コマンド

  • <n番目><左| 右>
  • ターン<左| 右>[<at…&gt; | <に…&gt;]
  • 終了して<…&gt;
  • […]出口を出て<…&gt;に向かってください
  • ラウンドアバウトで、<まっすぐ進みます| <n番目>出口>を出る
  • 左に曲がって<…&gt;にマージします
  • <左|のランプを< 右>上へ…| 〜&gt;
  • マージオン<…&gt;
  • <左| 右>分岐点で[…に向かって続行するには]
  • わずか<左| 右>[に…]
  • シャープ<左| 右><…&gt;
  • <…&gt;でUターンします。

シンボルが関連付けられていない命令。

  • 続けて…</li>
  • 頭<に向かって...、北、南、…&gt;
  • 通り過ぎる<…&gt;

これがお役に立てば幸いです:)

于 2012-07-27T04:27:26.473 に答える
2

私があなたの質問を正しく理解しているなら、完全なリスト(視覚的な形で)はこのURLで下の画像で見つけることができます。翻訳のリストは見つかりませんでしたが、これはとにかく言語に依存します。

方向アイコン

于 2012-07-26T04:39:28.473 に答える
1

このhttp://mapicons.nicolasmollet.com/を期待していることを願っています。

于 2012-07-26T04:08:55.673 に答える
0

公式なものは何も見つからなかったので、キーフレーズを抽出するための簡単なC#プログラムを作成しました。

出力は次のとおりです。

私のコードは:

static void Main(string[] args)
{
    ConcurrentDictionary<string,int> phrases = new ConcurrentDictionary<string,int>();

    List<string> citiesOfUS = new List<string>()
    {
        "Chicago,IL",
        "Los+Angeles,CA",


        "Montgomery"      + "," +     "AL",  
        "Juneau"          + "," +     "AK",  
        "Phoenix"         + "," +     "AZ",  
        "Little+Rock"     + "," +     "AR",  
        "Sacramento"      + "," +     "CA",  
        "Denver"          + "," +     "CO",  
        "Hartford"        + "," +     "CT",  
        "Dover"           + "," +     "DE",  
        "Tallahassee"     + "," +     "FL",  
        "Atlanta"         + "," +     "GA",  
        "Honolulu"        + "," +     "HI",  
        "Boise"           + "," +     "ID",  
        "Springfield"     + "," +     "IL",  
        "Indianapolis"    + "," +     "IN",  
        "Des+Moines"      + "," +     "IA",  
        "Topeka"          + "," +     "KS",  
        "Frankfort"       + "," +     "KY",  
        "Baton+Rouge"     + "," +     "LA",  
        "Augusta"         + "," +     "ME",  
        "Annapolis"       + "," +     "MD",  
        "Boston"          + "," +     "MA",  
        "Lansing"         + "," +     "MI",  
        "St.+Paul"        + "," +     "MN",  
        "Jackson"         + "," +     "MS",  
        "Jefferson+City"  + "," +     "MO",  
        "Helena"          + "," +     "MT",  
        "Lincoln"         + "," +     "NE",  
        "Carson+City"     + "," +     "NV",  
        "Concord"         + "," +     "NH",  
        "Trenton"         + "," +     "NJ",  
        "Santa+Fe"        + "," +     "NM",  
        "Albany"          + "," +     "NY",  
        "Raleigh"         + "," +     "NC",  
        "Bismarck"        + "," +     "ND",  
        "Columbus"        + "," +     "OH",  
        "Oklahoma+City"   + "," +     "OK",  
        "Salem"           + "," +     "OR",  
        "Harrisburg"      + "," +     "PA",  
        "Providence"      + "," +     "RI",  
        "Columbia"        + "," +     "SC",  
        "Pierre"          + "," +     "SD",  
        "Nashville"       + "," +     "TN",  
        "Austin"          + "," +     "TX",  
        "Salt+Lake+City"  + "," +     "UT",  
        "Montpelier"      + "," +     "VT",  
        "Richmond"        + "," +     "VA",  
        "Olympia"         + "," +     "WA",  
        "Charleston"      + "," +     "WV",  
        "Madison"         + "," +     "WI",  
        "Cheyenne"        + "," +     "WY"  

    };

    Parallel.ForEach(citiesOfUS, (string origin) =>
    {
        foreach (string destination in citiesOfUS)
        {
            string json = new WebClient().DownloadString("http://maps.googleapis.com/maps/api/directions/xml?origin=" + origin + "&destination=" + destination + "&sensor=false");

            bool shouldExitLoop = false;

            while (!shouldExitLoop)
            {
                int pos1 = json.IndexOf("<html_instructions>");
                if (pos1 == -1) { shouldExitLoop = true; break; }

                int pos2 = json.IndexOf("</html_instructions>");
                if (pos2 == -1) { shouldExitLoop = true; break; }

                string subString = json.Substring(pos1 + 19, pos2 - pos1 - 19);

                json = json.Substring(pos2 + 20);

                int posB1 = subString.IndexOf("&lt;b");

                while (posB1 != -1)
                {
                    int posB2 = subString.IndexOf("&lt;/b");

                    string part1 = subString.Substring(0, posB1);
                    string part2 = subString.Substring(posB2 + 6);

                    subString = part1 + " SYM " + part2;

                    posB1 = subString.IndexOf("&lt;b");
                }

                int posSpace = subString.IndexOf("&gt;");

                while (posSpace != -1)
                {
                    string part1 = subString.Substring(0, posSpace);
                    string part2 = subString.Substring(posSpace + 4);

                    subString = part1 + part2;

                    posSpace = subString.IndexOf("&gt;");
                }

                int posDiv1 = subString.IndexOf("&lt;div");

                while (posDiv1 != -1)
                {
                    int posDiv2 = subString.IndexOf("&lt;/div");

                    string part1 = subString.Substring(0, posDiv1);
                    string part2 = subString.Substring(posDiv2 + 8);

                    subString = part1 + " SYM " + part2;

                    posDiv1 = subString.IndexOf("&lt;div");
                }

                phrases.AddOrUpdate(subString, 1, (key, oldvalue) => oldvalue + 1 );

            }
        }

    });


    string[] lines = phrases.Keys.ToArray();

    Array.Sort(lines);

    System.IO.File.WriteAllLines(@"C:\Users\Xantix\Desktop\WriteLines.txt", lines);            

    return;
}

基本的に、これらは、米国の各首都から他のすべての都市に移動しようとしたときに得られる英語のフレーズです。

太字のタグの間に表示されるものはすべて、「SYM」という単語に置き換えられました。たとえば、左、右、通りの名前などです。

注:html_instructions内のdivの間に表示されるものを削除したため、「部分有料道路」や「SomeDateまで建設中」などが欠落しています。

コードを変更して、他の都市をリストに追加したり、番地を追加したりしてください。

于 2012-07-26T06:36:03.597 に答える