0
私はいくつかのマップタイルをテストするための簡単なhtmlを作成しました。問題は、私はTMS投影法を使用させたが、私はOSMの例を使用していたので、すべてのタイルが垂直に逆さまに表示されているということです。私はTMSに切り替えることを試みたが、何十ダースも失敗したatemptsの後、私は何かが欠けているようだ、誰でもコードを修正するのを助けてくれる?OpenLayers OSMからTMSへの変更方法を教えてください。
<html>
<head>
<link rel="stylesheet" href="style.css" type="text/css" />
<script src="OpenLayers.js"></script>
<script src="OpenStreetMap.js"></script>
<script type="text/javascript">
var map, layer;
//Initialise the 'map' object
function init() {
map = new OpenLayers.Map ("map", {
controls:[
new OpenLayers.Control.Navigation(),
new OpenLayers.Control.PanZoomBar(),
new OpenLayers.Control.Permalink(),
new OpenLayers.Control.ScaleLine({geodesic: true}),
new OpenLayers.Control.Permalink('permalink'),
new OpenLayers.Control.MousePosition(),
new OpenLayers.Control.Attribution()],
maxExtent: new OpenLayers.Bounds(0.0, -10000.0, 10000.0, 0.0),
maxResolution: 64.000000,
numZoomLevels: 7,
units: 'm',
projection: new OpenLayers.Projection("EPSG:900913"),
displayProjection: new OpenLayers.Projection("EPSG:4326")
});
// Add Base map.
layer = new OpenLayers.Layer.OSM("Base Map", "tiles/base/${z}/${x}/${y}.jpg", {numZoomLevels: 7, alpha: false, isBaseLayer: true});
map.addLayer(layer);
// Add Layers.
layer = new OpenLayers.Layer.OSM("Terrain", "tiles/terrain/${z}/${x}/${y}.png", {numZoomLevels: 7, alpha: false, isBaseLayer: false});
map.addLayer(layer);
layer = new OpenLayers.Layer.OSM("Lables", "tiles/lables/${z}/${x}/${y}.png", {numZoomLevels: 7, alpha: false, isBaseLayer: false});
map.addLayer(layer);
var switcherControl = new OpenLayers.Control.LayerSwitcher();
map.addControl(switcherControl);
switcherControl.maximizeControl();
if(! map.getCenter()){
var lonLat = new OpenLayers.LonLat(10, 10).transform(new OpenLayers.Projection("EPSG:4326"), map.getProjectionObject());
map.setCenter (lonLat, 5);
}
}
</script>
</head>
<body onload="init();">
<div style="width:100%; height:100%" id="map"></div>
</body>
</html>
Basiclyは私が必要とするすべては、一つのベースマップ層(JPG)とすべてのTMS、256×256、7つのズームレベルを使用して、いくつかの任意の層(透明度とPNG)及び「タイル/ layername/...」
に位置しています