2012年6月28日木曜日

Google Maps JavaScript API V3のPanoramio レイヤについて


Google Maps API V3のPanoramio レイヤについて


今日はPanoramio レイヤについてやってみた!
Panoramioってなんぞ?って人はWiki参照

GoogleMapsを表示したきに写真レイヤにあたるものがPanoramio レイヤってことになるみたい。
PanoramioからGoogleMapsに写真が載るんだろと調べてみたらPanoramioのHPで日本語で説明されてました。

写真は自分オリジナルのもので人物が写ってないのが重要ぽいな。
具体的な項目はPanoramio 写真の承認ポリシー参照。

ここで問題発生

ブログのテンプレート編集でlibraries ブートストラップ パラメータ(下の太字の部分)が追加できない!!!追加すると編集画面が落ちる。。。。
http://maps.google.com/maps/api/js?sensor=false&libraries=panoramio

とりあえず、マップ設定してみたものの写真レイヤは表示されないよな。。。
ソースは以下の通り。
----

var map;
//座標一覧
var fukui = new google.maps.LatLng(36.0651779, 136.2215269);
//Panoramioレイヤ
var panoramioLayer;

function initialize13() {
  var myOptions = {
    zoom: 15,
    center: fukui,
    mapTypeId: google.maps.MapTypeId.ROADMAP
  };

  var map = new google.maps.Map(document.getElementById("map_canvas13"),myOptions);
   panoramioLayer = new google.maps.panoramio.PanoramioLayer({
    suppressInfoWindows: true
  });
  panoramioLayer.setMap(map);
//福井タグでフィルタかけてる。
  panoramioLayer.setTag("fukui");
  var photoDiv =  document.createElement('div');

  var photoWidgetOptions = {
    width: 256,
    height: 144
  };

  var photoWidget = new panoramio.PhotoWidget(photoDiv, null,photoWidgetOptions);

  var infoWindow = new google.maps.InfoWindow();

  google.maps.event.addListener(panoramioLayer, 'click', function(e) {
    var photoRequestOptions = {
      ids: [{
        'photoId': e.featureDetails.photoId,
         'userId': e.featureDetails.userId
      }]
    };
    photoWidget.setRequest(photoRequestOptions);
    photoWidget.setPosition(0);
    infoWindow.setPosition(e.latLng);
    infoWindow.open(map);
    infoWindow.setContent(photoDiv);
  });
}
google.maps.event.addDomListener(window, 'load', initialize13);

----

金沢市レンタサイクル「まちのり」のポート4

金沢市レンタサイクル「まちのり」のポート4

玉川こども図書館の敷地内のにある。   
道路上からは見えにくいところにあるので注意!

まちのり04玉川町



より大きな地図で 金沢市 コインパーキング&レンタサイクル「まちのり」 を表示


撮影は2012年6月ごろ
周辺

金沢市レンタサイクル「まちのり」のポート3


金沢市レンタサイクル「まちのり」のポート3

