HTMLファイル全体のコードを次のようにしました。
openlayers40_wmc2.html
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
<meta http-equiv="Content-Type" content="text/html; charset=utf-8">
<title>OpenLayers40 WMC 2</title>
<link rel="stylesheet" href="./theme/default/style.css" type="text/css" />
<link rel="stylesheet" href="./examples/style.css" type="text/css" />
<!-- OpenLayers ライブラリ -->
<script src="./lib/Firebug/firebug.js"></script>
<script src="./lib/OpenLayers.js"></script>
<!-- Proj4js ライブラリ -->
<script type="text/javascript" src="./lib/proj4js/lib/proj4js-compressed.js"></script>
<script type="text/javascript" src="./lib/proj4js/lib/projCode/tmerc.js"></script>
<script type="text/javascript" src="./lib/proj4js/lib/defs/EPSG2456.js"></script>
<!-- WMC のコード -->
<script type="text/javascript">
// no pink please
OpenLayers.IMAGE_RELOAD_ATTEMPTS = 2;
OpenLayers.Util.onImageLoadErrorColor = "transparent";
var format = new OpenLayers.Format.WMC({'layerOptions': {buffer: 0}});
var map, options; // 修正
function init() {
// 東京都用 map の設定
options = {
projection: new OpenLayers.Projection("EPSG:2456"),
displayProjection: new OpenLayers.Projection("EPSG:4326"),
maxResolution: 'auto',
units: 'meters',
maxExtent: new OpenLayers.Bounds(-279000,1054000,-185000,1104000)
};
map = new OpenLayers.Map("map", options);
// ここまで
// 出力した Map Context にマップファイルのディレクトリを追加して保存
var url = "./tokyo_map_context_ol.xml";
// tokyo_map_context_ol.xml をファイルを読み込み
OpenLayers.loadURL(url, null, null, loadSuccess);
} End of functin init()
// 読み込みが成功したときの処理
function loadSuccess(request){
var wmc_doc = request.responseText;
// map.destroy();
// map = format.read(wmc_doc, {map: new OpenLayers.Map("map", options)});
map = format.read(wmc_doc, {map: map});
map.addControl(new OpenLayers.Control.LayerSwitcher());
map.addControl(new OpenLayers.Control.MousePosition()); // 追加
map.addControl(new OpenLayers.Control.ScaleLine()); // 追加
map.zoomToMaxExtent();
}
</script>
</head>
<body onload="init()">
<h1 id="title">OpenLayers Tokyo Map Context</h1>
<div id="map" class="smallmap"></div>
</body>
</html>
wmc.html の「read and merge」のボタンをクリックしたとき、次のコードが実行されます。
map = format.read(wmc_doc, {map: map});
動作は、元の地図上に Map Context で設定された地図が合併(merge)されます。
この単純なコードの openlayers40_wmc2.html ファイルでも Map Context に設定された地図(だけ)表示されます。
次回は、New Map の動作
0 件のコメント:
コメントを投稿