Add the cycle map to the main site.
authorTom Hughes <tom@compton.nu>
Mon, 19 May 2008 09:57:58 +0000 (09:57 +0000)
committerTom Hughes <tom@compton.nu>
Mon, 19 May 2008 09:57:58 +0000 (09:57 +0000)
public/export/embed.html
public/javascripts/map.js
public/openlayers/OpenStreetMap.js

index ae82eb5..af45a6b 100644 (file)
                    attribution: attribution
                 });
                 map.addLayer(mapnik);
-            } else {
+            } else if (args.layer == "osmarender") {
                 var osmarender = new OpenLayers.Layer.OSM.Osmarender("Osmarender", {
                    displayOutsideMaxExtent: true,
                    wrapDateLine: true,
                    attribution: attribution
                 });
                 map.addLayer(osmarender);
+            } else if (args.layer == "cycle map") {
+                var cyclemap = new OpenLayers.Layer.OSM.CycleMap("Cycle Map", {
+                   displayOutsideMaxExtent: true,
+                   wrapDateLine: true,
+                   attribution: attribution
+                });
+                map.addLayer(cyclemap);
             }
 
             if (args.marker) {
index db5b856..e1baba5 100644 (file)
@@ -34,6 +34,12 @@ function createMap(divName) {
    });
    map.addLayer(osmarender);
 
+   var cyclemap = new OpenLayers.Layer.OSM.CycleMap("Cycle Map", {
+      displayOutsideMaxExtent: true,
+      wrapDateLine: true
+   });
+   map.addLayer(cyclemap);
+
    var maplint = new OpenLayers.Layer.OSM.Maplint("Maplint", {
       displayOutsideMaxExtent: true,
       wrapDateLine: true
index c2acf2e..c783dba 100644 (file)
@@ -155,6 +155,34 @@ OpenLayers.Layer.OSM.Osmarender = OpenLayers.Class(OpenLayers.Layer.OSM, {
     CLASS_NAME: "OpenLayers.Layer.OSM.Osmarender"
 });
 
+/**
+ * Class: OpenLayers.Layer.OSM.CycleMap
+ *
+ * Inherits from:
+ *  - <OpenLayers.Layer.OSM>
+ */
+OpenLayers.Layer.OSM.CycleMap = OpenLayers.Class(OpenLayers.Layer.OSM, {
+    /**
+     * Constructor: OpenLayers.Layer.OSM.CycleMap
+     *
+     * Parameters:
+     * name - {String}
+     * options - {Object} Hashtable of extra options to tag onto the layer
+     */
+    initialize: function(name, options) {
+        var url = [
+            "http://a.thunderflames.org/tiles/cycle/",
+            "http://b.thunderflames.org/tiles/cycle/",
+            "http://c.thunderflames.org/tiles/cycle/"
+        ];
+        options = OpenLayers.Util.extend({ numZoomLevels: 17 }, options);
+        var newArguments = [name, url, options];
+        OpenLayers.Layer.OSM.prototype.initialize.apply(this, newArguments);
+    },
+
+    CLASS_NAME: "OpenLayers.Layer.OSM.CycleMap"
+});
+
 /**
  * Class: OpenLayers.Layer.OSM.Maplint
  *