YJDN-map というYahoo!地図Web APIのメーリングリストにて、 「Yahoo!地図企画担当」 と名乗る人が 「[YJDN-map][00274] 地下街マップに対応しました」 というタイトルで地下街マップを表示する方法を投稿していた。
ただ、なぜかWeb上にはまったくドキュメントが公開されていないので、ここにメモしておく (メーリングリストのアーカイブは非公開になっている)。

以下、JavaScript版地図APIでの地下街マップ使用方法。

Version 3 の API を使う


<script type="text/javascript" src="http://map.yahooapis.jp/MapsService/js/V3/?appid=アプリケーションID"></script>

# Yahoo!地図Web APIの公式サイトにはV2までしか公開されていない。。。

setEnableUgButton メソッド

YahooMapsCtrlクラスに新しく追加されたメソッド。
地下街が存在する場所で自動的に地下街ボタンを表示するか設定することができる。

setEnableUgButton(true) で地下街ボタンを表示。
setEnableUgButton(false) で地下街ボタンを非表示。

地下街ボタンを表示する例(サンプルコード)


ymap = new YahooMapsCtrl("map");
ymap.setEnableUgButton(true);

setEnableUgAutoPackageChange メソッド

YahooMapsCtrlクラスに新しく追加されたメソッド。
地下街が存在しないエリアにスクロールした場合、自動的に地図へ切替を行うか設定することができる。

setEnableUgAutoPackageChange(true) で自動的に地図へ切替する。
setEnableUgAutoPackageChange(false) で自動的に地図へ切替しない。

自動的に地図へ切替する例(サンプルコード)


ymap = new YahooMapsCtrl("map");
ymap.setEnableUgAutoPackageChange(true);

YMapMode.B1MAP

YMapMode.B1MAP は地下街マップをあらわすYMapMode定数

地下街マップに切り替える例(サンプルコード)


ymap = new YahooMapsCtrl("map");
ymap.changeMode(YMapMode.B1MAP);

地下街マップを表示するサンプル

サンプルコード:


<html>
<head>
<meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
<title>sample of yahoo map api with underground city maps</title>
<script type="text/javascript" src="http://map.yahooapis.jp/MapsService/js/V3/?appid=アプリケーションID"></script>
<script type="text/javascript">
  var ymap;
  window.onload = function() {
    var id = "map";
    var pos = new YLLPoint(35.1675, 136.88555556); // position of Nagoya Station (for TOKYO97 not WGS84)
    var layer = 3;
    var mode = YMapMode.B1MAP; // for underground city map
    ymap = new YahooMapsCtrl(id, pos, layer, mode);
    ymap.setEnableUgButton(true); // for underground city map
    ymap.setEnableUgAutoPackageChange(false); // for underground city map
  }
</script>
</head>
<body>
 
<h1>sample of yahoo map api with underground city maps</h1>
<div id="map" style="width:400px; height:300px"></div>
 
</body>
</html>

動作サンプル:
sample of yahoo map api with underground city maps

参考資料

幻のV3

なぜだか知らないが、縮尺の説明箇所では Version 3 について言及されている。。。

※ JavaScript版地図API Version 3では、22段階の縮尺を用意しています。

Yahoo!デベロッパーネットワーク - 補足説明 - 縮尺について

公式には Version3 は公開されてるものなのか、そうじゃないのか、いまいちわからない。。。

tags: zlashdot GIS YahooJapanMapsAPI

Posted by NI-Lab. (@nilab)