summaryrefslogtreecommitdiff
path: root/misc/openlayers/lib/OpenLayers/Layer/WMS.js
diff options
context:
space:
mode:
Diffstat (limited to 'misc/openlayers/lib/OpenLayers/Layer/WMS.js')
-rw-r--r--misc/openlayers/lib/OpenLayers/Layer/WMS.js267
1 files changed, 0 insertions, 267 deletions
diff --git a/misc/openlayers/lib/OpenLayers/Layer/WMS.js b/misc/openlayers/lib/OpenLayers/Layer/WMS.js
deleted file mode 100644
index 15dee2f..0000000
--- a/misc/openlayers/lib/OpenLayers/Layer/WMS.js
+++ /dev/null
@@ -1,267 +0,0 @@
-/* Copyright (c) 2006-2013 by OpenLayers Contributors (see authors.txt for
- * full list of contributors). Published under the 2-clause BSD license.
- * See license.txt in the OpenLayers distribution or repository for the
- * full text of the license. */
-
-
-/**
- * @requires OpenLayers/Layer/Grid.js
- */
-
-/**
- * Class: OpenLayers.Layer.WMS
- * Instances of OpenLayers.Layer.WMS are used to display data from OGC Web
- * Mapping Services. Create a new WMS layer with the <OpenLayers.Layer.WMS>
- * constructor.
- *
- * Inherits from:
- * - <OpenLayers.Layer.Grid>
- */
-OpenLayers.Layer.WMS = OpenLayers.Class(OpenLayers.Layer.Grid, {
-
- /**
- * Constant: DEFAULT_PARAMS
- * {Object} Hashtable of default parameter key/value pairs
- */
- DEFAULT_PARAMS: { service: "WMS",
- version: "1.1.1",
- request: "GetMap",
- styles: "",
- format: "image/jpeg"
- },
-
- /**
- * APIProperty: isBaseLayer
- * {Boolean} Default is true for WMS layer
- */
- isBaseLayer: true,
-
- /**
- * APIProperty: encodeBBOX
- * {Boolean} Should the BBOX commas be encoded? The WMS spec says 'no',
- * but some services want it that way. Default false.
- */
- encodeBBOX: false,
-
- /**
- * APIProperty: noMagic
- * {Boolean} If true, the image format will not be automagicaly switched
- * from image/jpeg to image/png or image/gif when using
- * TRANSPARENT=TRUE. Also isBaseLayer will not changed by the
- * constructor. Default false.
- */
- noMagic: false,
-
- /**
- * Property: yx
- * {Object} Keys in this object are EPSG codes for which the axis order
- * is to be reversed (yx instead of xy, LatLon instead of LonLat), with
- * true as value. This is only relevant for WMS versions >= 1.3.0, and
- * only if yx is not set in <OpenLayers.Projection.defaults> for the
- * used projection.
- */
- yx: {},
-
- /**
- * Constructor: OpenLayers.Layer.WMS
- * Create a new WMS layer object
- *
- * Examples:
- *
- * The code below creates a simple WMS layer using the image/jpeg format.
- * (code)
- * var wms = new OpenLayers.Layer.WMS("NASA Global Mosaic",
- * "http://wms.jpl.nasa.gov/wms.cgi",
- * {layers: "modis,global_mosaic"});
- * (end)
- * Note the 3rd argument (params). Properties added to this object will be
- * added to the WMS GetMap requests used for this layer's tiles. The only
- * mandatory parameter is "layers". Other common WMS params include
- * "transparent", "styles" and "format". Note that the "srs" param will
- * always be ignored. Instead, it will be derived from the baseLayer's or
- * map's projection.
- *
- * The code below creates a transparent WMS layer with additional options.
- * (code)
- * var wms = new OpenLayers.Layer.WMS("NASA Global Mosaic",
- * "http://wms.jpl.nasa.gov/wms.cgi",
- * {
- * layers: "modis,global_mosaic",
- * transparent: true
- * }, {
- * opacity: 0.5,
- * singleTile: true
- * });
- * (end)
- * Note that by default, a WMS layer is configured as baseLayer. Setting
- * the "transparent" param to true will apply some magic (see <noMagic>).
- * The default image format changes from image/jpeg to image/png, and the
- * layer is not configured as baseLayer.
- *
- * Parameters:
- * name - {String} A name for the layer
- * url - {String} Base url for the WMS
- * (e.g. http://wms.jpl.nasa.gov/wms.cgi)
- * params - {Object} An object with key/value pairs representing the
- * GetMap query string parameters and parameter values.
- * options - {Object} Hashtable of extra options to tag onto the layer.
- * These options include all properties listed above, plus the ones
- * inherited from superclasses.
- */
- initialize: function(name, url, params, options) {
- var newArguments = [];
- //uppercase params
- params = OpenLayers.Util.upperCaseObject(params);
- if (parseFloat(params.VERSION) >= 1.3 && !params.EXCEPTIONS) {
- params.EXCEPTIONS = "INIMAGE";
- }
- newArguments.push(name, url, params, options);
- OpenLayers.Layer.Grid.prototype.initialize.apply(this, newArguments);
- OpenLayers.Util.applyDefaults(
- this.params,
- OpenLayers.Util.upperCaseObject(this.DEFAULT_PARAMS)
- );
-
-
- //layer is transparent
- if (!this.noMagic && this.params.TRANSPARENT &&
- this.params.TRANSPARENT.toString().toLowerCase() == "true") {
-
- // unless explicitly set in options, make layer an overlay
- if ( (options == null) || (!options.isBaseLayer) ) {
- this.isBaseLayer = false;
- }
-
- // jpegs can never be transparent, so intelligently switch the
- // format, depending on the browser's capabilities
- if (this.params.FORMAT == "image/jpeg") {
- this.params.FORMAT = OpenLayers.Util.alphaHack() ? "image/gif"
- : "image/png";
- }
- }
-
- },
-
- /**
- * Method: clone
- * Create a clone of this layer
- *
- * Returns:
- * {<OpenLayers.Layer.WMS>} An exact clone of this layer
- */
- clone: function (obj) {
-
- if (obj == null) {
- obj = new OpenLayers.Layer.WMS(this.name,
- this.url,
- this.params,
- this.getOptions());
- }
-
- //get all additions from superclasses
- obj = OpenLayers.Layer.Grid.prototype.clone.apply(this, [obj]);
-
- // copy/set any non-init, non-simple values here
-
- return obj;
- },
-
- /**
- * APIMethod: reverseAxisOrder
- * Returns true if the axis order is reversed for the WMS version and
- * projection of the layer.
- *
- * Returns:
- * {Boolean} true if the axis order is reversed, false otherwise.
- */
- reverseAxisOrder: function() {
- var projCode = this.projection.getCode();
- return parseFloat(this.params.VERSION) >= 1.3 &&
- !!(this.yx[projCode] || (OpenLayers.Projection.defaults[projCode] &&
- OpenLayers.Projection.defaults[projCode].yx));
- },
-
- /**
- * Method: getURL
- * Return a GetMap query string for this layer
- *
- * Parameters:
- * bounds - {<OpenLayers.Bounds>} A bounds representing the bbox for the
- * request.
- *
- * 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) {
- bounds = this.adjustBounds(bounds);
-
- var imageSize = this.getImageSize();
- var newParams = {};
- // WMS 1.3 introduced axis order
- var reverseAxisOrder = this.reverseAxisOrder();
- newParams.BBOX = this.encodeBBOX ?
- bounds.toBBOX(null, reverseAxisOrder) :
- bounds.toArray(reverseAxisOrder);
- newParams.WIDTH = imageSize.w;
- newParams.HEIGHT = imageSize.h;
- var requestString = this.getFullRequestString(newParams);
- return requestString;
- },
-
- /**
- * APIMethod: mergeNewParams
- * Catch changeParams and uppercase the new params to be merged in
- * before calling changeParams on the super class.
- *
- * Once params have been changed, the tiles will be reloaded with
- * the new parameters.
- *
- * Parameters:
- * newParams - {Object} Hashtable of new params to use
- */
- mergeNewParams:function(newParams) {
- var upperParams = OpenLayers.Util.upperCaseObject(newParams);
- var newArguments = [upperParams];
- return OpenLayers.Layer.Grid.prototype.mergeNewParams.apply(this,
- newArguments);
- },
-
- /**
- * APIMethod: getFullRequestString
- * Combine the layer's url with its params and these newParams.
- *
- * Add the SRS parameter from projection -- this is probably
- * more eloquently done via a setProjection() method, but this
- * works for now and always.
- *
- * Parameters:
- * newParams - {Object}
- * altUrl - {String} Use this as the url instead of the layer's url
- *
- * Returns:
- * {String}
- */
- getFullRequestString:function(newParams, altUrl) {
- var mapProjection = this.map.getProjectionObject();
- var projectionCode = this.projection && this.projection.equals(mapProjection) ?
- this.projection.getCode() :
- mapProjection.getCode();
- var value = (projectionCode == "none") ? null : projectionCode;
- if (parseFloat(this.params.VERSION) >= 1.3) {
- this.params.CRS = value;
- } else {
- this.params.SRS = value;
- }
-
- if (typeof this.params.TRANSPARENT == "boolean") {
- newParams.TRANSPARENT = this.params.TRANSPARENT ? "TRUE" : "FALSE";
- }
-
- return OpenLayers.Layer.Grid.prototype.getFullRequestString.apply(
- this, arguments);
- },
-
- CLASS_NAME: "OpenLayers.Layer.WMS"
-});