以前の記事「Google Street View(ストリートビュー)のConnecting MapにMarkerを表示させる」で作成したストリートビューのマップコネクトの地図がベースです。
複数の駐車場の入り口を紹介するために、ストリートビューと地図を使ったマップコネクトを使用します。地図の外に複数のボタンを設けて、クリックするとそれぞれの駐車場の入り口を表示させるものです。
スポンサードリンク
以前の記事「Google Street View(ストリートビュー)のConnecting MapにMarkerを表示させる」で作成したストリートビューのマップコネクトの地図がベースです。
複数の駐車場の入り口を紹介するために、ストリートビューと地図を使ったマップコネクトを使用します。地図の外に複数のボタンを設けて、クリックするとそれぞれの駐車場の入り口を表示させるものです。
取り急ぎですので、概要のscriptを紹介。このサンプル(iPhone用マーカー表示の高速化)で動作がわかるかと思います。
正確には、配列(XMLファイルやデータベース)からマーカーデータを読み込んだ時に、既存の配列の要素と比較して、同じ要素があった場合、同一のマーカーとみなす策です。
この案を流用すれば、同じマーカーを読み込まなくて済むようになる案が作成できると思います・・・・・。
iPhone(アイフォン)等のマーカーの読み込みが遅いモバイル用マップには必須のテクニックですが、実際にはPC用マップでは不要かもしれませんね。
しかしながら、マーカーを読み込む都度、マーカーがちらつく(フリッカ)するのを防ぐこともできるすぐれものです。また、同じマーカーを読み込むとマーカー(アイコン)やインフォウィンドウの影が濃くなる事象を回避することもできますね。
詳しくは、mobile geo social(英語)を参照下さい。
2011/09/29) 高速化(マーカーの再読み込みをしない)のテクニックを使ったiPhone(アイフォン)用マップを、この記事(目的地アイコン(マーカー)をクリックして、ルート検索結果と距離を表示させる方法の続き)の末尾に追加紹介しました。
<目次>始めに地図を読み込んだ時、複数のマーカーから任意の一つのインフォウィンドウ(infowindow)を最初から表示する。
google mapsでたくさんのマーカーを表示させる方法とてfor文が使われていますが、実際はどうなっているのか?
試してみました。
配列を記述したサンプル地図ですが、配列が4列、要素が9行になります。従って、2次元配列で各配列の要素を指定できることになるそうです。
<目次>始めに地図を読み込んだ時、複数のマーカーから任意の一つのインフォウィンドウ(infowindow)を最初から表示する。
XMLファイルを横にらみしながらですと判りずらいので、配列データをコード内に用意します。こんな感じで
var markers = [ ['公園1', 35.760191,140.061629,'kouen'], ['公園2', 35.643033,139.860592,'kouen'], ['公園3', 35.596286,140.141172,'kouen'], ['温泉1', 35.805307,140.16651,'onsen'], ['温泉2',35.717602,139.980167,'onsen'], ['温泉3', 35.42295,139.89739,'onsen'], ['水族館1',36.333294,140.593817,'suizokukan'], ['水族館2', 35.442851,139.644607,'suizokukan'], ['水族館3', 35.728681,139.719765,'suizokukan'] ];
左から、ココの要素の名称、座標lat,lng、カテゴリ分けをするための「kouen」「onsen」「suizokukan」です。
スポンサードリンク