2006年09月17日

Google Maps Overlay 改 その3(画像不在対応版)

Google Maps Overlay 改Google Maps Overlay 改 その2(透過地図衛星画像対応版)と作ってみたが、貼り付けるGoogle Mapsの画像が存在しない場合、
gmnoimage.jpg
つまりGoogle Maps自体で上のようになる場合、
gmolerr.jpg
こんなふう↑にエラーの画像の数だけ「イメージを読み込めませんでした」というダイアログが重なって表示され、OKボタンを連打するハメになる。これはウザいということで、あらかじめサーバに画像の有無を問い合わせ、ない場合はあらかじめ用意したエラー画像を表示する、
gmolnoimage.jpg
というものを試しに作ってみた。
Google_Maps_Overlays_20060917.zip

最初は素朴に、KMLを組み立てるループの中から順番にLWPでHEADで問い合わせていたが、全部で36枚とかになる画像でこれをやっていると猛烈に遅い。次にLWP::Parallelで同時にガンガン問い合わせるものにしてみたら、ちょっとだけ速くなった。さらに問い合わせるサーバをmt0.google.comからmt3.google.comまでランダムに分散するようにしてみたが、これは体感できるほどの効果はなかった。パワフルなgoogleのサーバだから、これは当たり前かも。

なんにしてもちょっと遅いので、実験版ということで。

Posted by jiro at 2006年09月17日 03:06 | トラックバック (1)
コメント

ども。茜丸でございます。

日頃このスクリプトを使わせてもらっているのですが、このCGIですとなぜかデータを取得できずエラーになります。

自分はいろいろ改造してつかっているのですが、このスクリプトの仕様なのか?それともGoogleで最近マップの仕様をまた変えたようなんで、そちらの問題なのか?もし良かったら教えてください。

Posted by: 茜丸 at 2006年11月11日 17:05

いま改めてGoogle_Maps_Overlays_20060917.zipをセットアップし直してみましたが、特に問題なく動いているようですが、このバージョンはLWP::Parallel::UserAgentなどを使っているので、普通のレンタルサーバの環境そのままだと動かないかもです。

Posted by: motonaga at 2006年11月12日 01:07

あ、すみません、勘違いしてました。
KML中のv=w2.21をv=w2.25に、v=w2t.22をv=w2t.30に、cgi中のkh?v=5をkh?v=11にしないとダメですね。

Posted by: motonaga at 2006年11月12日 01:19

あ、大変ありがとうございます。それ気がつきませんでした。チョンボでした。ちょっと試してみます。

Posted by: 茜丸 at 2006年11月12日 20:49
コメントする









名前、アドレスを登録しますか?