X-Git-Url: https://git.openstreetmap.org./rails.git/blobdiff_plain/3d6b28b6662a37ee10491fcd739f7ccdaf56f8db..157621f8a713f0cc01ecdc24a2f1e58754e57880:/public/openlayers/OpenStreetMap.js diff --git a/public/openlayers/OpenStreetMap.js b/public/openlayers/OpenStreetMap.js index f472d3fc1..ce8a6e81f 100644 --- a/public/openlayers/OpenStreetMap.js +++ b/public/openlayers/OpenStreetMap.js @@ -29,85 +29,42 @@ OpenLayers.Util.onImageLoadError = function() { }; /** - * @requires OpenLayers/Layer/TMS.js - * - * Class: OpenLayers.Layer.OSM + * Class: OpenLayers.Layer.OSM.Mapnik * * Inherits from: - * - + * - */ -OpenLayers.Layer.OSM = OpenLayers.Class(OpenLayers.Layer.TMS, { +OpenLayers.Layer.OSM.Mapnik = OpenLayers.Class(OpenLayers.Layer.OSM, { /** - * Constructor: OpenLayers.Layer.OSM + * Constructor: OpenLayers.Layer.OSM.Mapnik * * Parameters: * name - {String} - * url - {String} * options - {Object} Hashtable of extra options to tag onto the layer */ - initialize: function(name, url, options) { - options = OpenLayers.Util.extend({ - attribution: "Data by OpenStreetMap", - maxExtent: new OpenLayers.Bounds(-20037508.34,-20037508.34,20037508.34,20037508.34), - maxResolution: 156543.0339, - units: "m", - projection: "EPSG:900913", - transitionEffect: "resize" - }, options); + initialize: function(name, options) { + var url = [ + "http://a.tile.openstreetmap.org/${z}/${x}/${y}.png", + "http://b.tile.openstreetmap.org/${z}/${x}/${y}.png", + "http://c.tile.openstreetmap.org/${z}/${x}/${y}.png" + ]; + options = OpenLayers.Util.extend({ numZoomLevels: 19 }, options); var newArguments = [name, url, options]; - OpenLayers.Layer.TMS.prototype.initialize.apply(this, newArguments); - }, - - /** - * Method: getUrl - * - * Parameters: - * bounds - {} - * - * Returns: - * {String} A string with the layer's url and parameters and also the - * passed-in bounds and appropriate tile size specified as - * parameters - */ - getURL: function (bounds) { - var res = this.map.getResolution(); - var x = Math.round((bounds.left - this.maxExtent.left) / (res * this.tileSize.w)); - var y = Math.round((this.maxExtent.top - bounds.top) / (res * this.tileSize.h)); - var z = this.map.getZoom(); - var limit = Math.pow(2, z); - - if (y < 0 || y >= limit) - { - return OpenLayers.Util.OSM.MISSING_TILE_URL; - } - else - { - x = ((x % limit) + limit) % limit; - - var url = this.url; - var path = z + "/" + x + "/" + y + ".png"; - - if (url instanceof Array) - { - url = this.selectUrl(path, url); - } - - return url + path; - } + OpenLayers.Layer.OSM.prototype.initialize.apply(this, newArguments); }, - CLASS_NAME: "OpenLayers.Layer.OSM" + CLASS_NAME: "OpenLayers.Layer.OSM.Mapnik" }); /** - * Class: OpenLayers.Layer.OSM.Mapnik + * Class: OpenLayers.Layer.OSM.Osmarender * * Inherits from: * - */ -OpenLayers.Layer.OSM.Mapnik = OpenLayers.Class(OpenLayers.Layer.OSM, { +OpenLayers.Layer.OSM.Osmarender = OpenLayers.Class(OpenLayers.Layer.OSM, { /** - * Constructor: OpenLayers.Layer.OSM.Mapnik + * Constructor: OpenLayers.Layer.OSM.Osmarender * * Parameters: * name - {String} @@ -115,27 +72,27 @@ OpenLayers.Layer.OSM.Mapnik = OpenLayers.Class(OpenLayers.Layer.OSM, { */ initialize: function(name, options) { var url = [ - "http://a.tile.openstreetmap.org/", - "http://b.tile.openstreetmap.org/", - "http://c.tile.openstreetmap.org/" + "http://a.tah.openstreetmap.org/Tiles/tile/${z}/${x}/${y}.png", + "http://b.tah.openstreetmap.org/Tiles/tile/${z}/${x}/${y}.png", + "http://c.tah.openstreetmap.org/Tiles/tile/${z}/${x}/${y}.png" ]; - options = OpenLayers.Util.extend({ numZoomLevels: 19 }, options); + 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.Mapnik" + CLASS_NAME: "OpenLayers.Layer.OSM.Osmarender" }); /** - * Class: OpenLayers.Layer.OSM.Osmarender + * Class: OpenLayers.Layer.OSM.CycleMap * * Inherits from: * - */ -OpenLayers.Layer.OSM.Osmarender = OpenLayers.Class(OpenLayers.Layer.OSM, { +OpenLayers.Layer.OSM.CycleMap = OpenLayers.Class(OpenLayers.Layer.OSM, { /** - * Constructor: OpenLayers.Layer.OSM.Osmarender + * Constructor: OpenLayers.Layer.OSM.CycleMap * * Parameters: * name - {String} @@ -143,16 +100,16 @@ 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.andy.sandbox.cloudmade.com/tiles/cycle/${z}/${x}/${y}.png", + "http://b.andy.sandbox.cloudmade.com/tiles/cycle/${z}/${x}/${y}.png", + "http://c.andy.sandbox.cloudmade.com/tiles/cycle/${z}/${x}/${y}.png" ]; - options = OpenLayers.Util.extend({ numZoomLevels: 18 }, options); + 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.Osmarender" + CLASS_NAME: "OpenLayers.Layer.OSM.CycleMap" }); /** @@ -171,9 +128,9 @@ OpenLayers.Layer.OSM.Maplint = OpenLayers.Class(OpenLayers.Layer.OSM, { */ initialize: function(name, options) { var url = [ - "http://d.tah.openstreetmap.org/Tiles/maplint.php/", - "http://e.tah.openstreetmap.org/Tiles/maplint.php/", - "http://f.tah.openstreetmap.org/Tiles/maplint.php/" + "http://d.tah.openstreetmap.org/Tiles/maplint/${z}/${x}/${y}.png", + "http://e.tah.openstreetmap.org/Tiles/maplint/${z}/${x}/${y}.png", + "http://f.tah.openstreetmap.org/Tiles/maplint/${z}/${x}/${y}.png" ]; options = OpenLayers.Util.extend({ numZoomLevels: 18, isBaseLayer: false, visibility: false }, options); var newArguments = [name, url, options]; @@ -182,19 +139,3 @@ OpenLayers.Layer.OSM.Maplint = OpenLayers.Class(OpenLayers.Layer.OSM, { CLASS_NAME: "OpenLayers.Layer.OSM.Maplint" }); - -OpenLayers.Layer.Data = OpenLayers.Class(OpenLayers.Layer, { - setVisibility: function(vis) { - var oldvis = this.visibility; - OpenLayers.Layer.prototype.setVisibility.apply(this, arguments); - if (!this.map) { return; } - if (vis && !oldvis) { - new Ajax.Request('/browse/start', {asynchronous:true, evalScripts:true}); - } else { - if (this.stopBrowse) { - this.stopBrowse(); - closeSidebar(); - } - } - } -});