金沢市は「まちなか自転車利用環境向上計画」なるものを推進していて街中に無料の駐輪場が数多くある。その数49!(駐輪場リスト

たぶん、レンタサイクル「まちのり」は上記の計画の一環なのかなと。



まちのり03十間町



より大きな地図で 金沢市 コインパーキング&レンタサイクル「まちのり」 を表示


ポートは近江町市場の横にある公園内駐輪場にある。 


撮影は2012年6月ごろ

周辺

金沢市レンタサイクル「まちのり」のポート2


金沢市レンタサイクル「まちのり」のポート2

今日は「まちのり」ポートの紹介。
近所にはエムザとかもあり便利なところにあります。
私が借りたときにはレンタサイクルが残り2台しかなかった。

まちのり02武蔵



より大きな地図で 金沢市 コインパーキング&レンタサイクル「まちのり」 を表示

駐輪場内にある。 エムザ近く

撮影は2012年6月ごろ

周辺

金沢市レンタサイクル「まちのり」のポート1


金沢市レンタサイクル「まちのり」のポート1

金沢市が運営しているレンタサイクル「まちのり
金沢駅から兼六園を中心に18ポートが設置されています。

起点の金沢駅から乗ってみたけど、結構便利。
基本料金は1日200円とお得。
でも30分以内に次のポートに行かないと追加料金が取られます。

自転車の乗り心地は普通だったけど、変速付いていたので運転は楽かなと。

レンタサイクル「まちのり」01金沢駅

以前はコインパーキングとセットだったけど、見辛いので別にしました。



より大きな地図で 金沢市 コインパーキング&レンタサイクル「まちのり」 を表示


金沢県立音楽堂の横にある駐輪場にポートが設置してあるんだけど、ちょっと解りづらいような。。。

駐輪場














初めて借りるときはクレジットカードで登録したほうが便利です。
私が借りたときは、クレジットカード→パスワード用紙発行にしました。

現金でもレンタルできますが、公式HPによるとまちのり事務局か提携窓口で登録が必要とのこと。






金沢市のコインパーキング6

金沢市のコインパーキング6(石川県金沢市広岡1丁目周辺)

今日は金沢市のコインパーキングの紹介

パークステーションAG


平日&土日祝
08:00 - 21:00 60分 100円
21:00 - 08:00 60分 100円

最大料金設定
夜間最大500円(21-8)


撮影は2012年6月ごろ
看板

周辺


2012年6月27日水曜日

Google Maps JavaScript API V3の交通量レイヤと自転車道レイヤ


Google Maps JavaScript API V3の交通量レイヤと自転車道レイヤ

今日はガイドにある交通量レイヤ自転車道レイヤについてやってみた。
交通量レイヤはAndroid のモバイル Google マップアプリ、iOS のマップアプリからも利用可能になっているもので、スマフォを持ってる人は見たことあるんじゃないかな。

自転車道レイヤは自転車専用道路か自転車推奨道路を表示してるんだけど、日本ではまだ運用されてないっぽい。

それでマップと作ってみたのがこれ。


Googleは本当にやることに夢がある。交通量がわかるってことは交通センサスとかも簡単に集計できるようになるし、都市計画とかにも利用できるよな。

ちなみに交通状況を表す色については、


  • 緑色: 交通状況が良い
  • 黄色: ある程度の交通量がある
  • 赤色: 交通量が多く、混雑している
  • 灰色: 現在利用できる情報はありません

っていう意味になります。

ソースは以下の通り
----

var map;

//座標一覧
var Tokyo = new google.maps.LatLng(35.6894875, 139.6917064);
var Paris = new google.maps.LatLng(48.8701348, 2.373046875);

//道路レイヤー
var traffic;
var bikeLayer;

function initialize12() {

  var myOptions = {
    zoom: 12,
    center: Tokyo ,
    mapTypeId: google.maps.MapTypeId.ROADMAP
   
  };

  map = new google.maps.Map(document.getElementById("map_canvas12"),myOptions);
  //交通量レイヤー設定
  traffic = new google.maps.TrafficLayer();
  traffic.setMap(map);
  //自転車道レイヤー設定
  bikeLayer = new google.maps.BicyclingLayer();
}

function straffic(){
  if(traffic.getMap())
  {
    traffic.setMap(null);
  }
  else
  {
    traffic.setMap(map);
    map.panTo(Tokyo);
  }
}
function sbike(){
  if(bikeLayer.getMap())
  {
    bikeLayer.setMap(null);
  }
  else
  {
    bikeLayer.setMap(map);
    map.panTo(Paris);
  }
}
google.maps.event.addDomListener(window, 'load', initialize12);

----

福井市のコインパーキング6

福井市のコインパーキング6

今日は福井市のコインパーキングの紹介
調査日が2009年と少し古いので現在と看板内容が違うかもしれません。

システムパーク片町南口


より大きな地図で 福井市 コインパーキング を表示


終日 40分 100円 

最大料金設定 
なし

撮影は2009年6月ごろ

看板
周辺

2012年6月26日火曜日

Google Maps JavaScript API V3のFusion Tables レイヤについて

Google Maps JavaScript API V3のFusion Tables レイヤ

今回は、Google ドキュメントのFusion Tables(テーブル)のデータを使ってオーバーレイを追加できるのでやってみた。

Google ドキュメントのテーブルは現在ベータ版ということもあり、GoogleMapsApiの方もベータ版って扱いになってます。


実際にデータを作成する際の注意点としては、

1.データをCSVで作る(サンプルは県庁所在地のデータ)

2.住所などの位置座標のわかる列を作る(サンプルは緯度経度)

3.Googleドキュメントの[作成]-[テーブル(ベータ版)]を選んで1.のデータをアップする。



4.1でアップしたファイルをクリックするとエディタ画面になるので、[Edit]-[Modify columns]を選択して緯度をクリックし、[Type]を[Location]にして経度も指定する。

























5.Googleドキュンメントにもどって、ファイルを共有する。

















それで、実際に表示してみたのがこれ。





うわー。これも真っ白になるよ(汗

本当はこんな感じになってます。
とりあえずソースは以下の通り
----
var map;

//座標一覧
var tokyo = new google.maps.LatLng(35.6894875, 139.6917064);

function initialize11() {

  var myOptions = {
    zoom: 5,
    center: tokyo ,
    mapTypeId: google.maps.MapTypeId.ROADMAP
    
  };

  map = new google.maps.Map(document.getElementById("map_canvas11"),myOptions);
  //Fusion Tablesの指定
  var layer = new google.maps.FusionTablesLayer({
    query: {
      select: '緯度',//[Location]指定のときにこの列に経度も割り当ててる。
      from: '1ExhymioVDOoy4-i4ROZV_H3y64CxjZSO_-Azcq0',//docid
    }});
  layer.setMap(map);
}

google.maps.event.addDomListener(window, 'load', initialize11);

----

金沢市 レンタサイクル「まちのり」のポート5

金沢市 レンタサイクル「まちのり」のポート5

今回からまちのりポートは別記事としてアップします。

まちのり05高岡町 



より大きな地図で 金沢市 コインパーキング&レンタサイクル「まちのり」 を表示


金沢文化ホールの横の敷地内のにある。金沢市立中央小学校の近く。


撮影は2012年6月ごろ
周辺


金沢市のコインパーキング5

金沢市のコインパーキング5

今日は金沢市のコインパーキングの紹介
今回からはまちのりは別でアップします。


名鉄協商パーキング金沢駅西 




より大きな地図で 金沢市 コインパーキング&レンタサイクル「まちのり」 を表示

平日&土日祝
00:00 - 24:00 45分 100円

最大料金設定(入庫より24時間)
1000円

アパホテル金沢駅前横の駐車場。

撮影は2012年6月ごろ



看板





周辺

2012年6月25日月曜日

Google Maps JavaScript API V3のKmlLayerについて


Google Maps JavaScript API V3のKmlLayer

KmlLayer オブジェクトは、KML と GeoRSS データ形式をサポートしていて、どちらのファイルを指定しても、オーバーレイとして取り込むことができる。

では早速、KMLでオーバーレイを追加してみた。
追加したデータは私がつくっている金沢市 コインパーキング&レンタサイクル「まちのり」のkmlデータ。


























ううーん。KMLを読み込むと真っ白になる!!!!
なぜ???
ローカルにHTMLとして保存したら表示できる!!!
どういうこと???
もしかしてbloggerでの表示はきびしいのか?

ローカル表示















とりあえずソースは以下の通り。
----

var map;

//座標一覧
var kanazawa = new google.maps.LatLng(36.564139, 136.659402);

function initialize10() {

  var myOptions = {
    zoom: 11,
    center: kanazawa ,
    mapTypeId: google.maps.MapTypeId.ROADMAP
   
  };

  map = new google.maps.Map(document.getElementById("map_canvas10"),myOptions);
  //KMLの指定
  var kmlLayers = new google.maps.KmlLayer('https://maps.google.co.jp/maps/ms?authuser=0&vps=2&hl=ja&brcurrent=h3,0x5ff8beaf3b742b4f:0xa41b1476580dbbbd&ie=UTF8&msa=0&output=kml&msid=202602666216122263377.0004c1c8172c9cf0370f3',
  {suppressInfoWindows: true,map: map});

  //マーカーをクリックしたときの処理
  google.maps.event.addListener(kmlLayers, 'click', function(kmlEvent) {
    var text = kmlEvent.featureData.description;
    showInDiv(text);
  });
}

function showInDiv(text) {
  var sidediv = document.getElementById('contentWindow');
  sidediv.innerHTML = text;
}

google.maps.event.addDomListener(window, 'load', initialize10);


----

Google Maps JavaScript API V3のレイヤ概要

Google Maps JavaScript API V3のレイヤ概要

今日はレイヤの概要について書きます。

レイヤは6つあって
  • KmlLayer オブジェクトは、KML 要素と GeoRSS 要素を Maps API V3 のタイル オーバーレイにレンダリングします。
  • FusionTablesLayer オブジェクトは、Google Fusion Tables に格納されているデータをレンダリングします。
  • TrafficLayer オブジェクトは、交通状況を示すレイヤと交通路線を示すオーバーレイをレンダリングします。
  • BicyclingLayer オブジェクトは、バイク パスのレイヤや自転車固有のオーバーレイを共通のレイヤにレンダリングします。このレイヤは、交通手段 BICYCLING のルートをリクエストしたときに、デフォルトで DirectionsRenderer に返されます。
  • Panoramio レイヤは、Panoramio にある写真を、PanoramioLayer オブジェクトを使用して自分の地図にレイヤとして追加することができます。
  • カスタム オーバーレイを作成するための OverlayView クラスを用意しています。OverlayView は基本クラスで、オーバーレイを作成するときに実装する必要のあるいくつかのメソッドを用意しています。また、画面上の座標と、地図上の場所との変換を行ういくつかのメソッドも用意しています。
とある。

 最初のレイヤ「KmlLayer」KMLとGeoRSSを読み込みできるもので、1個目にある「GeoRSS」ってのはRSSのフォーマットを拡張して位置情報をRSSフィードに格納できるようにした仕様で、RSSの中に位置座標の緯度経度が挿入されているものらしい。参照ここ

次にある「FusionTableLayer」はGoogleが運用しているデーターベースと連携できるようにしてあるレイヤみたい。

残り2つの「TrafficLayer 」と「BicyclingLayer 」は自動車の交通状況(GoogleMapsの交通状況で表示可能)と自転車の道路標示ってことみたい。
 ちなみに「BicyclingLayer 」は日本では運用されてないっぽい。

あと、5つ目としてあがっている「Panoramio レイヤ」はPanoramioにあがっている写真をGoogleMapsAPIを使ってPanoramio の写真を利用できるってことらしい。
 これって、現在GoogleMapsの写真レイヤとは別に表示可能ってことかな?

 最後のカスタムオーバーレイはよくわからん。。。
文章を読むと、「画面上の座標と、地図上の場所との変換を行う」とあるので、GoogleMaps上に別のレイヤと情報ウィンドウとは使わずにいろいろ表示できるってことなんだろうか???
とりあえず、後日試してみようかと。


しっかし、Googleは写真管理を今後どうしてくんだろーね。
いまのところ
  • Picasa(自分の写真管理?)
  • Panaramio(位置情報つきの写真公開)
ってサービスが別々にあるけど、これ将来的には統一されるんじゃなかろうか
 

福井市のコインパーキング5


福井市のコインパーキング5

今日は福井市のコインパーキングの紹介


調査日が2009年と少し古いので現在と看板内容が違うかもしれません。


エコロパークヘルシープラザ駐車場 



より大きな地図で 福井市 コインパーキング を表示


平日及び土日祝 
06:00 - 18:00 40分 100円 
18:00 - 06:00 60分 100円 


最大料金設定 
なし 


撮影は2009年6月ごろ


看板

周辺

2012年6月22日金曜日

Google Maps JavaScript API V3の情報ウィンドウの使い方2


Google Maps APIの情報ウィンドウの使い方(flash&USTREAM編)

今日も前回の続きでオーバーレイについての3回目。

 前回、Javaアプレットを情報ウィンドウに追加してみたんだけど、flashやUSTREAMを追加したらどうなるのかやってみた!



 両国のポイントに関しては、第一ホテル両国のライブカメラ(flash)を、秋葉原のポイントに関してはUSTREAMの秋葉原駅ライブカメラ HD配信のライブカメラ(iframeタグ)をつかっています。


今回はうまくいったか!?
うーん。やっぱいnternet Explorer 8だとGoogle Mapsが表示されないな。

とりあえずソースは以下の通り
----

var map;
var image;
var shadow;

//座標一覧
var ryogoku = new google.maps.LatLng(35.698135, 139.796927);
var akiba = new google.maps.LatLng(35.700828, 139.773227);

function initialize9() {

  var myOptions = {
    zoom: 13,
    center: ryogoku,
    mapTypeControl: true,
    zoomControl: true,
    mapTypeId: google.maps.MapTypeId.ROADMAP,
   
  };

  map = new google.maps.Map(document.getElementById("map_canvas9"),
      myOptions);

  image = new google.maps.MarkerImage("https://lh5.googleusercontent.com/-PGl4paWviPM/T-J3F3ebegI/AAAAAAAABTI/eAAxcZILP_I/s800/webcam.png",
      new google.maps.Size(32.0, 37.0),
      new google.maps.Point(0, 0),
      new google.maps.Point(16.0, 37.0)
  );
  shadow = new google.maps.MarkerImage("https://lh6.googleusercontent.com/-iHQVXemmSRk/T-J3FrZVGTI/AAAAAAAABTE/g7IOR9avsCI/s800/shadow-webcam.png",
      new google.maps.Size(51.0, 37.0),
      new google.maps.Point(0, 0),
      new google.maps.Point(16.0, 37.0)
  );

  infoMarker1();
  infoMarker2();
}

//独自マーカーの設定1(flash)
function infoMarker1() {

     var marker1 = new google.maps.Marker({
        position: ryogoku ,
        map: map,
        icon: image,
        shadow: shadow
    });
   //ライブカメラのflash
    var htmlStr1 =
'<figure class="flash">' +
'    <!--[if !IE]><-->' +
'    <object data="http://www.dh-ryogoku.com/flash/live.swf" width="230" height="150" type="application/x-shockwave-flash">' +
'    <!--><![endif]-->' +
'    <!--[if IE]>' +
'    <object classid="clsid:d27cdb6e-ae6d-11cf-96b8-444553540000" codebase="http://download.macromedia.com/pub/shockwave/cabs/flash/swflash.cab#version=9,0,124,0" width="230" height="150" type="application/x-shockwave-flash">' +
'        <param name="movie" value="http://www.dh-ryogoku.com/flash/live.swf" />' +
'        <![endif]-->' +
'        <param name="src" value="http://www.dh-ryogoku.com/flash/live.swf" />' +
'        <param name="quality" value="best" />' +
'        <param name="pluginspage" value="http://www.adobe.com/go/getflashplayer" />' +
'        <param name="align" value="middle" />' +
'        <param name="play" value="true" />' +
'        <param name="loop" value="true" />' +
'        <param name="scale" value="showall" />' +
'        <param name="wmode" value="window" />' +
'        <param name="devicefont" value="false" />' +
'        <param name="id" value="live" />' +
'        <param name="bgcolor" value="#ffffff" />' +
'        <param name="name" value="live" />' +
'        <param name="menu" value="false" />' +
'        <param name="allowFullScreen" value="false" />' +
'        <param name="allowScriptAccess" value="sameDomain" />' +
'        <param name="salign" value="" />' +
'    </object>' +
'</figure>';


    var infowindow1 = new google.maps.InfoWindow({
      content: htmlStr1,
    });

    google.maps.event.addListener(marker1, 'click', function(event) {      
        infowindow1.open(map,marker1);
    });
}

//独自マーカーの設定2(USTREAM)
function infoMarker2() {

     var marker2 = new google.maps.Marker({
        position: akiba,
        map: map,
        icon: image,
        shadow: shadow
    });
   //ライブカメラのflash
    var htmlStr2 =
'<iframe src="http://www.ustream.tv/embed/9701836" width="300" height="195" scrolling="no" frameborder="0" style="border: 0px none transparent;"></iframe>' +
'<br />' +
'<a href="http://www.ustream.tv/everywhere" style="padding: 2px 0px 4px; width: 400px; background: #ffffff; display: block; color: #000000; font-weight: normal; font-size: 10px; text-decoration: underline; text-align: center;" target="_blank">Live video from your iPhone using Ustream</a>';


    var infowindow2 = new google.maps.InfoWindow({
      content: htmlStr2,
    });

    google.maps.event.addListener(marker2, 'click', function(event) {      
        infowindow2.open(map,marker2);
    });
}


google.maps.event.addDomListener(window, 'load', initialize9);

----


金沢市のコインパーキング4

金沢市のコインパーキング4

今日は金沢市のコインパーキングの紹介。

パラカ 金沢市本町第1



より大きな地図で 金沢市 コインパーキング&レンタサイクル「まちのり」 を表示

平日&土日祝  
00:00 - 24:00 20分 100円 

最大料金設定(入庫後24時間)  
1000円 

ホテル日航金沢の横

撮影は2012年6月ごろ
看板

周辺




























2012年6月21日木曜日

Google Maps JavaScript API V3の情報ウィンドウの使い方


Google Maps APIの情報ウィンドウの使い方(Java applet編)

前回に続いて、オーバーレイについての2回目。
今回はマーカーなどに追加できる独自マーカー情報ウィンドウについて作ってみる。
(うーん。ガイドの順番が情報ウィンドウとグラウンドオーバーレイがインデックスと本文で逆だなぁ)

独自マーカー

ガイドを読むと「複雑な図形(クリック可能な領域を示す)の指定、影のイメージの追加、他のオーバーレイ図形との表示上の関係を示す「積み上げ順序」などを指定できます。」とある。

影の作成に関しては

影の画像は通常、主の画像の右上方向に 45 度の角度で作成する必要があり、影の画像の左下角はアイコン画像の左下角と揃っている必要があります。影の画像は、画像の境界が地図上に正しく表示されるように、アルファ透明度の 24 ビット PNG 画像にする必要があります。

とあるけども、簡単にWeb上で作成できるところもあるのでそちらを使います。

Shadowmaker(http://www.cycloloco.com/shadowmaker/

今回使うのはコレ
WebCam







ちなみに、ガイドの中のソースに
----
var shape = {
      coord: [1, 1, 1, 20, 18, 20, 18 , 1],
      type: 'poly'
----
とあるけど、これはクリックできる範囲を指定していて、
coord: [1, 1(左上の座標), 1, 20(左下の座標), 18, 20(右上の座標), 18 , 1(右下の座標)]


って意味になってます。




ガイドを読むと「InfoWindow のコンテンツとしては、テキスト文字列、HTML のスニペット、または DOM 要素そのものが可能です。」ってあるので、かなり自由な表現ができるのかも。

で、思ったのが情報ウィンドウにWebカメラの映像(Javaアプレット)が入れらるんじゃないかと思いチャレンジしてみた。



一応成功か?!
うーん???
あれ??
環境によって見えない!!!!!

Google Chromeだとマーカ内でJavaアプレットを表示すると上半分が表示されない。。。
Firefox ver13.0.1だと表示される。
opera ver 12.00だとアプレット表示で固まるときがある。
Internet Explorer 8だとGoogle Mapが表示されない。。。


Webカメラの場所は福井県三方郡美浜町の竹波海水浴場からのライブ映像を使いました。
ちなみにここのライブカメラ、関西電力美浜発電所がみえるよ!

以下ソース
----


var map;

//座標一覧
var takenami = new google.maps.LatLng(35.695591, 135.976506);


//icon
var iconimage1 = 'http://maps.google.com/mapfiles/kml/pal2/icon4.png';

function initialize8() {

  var myOptions = {
    zoom: 13,
    center: takenami ,
    mapTypeControl: true,
    zoomControl: true,
    mapTypeId: google.maps.MapTypeId.ROADMAP,
 
  };

  map = new google.maps.Map(document.getElementById("map_canvas8"),
      myOptions);
  infoMarker();
}

//独自マーカーの設定
function infoMarker() {
    var image = new google.maps.MarkerImage("https://lh5.googleusercontent.com/-PGl4paWviPM/T-J3F3ebegI/AAAAAAAABTI/eAAxcZILP_I/s800/webcam.png",
        new google.maps.Size(32.0, 37.0),
        new google.maps.Point(0, 0),
        new google.maps.Point(16.0, 18.0)
    );
    var shadow = new google.maps.MarkerImage("https://lh6.googleusercontent.com/-iHQVXemmSRk/T-J3FrZVGTI/AAAAAAAABTE/g7IOR9avsCI/s800/shadow-webcam.png",
        new google.maps.Size(51.0, 37.0),
        new google.maps.Point(0, 0),
        new google.maps.Point(16.0, 18.0)
    );
    var marker = new google.maps.Marker({
        position: takenami,
        map: map,
        icon: image,
        shadow: shadow
    });
    //ライブカメラのアプレット
    var htmlStr=
'<applet archive="LiveApplet.zip" codebase="http://mihamalive.aa2.netvolante.jp:8080/-wvdoc-01-/LiveApplet/" code="LiveApplet.class" width="450" height="380">' +
'<param NAME="cabbase" VALUE="LiveApplet.cab">' +
'<param NAME="video_width" VALUE="320">' +
'<param NAME="url" VALUE="http://mihamalive.aa2.netvolante.jp:8080/">' +
'<param NAME="locale" VALUE="japanese">' +
'</applet>';

    var infowindow = new google.maps.InfoWindow({
      content: htmlStr,
    });

    google.maps.event.addListener(marker, 'click', function(event) {      
        infowindow.open(map,marker);
    });
}

google.maps.event.addDomListener(window, 'load', initialize8);

----





福井市のコインパーキング4

福井市のコインパーキング4


今日は福井市のコインパーキングの紹介。


より大きな地図で 福井市 コインパーキング を表示

繊協ビル駐車場




平日&土日祝 
最初の30分無料
その後30分ごとに100円

最大料金設定
なし

昔はバスの発着場だったところをコインパーキングに変更。
現在のバスの発着場は福井駅のアオッサ側に移動。

撮影は2012年6月ごろ
周辺

2012年6月20日水曜日

Google Maps JavaScript API V3のオーバーレイについて


Google Maps API V3のオーバーレイについて

今日はオーバレイの概要からグラウンドオーバーレイまでをいっぺんに追加してみる。

ガイドを読むとマーカーやポリゴン、特殊なオーバレイなど、いろいろ追加できるとわかる。

中心座標は鯖江市に。その他周辺の位置にマーカー(西山公園、バウンドあり)、ポリゴン(鯖江市役所)、ポリライン(日野川)、グラウンドオーバレイ(三里山周辺)を追加してみた。


いやー、地図にお絵かきっていうか、強調できるんは見た目が良いね。

しかし、グラウンドオーバレイだけどGeoTiffがそのまんま載らないんだろうか??
座標指定は少し面倒かも。

ソースはこんな感じ。
----


var map;

//中心マーカー
var markerCenter;

//座標一覧
var sabae = new google.maps.LatLng(35.956456640995, 136.184343521004);
var nishiyama =  new google.maps.LatLng(35.9503251123204,136.180942894631);
var hinogawaCoords = [
    new google.maps.LatLng(35.9897759546115, 136.15671113723),
    new google.maps.LatLng(35.9853856717707, 136.162285932402),
    new google.maps.LatLng(35.9815857769293, 136.161750182866),
    new google.maps.LatLng(35.9756918011123, 136.166577568652),
    new google.maps.LatLng(35.9699038673229, 136.167335901891),
    new google.maps.LatLng(35.9641308759822, 136.170528533681),
    new google.maps.LatLng(35.9569492233219, 136.169862235689),
    new google.maps.LatLng(35.9523142130165, 136.172431655142)
    ];
var sabaecityofficeCoords =  [
    new google.maps.LatLng(35.9567998750009, 136.183631711986),
    new google.maps.LatLng(35.9568217304901, 136.184321483492),
    new google.maps.LatLng(35.9566640492796, 136.18515405538),
    new google.maps.LatLng(35.9560162933907, 136.184842693366),
    new google.maps.LatLng(35.9560999244364, 136.18382370694)
    ];
var sundome = new google.maps.LatLng(35.9305682166893, 136.185652164702);
//グラウンドオーバーレイは右下左上の順番で指定
var sanriyama = new google.maps.LatLngBounds(
    new google.maps.LatLng(35.9259252797054, 136.199470374279),
    new google.maps.LatLng(35.9529052103095, 136.232794487593));
 

//グーグルマップのアイコン
var iconimage1 = 'http://maps.google.com/mapfiles/kml/pal2/icon4.png';

function initialize7() {

  var myOptions = {
    zoom: 13,
    center: sabae,
    mapTypeControl: true,
    mapTypeControlOptions: {
      style: google.maps.MapTypeControlStyle.DROPDOWN_MENU
    },
    zoomControl: true,
    mapTypeId: google.maps.MapTypeId.ROADMAP

  };

  map = new google.maps.Map(document.getElementById("map_canvas7"),
      myOptions);

  markerCenter= new google.maps.Marker({
    map:map,
    draggable:true,
    animation: google.maps.Animation.DROP,
    position: nishiyama,
    icon: iconimage1
  });
  google.maps.event.addListener(markerCenter, 'click', toggleBounce);

  //ポリライン
  var linePath = new google.maps.Polyline({
    path: hinogawaCoords,
    strokeColor: "#FF0000",
    strokeOpacity: 1.0,
    strokeWeight: 2
  });
  linePath.setMap(map);

  //ポリゴン
  var polygonPath = new google.maps.Polygon({
    paths: sabaecityofficeCoords,
    strokeColor: "#FF0000",
    strokeOpacity: 0.8,
    strokeWeight: 2,
    fillColor: "#FF0000",
    fillOpacity: 0.35
  });
  polygonPath.setMap(map);

  //円
  var circularPath = new google.maps.Circle({
    strokeColor: "#FF0000",
    strokeOpacity: 0.8,
    strokeWeight: 2,
    fillColor: "#FF0000",
    fillOpacity: 0.35,
    center: sundome,
    radius: 60
  });
  circularPath.setMap(map);

  //グラウンド オーバーレイ
  var map25000 = new google.maps.GroundOverlay(
      "https://lh3.googleusercontent.com/-IfwN3BbkHJw/T-ExJc546YI/AAAAAAAABRc/q2MfssEqRtI/s800/25000test.jpg",
    sanriyama);
  map25000.setMap(map);

}

//中心マーカーのバウンド切り替え
function toggleBounce() {

  if (markerCenter.getAnimation() != null) {
    markerCenter.setAnimation(null);
  } else {
    markerCenter.setAnimation(google.maps.Animation.BOUNCE);
  }
}

google.maps.event.addDomListener(window, 'load', initialize7);


----


金沢市のコインパーキング&レンタサイクル「まちのり」3

金沢市のコインパーキング3

今日は金沢市のコインパーキングの紹介


 ここのパーキングは、音楽堂にも近く値段も手ごろなのはいいんですが、パーキングの表示が満車でも「だった。
多分センサーが壊れてるかと。


FRST.P 音楽堂前



より大きな地図で 金沢市 コインパーキング&レンタサイクル「まちのり」 を表示


平日&土日祝  
08:00 - 22:00 45分 100円 
22:00 - 00:00 60分 100円 

最大料金設定 
なし 


撮影は2012年6月ごろ 



看板

周辺




























2012年6月19日火曜日

Google Maps JavaScript API V3のスタイリングについて2


Google Maps API V3のスタイリングについて(StyledMapType)

スタイリングの続き。

今日はStyledMapTypeをつかって地図の見え方を変更してみる。

この方法だと通常マップには影響がでずに、別マップとして登録可能。

前回と同じように学校を水色にして別背景マップとして登録してみた。

中心は富山県庁。



右上の「Blue School」をクリックすることで地図が切り替わるのが確認できるかと。

ソースはこんな感じ。

----

function initialize6() {
  var blueSchoolStyles = [
    {
      featureType: "poi.school",
      stylers: [
        { saturation: 40 },
        { lightness: 30 },
        { hue: "#87ceeb" },
        { gamma: 0.8 }
      ]
    }
  ];

  var blueSchoolMapType = new google.maps.StyledMapType(blueSchoolStyles,
      {name: "Blue School"});

  var myOptions = {
    zoom: 15,
    center: new google.maps.LatLng(36.6952907, 137.2113383),
    mapTypeControlOptions: {
      mapTypeIds: [google.maps.MapTypeId.ROADMAP, 'blue_school']
    },
    zoomControl: true
 
  };
  var map = new google.maps.Map(document.getElementById("map_canvas6"),
      myOptions);

  map.mapTypes.set('blue_school', blueSchoolMapType);
  map.setMapTypeId('blue_school');

}
google.maps.event.addDomListener(window, 'load', initialize6);

----

福井市のコインパーキング3

福井市のコインパーキング3

今日は福井市のコインパーキングの紹介。

これもデータが少し古いのでそのうち見直します。

エコロパークセントラル駐車場



より大きな地図で 福井市 コインパーキング を表示

平日&土日祝 
01:00 - 19:00 30分 100円 
19:00 - 01:00 20分 100円 

最大料金設定 
なし

撮影は2009年6月ごろ
看板

周辺

2012年6月18日月曜日

Google Maps JavaScript API V3のスタイリングについて


Google Maps API V3のスタイリングについて(MapOptions)

今日はスタイリングについて書きます。

ガイドを読むと地図の見え方を制御する方法として
  • MapOptionsで指定
  • StyledMapTypeで指定
の2つの方法があると。
しかも、新しいマップとしても登録できるっぽい。

また、ガイドには色の指定などのスタイルを簡単に試すHPものってました。さすがGoogle先生

まずはガイドを参考に、制御方法1つめにあるMapOpthionを使って学校を水色っぽくしてみた。



中心座標は石川県庁で、見た目的にラベルも水色っぽくなってるのがわかるかと。

ソースはこんな感じ。

----

var blueSchoolStyles = [
  {
    featureType: "poi.school",
    stylers: [
      { saturation: 40 },
      { lightness: 30 },
      { hue: "#87ceeb" },
      { gamma: 0.8 }
    ]
  }
]
;

function initialize5() {
  var myOptions = {
    zoom: 15,
    center: new google.maps.LatLng(36.5946816, 136.6255726),
    mapTypeControl: true,
    mapTypeControlOptions: {
      style: google.maps.MapTypeControlStyle.DROPDOWN_MENU
    },
    zoomControl: true,
    mapTypeId: google.maps.MapTypeId.ROADMAP,
    styles: blueSchollStyles
  }
  var map = new google.maps.Map(document.getElementById("map_canvas5"),
      myOptions);

}
google.maps.event.addDomListener(window, 'load', initialize5);

----

今回の今回のサンプルはmyOptions内に「styles:」として登録していますが、ガイドの中にあるように後から設定もできる。
ソース的には「var map = new google.maps」の下に「map.setOptions({styles: blueSchoolStyles});」を追加。




金沢市のコインパーキング2

金沢市のコインパーキング2

今日は金沢市のコインパーキングとレンタサイクルポートの紹介


パークステーション昭和町



より大きな地図で 金沢市 コインパーキング&レンタサイクル「まちのり」 を表示

平日&土日祝 
08:00 - 22:00 60分 100円 
22:00 - 08:00 60分 100円 

最大料金設定
なし

撮影は2012年6月ごろ

看板















周辺