GMap上に経路表示+パーマリンク

sawat2006-05-03


Google Maps APIのGPolylineを使うと、地図上に自由に線が書ける。というのは、前にも書きました。まあ、それを使うと、地図上をクリックすると自由に線が引けて、自分が歩いた道やサイクリングコースなんかをマークできるようなページは簡単に作れます。けど、実際に地図に線を引いてみてもPrintScreenキーでも押さない限り、描いた線は保存できないし、誰かに見せてあげることもできないのでいまいち面白くありません。
なので、クリックで地図上に作成した線に対してパーマリンクが与えるページのサンプルを作ってみました。


GMap上に経路表示+パーマリンク
IE6.0, Firefox1.5, Opera8.5で確認。


上のページでは、クリックすることにより地図上に線を引くことができるのできます。そして、線を引くごとに地図の下のパーマリンク欄が更新され、そこに表示されるURLにアクセスすれば、同じ線が引かれた地図にアクセスできるというわけです。

パーマリンクがあるので、

  • メールやインスタントメッセージで道順付きの地図を送れる。
  • ソーシャルブックマークなどで共有することができる。
  • テキストファイルなどにメモっておくことができる。後から修正もできる。

のようなメリットがあります。

ただし、URL上のGETパラメータに経路の座標情報をくっつけているだけなので、実際には、ちょっと経路の点の数を増やすとすぐにURLがやたらと長くなってしまい*1、以下のような問題にぶち当たります。

  • すぐに一般的なメーラーでは折り返し表示される長さになってしまう。
  • URLがはてなブックマークの長さ制限に引っかかって、途中で切られてしまう。
  • そもそもGETパラメータの長さには上限があったはずだ。(何文字だっけ?)

なので、こうゆうのははてなマップとかでちゃんとサーバーサイドに情報を保存するようにしてやったほうがいいよなと思いました。で、ダイアリーから記法で参照できるようにしておくと。

ちなみに、右上の図は2006年の東京国際マラソンの折り返し地点までのコースです。公式ページのPDFをみて作りました。

追記

はてなブックマークは長さ制限できられているのではなく、URL中の"("と")"が削除されていることが原因でした。はてなのバグだと思うけど、URLに"("と")"を使わないようにスクリプトを修正しました。括弧さえなければ、上のマラソンコースのURLもブックマーク可能でした。

*1:問題の軽減のため、数値にbase64もどきの符号化を行って短くしているけど、焼け石に水程度