最近[[東神戸の書店情報]]がごちゃごちゃしてきたので見やすい地図を張りたくなった。~
Pukiwikiのプラグインで何かありそうだと思って探したけど、無かったので自分で書いてみた。~
GoogleMapsはまだベータ段階でAPIも流動的なので今後もそのまま使えるかどうかは不明だが、一応できるよーということで。。~

***サンプル [#k9c7fc1f]
&googlemaps(width=300px, height=200px, small=1, maptype=0);
-&googlemaps_mark(135.73209285736084, 35.03615464986853, title=金閣寺, caption=足利義満の別荘);~
-&googlemaps_mark(135.73795080184937, 35.02786150715904, title=北野天満宮, caption=菅原道真を祭ってる);~
-&googlemaps_mark(135.7158064842224, 35.0254981588326, title=仁和寺,caption=和尚が名物(嘘));~
-&googlemaps_mark(135.72119235992432, 35.031252660853006, title=龍安寺,caption=石庭のうずまきが有名);~

こんな風に書く(幾つか重要なオプションを直書きして省略してる)
 &googlemaps(width=300px, height=200px, small=1, maptype=0);
 -&googlemaps_mark(135.73209285736084, 35.03615464986853, title=金閣寺, caption=足利義満の別荘);~
 -&googlemaps_mark(135.73795080184937, 35.02786150715904, title=北野天満宮, caption=菅原道真を祭ってる);~
 -&googlemaps_mark(135.7158064842224, 35.0254981588326, title=仁和寺,caption=和尚が名物(嘘));~
 -&googlemaps_mark(135.72119235992432, 35.031252660853006, title=龍安寺,caption=石庭のうずまきが有名);~

***動作環境 [#eecba4da]
Pukiwiki1.4.5。EUC-JP。DTD宣言でXHTMLをHTML 4.01 Transitionalとして宣言してあります。FirefoxとIEで適当に動作確認。動かない環境がありそうな気がする。

***ライセンス [#f287e1ae]
BSD-Styleのライセンスです。

***ダウンロード [#y828840e]
http://reddog.s35.xrea.com/software/googlemaps.inc.php.zip

***インストール [#q8c3db97]
+[[ Google Maps API - Sign Up:http://www.google.com/apis/maps/signup.html]]でキーを取得する。(無料)
+別にやらなくてもいいけど、googlemaps.inc.phpのデフォの値(keyとか)を書き換えとくと後で楽。
+pluginディレクトリにgooglemaps.inc.phpとgooglemaps_mark.inc.phpとgooglemaps_icon.inc.phpをコピーする。

***使い方 [#z28fb4a0]
googlemapsで地図を表示して、googlemaps_add_markでマーカーをつけます。
-書式(オプションを省略するとデフォの値が用いられます)
 &googlemaps(?option=value, ...?);
 &googlemaps_mark(x, y ?, option=value, ...?);
 &googlemaps_icon(name, image, shadowimage, 
     imagesize_w,  imagesize_h, 
     shadowsize_w, shadowsize_h,
     iconanchor_x, iconanchor_y,
     shadowanchor_x, shadowanchor_y);
 * googlemaps_iconが長いので折り返したけど本当は一行で書いてください。

-オプション
--googlemaps
---''key''     Googleから取得したKey
---''width''   横幅
---''height''  縦幅
---''cx''      中心点
---''cy''      中心店
---''zoom''    倍率
---''small''       小さい拡縮コントロールを使う(0 or 1)
---''maptype''     MapType選択コントロール(衛星写真の切替ボタン)の表示(0 or 1)
---''formatlist''  マーカーリストの書式(html文字列)
---''formatinfo''  マーカーのフキダシの書式(html文字列)
---''alink''       マップ上のinfoWindowと本文中のテキストをリンクさせる(0 or 1)
---''usetool''     いまのとこマーカーの雛型を出力するやつだけ。

formatlistとformatinfoは%title%と%caption%の文字列を各マーカーのそれに置き換える。

--googlemaps_mark
---''title''   マーカーの名前
---''caption'' マーカーの説明
---''image''   画像
---''icon''    マーカーのアイコン(googlemaps_iconでiconを事前に作成しておく)
---''nolist'' 地図以外のマーカーリスト(上の例でいえば地図の下のやつ)に出力しない。(0 or 1)

--googlemaps_icon~

-アイコンの作成~

-その他
--googlemaps_markは第一引数がx,第二引数がy座標で省略不可。~
座標は適当にブックマークレットでも書いて手で調べるしかないような。~
//公式のGoogleMapsでは
// javascript:void(prompt(%22GoogleMaps中心位置%22, _m.map.getCenterLatLng()));
//このようなブックマークレットで中心座標を取得することができる。
googlemapsのusetoolで表示中の中心座標のマーカーの雛型を作成できるので、usetool=1にしてプレビューモードでその雛型をコピペしながら書くと楽かもしれない。
--デフォルトの値を変えたいとか、もう少しあれをなんとかしたい場合はソースを勝手に改造して使ってください。
--インライン型しかありません(#hoge書式のは無い)
--googlemaps_markの第一、第二引数以外はすべて一応省略可能で、引数の順番もどうでもいいです。
--googlemapsのkeyオプションはソースファイルに直接書いて省略した方が見やすい。

***今後の予定 [#ce7626d1]
-バグ出し
-ソースをきれいに
-いくつか機能追加(?)
-地図の日本語化(可能かどうか調べる)

***コメントをどーぞ [#q6776732]
#comment
----
[[CategoryJavaScript]]

HTML convert time: 0.007 sec.