Sha256: b7dfba76efbbbf862c6bf96cfa7fc0e466c49687e04b8145946e3970c7e52b1e

Contents?: true

Size: 1.13 KB

Versions: 8

Compression:

Stored size: 1.13 KB

Contents

/*
 * Contains L.MultiPolyline and L.MultiPolygon layers.
 */

(function () {
	function createMulti(Klass) {

		return L.FeatureGroup.extend({

			initialize: function (latlngs, options) {
				this._layers = {};
				this._options = options;
				this.setLatLngs(latlngs);
			},

			setLatLngs: function (latlngs) {
				var i = 0,
				    len = latlngs.length;

				this.eachLayer(function (layer) {
					if (i < len) {
						layer.setLatLngs(latlngs[i++]);
					} else {
						this.removeLayer(layer);
					}
				}, this);

				while (i < len) {
					this.addLayer(new Klass(latlngs[i++], this._options));
				}

				return this;
			},

			getLatLngs: function () {
				var latlngs = [];

				this.eachLayer(function (layer) {
					latlngs.push(layer.getLatLngs());
				});

				return latlngs;
			}
		});
	}

	L.MultiPolyline = createMulti(L.Polyline);
	L.MultiPolygon = createMulti(L.Polygon);

	L.multiPolyline = function (latlngs, options) {
		return new L.MultiPolyline(latlngs, options);
	};

	L.multiPolygon = function (latlngs, options) {
		return new L.MultiPolygon(latlngs, options);
	};
}());

Version data entries

8 entries across 8 versions & 1 rubygems

Version Path
leaflet-js-0.7.9 vendor/assets/Leaflet/src/layer/vector/MultiPoly.js
leaflet-js-0.7.8 vendor/assets/Leaflet/src/layer/vector/MultiPoly.js
leaflet-js-0.7.7 vendor/assets/Leaflet/src/layer/vector/MultiPoly.js
leaflet-js-0.7.0.4 lib/leaflet/src/layer/vector/MultiPoly.js
leaflet-js-0.7.0.3 lib/leaflet/src/layer/vector/MultiPoly.js
leaflet-js-0.7.0.2 lib/leaflet/src/layer/vector/MultiPoly.js
leaflet-js-0.7.0.1 lib/leaflet/src/layer/vector/MultiPoly.js
leaflet-js-0.7.0 lib/leaflet/src/layer/vector/MultiPoly.js