source: subversion/applications/rendering/pyrender/slippy.html @ 8183

Last change on this file since 8183 was 8183, checked in by spaetz, 11 years ago

reworked URL param handling for permalinks. final version.

File size: 2.8 KB
Line 
1<html>
2<head>
3    <title>OpenStreetMap</title>
4    <script src="http://openlayers.org/api/OpenLayers.js"></script> 
5    <script src="http://openstreetmap.org/openlayers/OpenStreetMap.js"></script>
6
7    <script type="text/javascript">
8      function getUrlParam( name )
9      {
10      name = name.replace(/[\[]/,"\\\[").replace(/[\]]/,"\\\]");
11      var regexS = "[\\?&]"+name+"=([^&#]*)";
12      var regex = new RegExp( regexS );
13      var results = regex.exec( window.location.href );
14      if( results == null )
15      return "";
16      else
17      return results[1];
18      }
19
20        // Default map position if not overridden by URL parameters
21        var lon = getUrlParam("lon");
22        var lat = getUrlParam("lat");
23        var zoom = getUrlParam("zoom");
24        if (lon=="") lon=-0.11768
25        if (lat=="") lat=51.50869
26        if (zoom=="") zoom=13
27               
28        var map; //complex object of type OpenLayers.Map
29
30        //Initialise the 'map' object
31        function init() {
32         
33            map = new OpenLayers.Map ("map", {
34                controls:[
35                    new OpenLayers.Control.Navigation(),
36                    new OpenLayers.Control.Permalink(),
37                    new OpenLayers.Control.LayerSwitcher(),
38                    new OpenLayers.Control.PanZoomBar()],
39                maxExtent: new OpenLayers.Bounds(-20037508.34,-20037508.34,20037508.34,20037508.34),
40                maxResolution: 156543.0399,
41                numZoomLevels: 19,
42                units: 'meters',
43                projection: new OpenLayers.Projection("EPSG:900913"),
44                displayProjection: new OpenLayers.Projection("EPSG:4326")
45            } );
46               
47
48            // Define the map layer
49            // Note that we use a predefined layer that will be
50            // kept up to date with URL changes
51            // Here we define just one layer, but providing a choice
52            // of several layers is also quite simple
53            // Other defined layers are OpenLayers.Layer.OSM.Mapnik and OpenLayers.Layer.OSM.Maplint
54            layerTilesAtHome = new OpenLayers.Layer.OSM.Osmarender("Osmarender");
55            layerPyrender = new OpenLayers.Layer.OSM(
56                 "Pyrender",
57                 "/tile/",
58                 {isBaseLayer:false, maxResolution:37}
59             );
60            map.addLayers([layerPyrender,layerTilesAtHome]);
61
62            var lonLat = new OpenLayers.LonLat(lon, lat).transform(new OpenLayers.Projection("EPSG:4326"), new OpenLayers.Projection("EPSG:900913"));
63            map.setCenter (lonLat, zoom);
64        }
65       
66    </script>
67</head>
68
69<!-- body.onload is called once the page is loaded (call the 'init' function) -->
70<body onload="init();">
71
72    <!-- define a DIV into which the map will appear. Make it take up the whole window -->
73    <div style="width:100%; height:100%" id="map"></div>
74   
75</body>
76
77</html>
Note: See TracBrowser for help on using the repository browser.