X-Git-Url: https://git.openstreetmap.org./rails.git/blobdiff_plain/7ee377352e0417ec98cb98981a424a80b09343c7..6d1167356221c518eb8f1f94745bb33908de826a:/public/openlayers/OpenStreetMap.js
diff --git a/public/openlayers/OpenStreetMap.js b/public/openlayers/OpenStreetMap.js
index e674db0cc..4f2b0d4d7 100644
--- a/public/openlayers/OpenStreetMap.js
+++ b/public/openlayers/OpenStreetMap.js
@@ -19,8 +19,10 @@ OpenLayers.Util.OSM.originalOnImageLoadError = OpenLayers.Util.onImageLoadError;
* Function: onImageLoadError
*/
OpenLayers.Util.onImageLoadError = function() {
- if (this.src.match(/^http:\/\/[abc]\.[a-z]+\.openstreetmap\.org/)) {
+ if (this.src.match(/^http:\/\/[abc]\.[a-z]+\.openstreetmap\.org\//)) {
this.src = OpenLayers.Util.OSM.MISSING_TILE_URL;
+ } else if (this.src.match(/^http:\/\/[def]\.tah\.openstreetmap\.org\//)) {
+ // do nothing - this layer is transparent
} else {
OpenLayers.Util.OSM.originalOnImageLoadError;
}
@@ -44,14 +46,16 @@ OpenLayers.Layer.OSM = OpenLayers.Class(OpenLayers.Layer.TMS, {
* options - {Object} Hashtable of extra options to tag onto the layer
*/
initialize: function(name, url, options) {
- options = OpenLayers.Util.extend(options, {
- attribution: "Data by OpenStreetMap",
- maxExtent: new OpenLayers.Bounds(-20037508,-20037508,20037508,20037508),
- maxResolution: 156543,
+ options = OpenLayers.Util.extend({
+ attribution: "Data by OpenStreetMap under CC-BY-SA",
+ maxExtent: new OpenLayers.Bounds(-20037508.34,-20037508.34,20037508.34,20037508.34),
+ maxResolution: 156543.0339,
units: "m",
- projection: "EPSG:41001"
- });
- OpenLayers.Layer.TMS.prototype.initialize.apply(this, arguments);
+ projection: "EPSG:900913",
+ transitionEffect: "resize"
+ }, options);
+ var newArguments = [name, url, options];
+ OpenLayers.Layer.TMS.prototype.initialize.apply(this, newArguments);
},
/**
@@ -115,7 +119,7 @@ OpenLayers.Layer.OSM.Mapnik = OpenLayers.Class(OpenLayers.Layer.OSM, {
"http://b.tile.openstreetmap.org/",
"http://c.tile.openstreetmap.org/"
];
- options = OpenLayers.Util.extend(options, { numZoomLevels: 19 });
+ options = OpenLayers.Util.extend({ numZoomLevels: 19 }, options);
var newArguments = [name, url, options];
OpenLayers.Layer.OSM.prototype.initialize.apply(this, newArguments);
},
@@ -139,14 +143,70 @@ OpenLayers.Layer.OSM.Osmarender = OpenLayers.Class(OpenLayers.Layer.OSM, {
*/
initialize: function(name, options) {
var url = [
- "http://a.tah.openstreetmap.org/Tiles/tile.php/",
- "http://b.tah.openstreetmap.org/Tiles/tile.php/",
- "http://c.tah.openstreetmap.org/Tiles/tile.php/"
+ "http://a.tah.openstreetmap.org/Tiles/tile/",
+ "http://b.tah.openstreetmap.org/Tiles/tile/",
+ "http://c.tah.openstreetmap.org/Tiles/tile/"
];
- options = OpenLayers.Util.extend(options, { numZoomLevels: 18 });
+ options = OpenLayers.Util.extend({ numZoomLevels: 18 }, options);
var newArguments = [name, url, options];
OpenLayers.Layer.OSM.prototype.initialize.apply(this, newArguments);
},
CLASS_NAME: "OpenLayers.Layer.OSM.Osmarender"
});
+
+/**
+ * Class: OpenLayers.Layer.OSM.CycleMap
+ *
+ * Inherits from:
+ * -
+ */
+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.andy.sandbox.cloudmade.com/tiles/cycle/",
+ "http://b.andy.sandbox.cloudmade.com/tiles/cycle/",
+ "http://c.andy.sandbox.cloudmade.com/tiles/cycle/"
+ ];
+ options = OpenLayers.Util.extend({ numZoomLevels: 19 }, 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
+ *
+ * Inherits from:
+ * -
+ */
+OpenLayers.Layer.OSM.Maplint = OpenLayers.Class(OpenLayers.Layer.OSM, {
+ /**
+ * Constructor: OpenLayers.Layer.OSM.Maplint
+ *
+ * Parameters:
+ * name - {String}
+ * options - {Object} Hashtable of extra options to tag onto the layer
+ */
+ initialize: function(name, options) {
+ var url = [
+ "http://d.tah.openstreetmap.org/Tiles/maplint/",
+ "http://e.tah.openstreetmap.org/Tiles/maplint/",
+ "http://f.tah.openstreetmap.org/Tiles/maplint/"
+ ];
+ options = OpenLayers.Util.extend({ numZoomLevels: 18, isBaseLayer: false, visibility: false }, options);
+ var newArguments = [name, url, options];
+ OpenLayers.Layer.OSM.prototype.initialize.apply(this, newArguments);
+ },
+
+ CLASS_NAME: "OpenLayers.Layer.OSM.Maplint"
+});