人気ブログランキング | 話題のタグを見る
(.Net)任意の住所の地図をGoogleMaps(ブラウザ上で)で表示する
スタンドアロンアプリケーションから任意の住所の地図を表示する方法です。

最初はGoogle APIとかAPI Key取得し使って住所を緯度経度に変換して、マークつけて、とかしないといけないのかと思ってましが、GoogleAPIって自分のWebにGoogleMaps載せるときに使うものだから、ただ単に公式のGoogleMAPsで地図開くだけなら使う必要ないんですよね。

で、GoogleMapsのURLにパラメータで指定できるんじゃないかと思って調べたら案の定そうでした。
こちらにパラメータの詳細が載っています。

自分が使ったパラメタは下記の通りです。
hl:言語。日本語なら ja。
q:検索ワード。地名か緯度経度が指定し、そこにマーカーをつける。日本語はURLエンコードが必要。ここが肝。
lr:検索言語の指定。日本語なら lang_ja
um:不明。でもGoogle本家サイトから検索するとこのパラメタが付いてた。値は1。
ie:文字コード。UTF-8を指定する。
sa:不明。でもGoogle本家サイトから検索するとこのパラメタが付いてた。値は N
tab:不明。でもGoogle本家サイトから検索するとこのパラメタが付いてた。値はwl
z:ズーム。0が縮小、20が拡大。拡大しすぎるとデータがないところもあるので注意。

下記にVB.Netから地図を表記するサンプル入れておきました。


'住所の例
Dim strAdd As String = "神奈川県海老名市中新田4丁目7"
 
'URL生成
Dim strUrl As String = "http://maps.google.co.jp/maps?hl=ja&q="
'住所をURLエンコード
strUrl = strUrl & Web.HttpUtility.UrlEncode(strAdd) & "&lr=lang_ja&um=1&ie=UTF-8&sa=N&tab=wl&z=15"
 
'既定のブラウザ開く
System.Diagnostics.Process.Start(strUrl)

by jehoshaphat | 2008-11-18 19:26 | .Net開発


<< Visual Studioセッ... (WindowsServer)... >>