X-Git-Url: https://git.openstreetmap.org./rails.git/blobdiff_plain/78e97ade45856647d77a2f4dc966a4eb301e3ad1..3ba036045bc43031475eb29ca0663d33c80e1b32:/vendor/assets/iD/iD.js
diff --git a/vendor/assets/iD/iD.js b/vendor/assets/iD/iD.js
index 3cb6da7cc..6c0845b7c 100644
--- a/vendor/assets/iD/iD.js
+++ b/vendor/assets/iD/iD.js
@@ -5665,7 +5665,7 @@ d3.combobox = function() {
var fetcher = function(val, cb) {
cb(data.filter(function(d) {
- return d.title
+ return d.value
.toString()
.toLowerCase()
.indexOf(val.toLowerCase()) !== -1;
@@ -5725,6 +5725,10 @@ d3.combobox = function() {
position: 'absolute',
display: 'block',
left: '0px'
+ })
+ .on('mousedown', function () {
+ // prevent moving focus out of the text field
+ d3.event.preventDefault();
});
d3.select(document.body)
@@ -13766,64 +13770,126 @@ if (typeof module !== 'undefined') {
})();
toGeoJSON = (function() {
- var removeSpace = (/\s*/g), trimSpace = (/^\s*|\s*$/g), splitSpace = (/\s+/);
+ 'use strict';
+
+ var removeSpace = (/\s*/g),
+ trimSpace = (/^\s*|\s*$/g),
+ splitSpace = (/\s+/);
+ // generate a short, numeric hash of a string
function okhash(x) {
if (!x || !x.length) return 0;
for (var i = 0, h = 0; i < x.length; i++) {
h = ((h << 5) - h) + x.charCodeAt(i) | 0;
} return h;
}
+ // all Y children of X
function get(x, y) { return x.getElementsByTagName(y); }
function attr(x, y) { return x.getAttribute(y); }
function attrf(x, y) { return parseFloat(attr(x, y)); }
+ // one Y child of X, if any, otherwise null
function get1(x, y) { var n = get(x, y); return n.length ? n[0] : null; }
+ // https://developer.mozilla.org/en-US/docs/Web/API/Node.normalize
+ function norm(el) { if (el.normalize) { el.normalize(); } return el; }
+ // cast array x into numbers
function numarray(x) {
for (var j = 0, o = []; j < x.length; j++) o[j] = parseFloat(x[j]);
return o;
}
- function nodeVal(x) { return x && x.firstChild && x.firstChild.nodeValue; }
+ function clean(x) {
+ var o = {};
+ for (var i in x) if (x[i]) o[i] = x[i];
+ return o;
+ }
+ // get the content of a text node, if any
+ function nodeVal(x) { if (x) {norm(x);} return x && x.firstChild && x.firstChild.nodeValue; }
+ // get one coordinate from a coordinate array, if any
function coord1(v) { return numarray(v.replace(removeSpace, '').split(',')); }
+ // get all coordinates from a coordinate array as [[],[]]
function coord(v) {
- var coords = v.replace(trimSpace, '').split(splitSpace), o = [];
- for (var i = 0; i < coords.length; i++) o.push(coord1(coords[i]));
+ var coords = v.replace(trimSpace, '').split(splitSpace),
+ o = [];
+ for (var i = 0; i < coords.length; i++) {
+ o.push(coord1(coords[i]));
+ }
return o;
}
- function fc() { return { type: 'FeatureCollection', features: [] }; }
+ function coordPair(x) { return [attrf(x, 'lon'), attrf(x, 'lat')]; }
+
+ // create a new feature collection parent object
+ function fc() {
+ return {
+ type: 'FeatureCollection',
+ features: []
+ };
+ }
+
+ var styleSupport = false;
+ if (typeof XMLSerializer !== 'undefined') {
+ var serializer = new XMLSerializer();
+ styleSupport = true;
+ }
+ function xml2str(str) { return serializer.serializeToString(str); }
+
var t = {
kml: function(doc, o) {
o = o || {};
- var gj = fc(), styleIndex = {},
- geotypes = ['Polygon', 'LineString', 'Point'],
- placemarks = get(doc, 'Placemark'), styles = get(doc, 'Style');
- if (o.styles) for (var k = 0; k < styles.length; k++) {
- styleIndex['#' + styles[k].id] = okhash(styles[k].innerHTML).toString(16);
+ var gj = fc(),
+ // styleindex keeps track of hashed styles in order to match features
+ styleIndex = {},
+ // atomic geospatial types supported by KML - MultiGeometry is
+ // handled separately
+ geotypes = ['Polygon', 'LineString', 'Point', 'Track'],
+ // all root placemarks in the file
+ placemarks = get(doc, 'Placemark'),
+ styles = get(doc, 'Style');
+
+ if (styleSupport) for (var k = 0; k < styles.length; k++) {
+ styleIndex['#' + attr(styles[k], 'id')] = okhash(xml2str(styles[k])).toString(16);
}
for (var j = 0; j < placemarks.length; j++) {
gj.features = gj.features.concat(getPlacemark(placemarks[j]));
}
+ function gxCoord(v) { return numarray(v.split(' ')); }
+ function gxCoords(root) {
+ var elems = get(root, 'coord', 'gx'), coords = [];
+ for (var i = 0; i < elems.length; i++) coords.push(gxCoord(nodeVal(elems[i])));
+ return coords;
+ }
function getGeometry(root) {
var geomNode, geomNodes, i, j, k, geoms = [];
if (get1(root, 'MultiGeometry')) return getGeometry(get1(root, 'MultiGeometry'));
+ if (get1(root, 'MultiTrack')) return getGeometry(get1(root, 'MultiTrack'));
for (i = 0; i < geotypes.length; i++) {
geomNodes = get(root, geotypes[i]);
if (geomNodes) {
for (j = 0; j < geomNodes.length; j++) {
geomNode = geomNodes[j];
if (geotypes[i] == 'Point') {
- geoms.push({ type: 'Point',
+ geoms.push({
+ type: 'Point',
coordinates: coord1(nodeVal(get1(geomNode, 'coordinates')))
});
} else if (geotypes[i] == 'LineString') {
- geoms.push({ type: 'LineString',
+ geoms.push({
+ type: 'LineString',
coordinates: coord(nodeVal(get1(geomNode, 'coordinates')))
});
} else if (geotypes[i] == 'Polygon') {
- var rings = get(geomNode, 'LinearRing'), coords = [];
+ var rings = get(geomNode, 'LinearRing'),
+ coords = [];
for (k = 0; k < rings.length; k++) {
coords.push(coord(nodeVal(get1(rings[k], 'coordinates'))));
}
- geoms.push({ type: 'Polygon', coordinates: coords });
+ geoms.push({
+ type: 'Polygon',
+ coordinates: coords
+ });
+ } else if (geotypes[i] == 'Track') {
+ geoms.push({
+ type: 'LineString',
+ coordinates: gxCoords(geomNode)
+ });
}
}
}
@@ -13837,7 +13903,7 @@ toGeoJSON = (function() {
description = nodeVal(get1(root, 'description')),
extendedData = get1(root, 'ExtendedData');
- if (!geoms.length) return false;
+ if (!geoms.length) return [];
if (name) properties.name = name;
if (styleUrl && styleIndex[styleUrl]) {
properties.styleUrl = styleUrl;
@@ -13855,28 +13921,69 @@ toGeoJSON = (function() {
properties[simpleDatas[i].getAttribute('name')] = nodeVal(simpleDatas[i]);
}
}
- return [{ type: 'Feature', geometry: (geoms.length === 1) ? geoms[0] : {
- type: 'GeometryCollection',
- geometries: geoms }, properties: properties }];
+ return [{
+ type: 'Feature',
+ geometry: (geoms.length === 1) ? geoms[0] : {
+ type: 'GeometryCollection',
+ geometries: geoms
+ },
+ properties: properties
+ }];
}
return gj;
},
gpx: function(doc, o) {
- var i, j, tracks = get(doc, 'trk'), track, pt, gj = fc();
+ var i,
+ tracks = get(doc, 'trk'),
+ routes = get(doc, 'rte'),
+ waypoints = get(doc, 'wpt'),
+ // a feature collection
+ gj = fc();
for (i = 0; i < tracks.length; i++) {
- track = tracks[i];
- var name = nodeVal(get1(track, 'name'));
- var pts = get(track, 'trkpt'), line = [];
+ gj.features.push(getLinestring(tracks[i], 'trkpt'));
+ }
+ for (i = 0; i < routes.length; i++) {
+ gj.features.push(getLinestring(routes[i], 'rtept'));
+ }
+ for (i = 0; i < waypoints.length; i++) {
+ gj.features.push(getPoint(waypoints[i]));
+ }
+ function getLinestring(node, pointname) {
+ var j, pts = get(node, pointname), line = [];
for (j = 0; j < pts.length; j++) {
- line.push([attrf(pts[j], 'lon'), attrf(pts[j], 'lat')]);
+ line.push(coordPair(pts[j]));
}
- gj.features.push({
+ return {
type: 'Feature',
- properties: {
- name: name || ''
- },
- geometry: { type: 'LineString', coordinates: line }
- });
+ properties: getProperties(node),
+ geometry: {
+ type: 'LineString',
+ coordinates: line
+ }
+ };
+ }
+ function getPoint(node) {
+ var prop = getProperties(node);
+ prop.ele = nodeVal(get1(node, 'ele'));
+ prop.sym = nodeVal(get1(node, 'sym'));
+ return {
+ type: 'Feature',
+ properties: prop,
+ geometry: {
+ type: 'Point',
+ coordinates: coordPair(node)
+ }
+ };
+ }
+ function getProperties(node) {
+ var meta = ['name', 'desc', 'author', 'copyright', 'link',
+ 'time', 'keywords'],
+ prop = {},
+ k;
+ for (k = 0; k < meta.length; k++) {
+ prop[meta[k]] = nodeVal(get1(node, meta[k]));
+ }
+ return clean(prop);
}
return gj;
}
@@ -15024,16 +15131,28 @@ window.iD = function () {
// https://github.com/systemed/iD/issues/772
// http://mathiasbynens.be/notes/localstorage-pattern#comment-9
try { storage = localStorage; } catch (e) {}
- storage = storage || {};
+ storage = storage || (function() {
+ var s = {};
+ return {
+ getItem: function(k) { return s[k]; },
+ setItem: function(k, v) { s[k] = v; },
+ removeItem: function(k) { delete s[k]; }
+ };
+ })();
context.storage = function(k, v) {
- if (arguments.length === 1) return storage[k];
- else if (v === null) delete storage[k];
- else storage[k] = v;
+ try {
+ if (arguments.length === 1) return storage.getItem(k);
+ else if (v === null) storage.removeItem(k);
+ else storage.setItem(k, v);
+ } catch(e) {
+ // localstorage quota exceeded
+ if (typeof console !== 'undefined') console.error('localStorage quota exceeded');
+ }
};
var history = iD.History(context),
- dispatch = d3.dispatch('enter', 'exit', 'toggleFullscreen'),
+ dispatch = d3.dispatch('enter', 'exit'),
mode,
container,
ui = iD.ui(context),
@@ -15080,20 +15199,46 @@ window.iD = function () {
/* History */
context.graph = history.graph;
- context.perform = history.perform;
- context.replace = history.replace;
- context.pop = history.pop;
- context.undo = history.undo;
- context.redo = history.redo;
context.changes = history.changes;
context.intersects = history.intersects;
+ var inIntro = false;
+
+ context.inIntro = function(_) {
+ if (!arguments.length) return inIntro;
+ inIntro = _;
+ return context;
+ };
+
+ context.save = function() {
+ if (inIntro) return;
+ history.save();
+ if (history.hasChanges()) return t('save.unsaved_changes');
+ };
+
context.flush = function() {
connection.flush();
history.reset();
return context;
};
+ // Debounce save, since it's a synchronous localStorage write,
+ // and history changes can happen frequently (e.g. when dragging).
+ var debouncedSave = _.debounce(context.save, 350);
+ function withDebouncedSave(fn) {
+ return function() {
+ var result = fn.apply(history, arguments);
+ debouncedSave();
+ return result;
+ }
+ }
+
+ context.perform = withDebouncedSave(history.perform);
+ context.replace = withDebouncedSave(history.replace);
+ context.pop = withDebouncedSave(history.pop);
+ context.undo = withDebouncedSave(history.undo);
+ context.redo = withDebouncedSave(history.redo);
+
/* Graph */
context.hasEntity = function(id) {
return history.graph().hasEntity(id);
@@ -15192,6 +15337,13 @@ window.iD = function () {
context.zoomIn = map.zoomIn;
context.zoomOut = map.zoomOut;
+ context.surfaceRect = function() {
+ // Work around a bug in Firefox.
+ // http://stackoverflow.com/questions/18153989/
+ // https://bugzilla.mozilla.org/show_bug.cgi?id=530985
+ return context.surface().node().parentNode.getBoundingClientRect();
+ };
+
/* Presets */
var presets = iD.presets()
.load(iD.data.presets);
@@ -15221,18 +15373,22 @@ window.iD = function () {
return context;
};
- context.imagePath = function(_) {
- return assetPath + 'img/' + _;
+ var assetMap = {};
+ context.assetMap = function(_) {
+ if (!arguments.length) return assetMap;
+ assetMap = _;
+ return context;
};
- context.toggleFullscreen = function() {
- dispatch.toggleFullscreen();
+ context.imagePath = function(_) {
+ var asset = 'img/' + _;
+ return assetMap[asset] || assetPath + asset;
};
return d3.rebind(context, dispatch, 'on');
};
-iD.version = '1.1.0';
+iD.version = '1.2.1';
(function() {
var detected = {};
@@ -15323,7 +15479,7 @@ iD.taginfo = function() {
}
function popularValues() {
- return function(d) { return parseFloat(d.fraction) > 0.01; };
+ return function(d) { return parseFloat(d.fraction) > 0.01 || d.in_wiki; };
}
function valKey(d) { return { value: d.key }; }
@@ -15385,7 +15541,12 @@ iD.taginfo = function() {
taginfo.docs = function(parameters, callback) {
var debounce = parameters.debounce;
parameters = clean(setSort(parameters));
- request(endpoint + (parameters.value ? 'tag/wiki_pages?' : 'key/wiki_pages?') +
+
+ var path = 'key/wiki_pages?';
+ if (parameters.value) path = 'tag/wiki_pages?';
+ else if (parameters.rtype) path = 'relation/wiki_pages?';
+
+ request(endpoint + path +
iD.util.qsString(parameters), debounce, callback);
};
@@ -15606,6 +15767,13 @@ iD.util.asyncMap = function(inputs, func, callback) {
});
});
};
+
+// wraps an index to an interval [0..length-1]
+iD.util.wrap = function(index, length) {
+ if (index < 0)
+ index += Math.ceil(-index/length)*length;
+ return index % length;
+};
iD.geo = {};
iD.geo.roundCoords = function(c) {
@@ -15618,17 +15786,23 @@ iD.geo.interp = function(p1, p2, t) {
};
// http://jsperf.com/id-dist-optimization
-iD.geo.dist = function(a, b) {
+iD.geo.euclideanDistance = function(a, b) {
var x = a[0] - b[0], y = a[1] - b[1];
return Math.sqrt((x * x) + (y * y));
};
+// Equirectangular approximation of spherical distances on Earth
+iD.geo.sphericalDistance = function(a, b) {
+ var x = Math.cos(a[1]*Math.PI/180) * (a[0] - b[0]),
+ y = a[1] - b[1];
+ return 6.3710E6 * Math.sqrt((x * x) + (y * y)) * Math.PI/180;
+};
// Choose the edge with the minimal distance from `point` to its orthogonal
// projection onto that edge, if such a projection exists, or the distance to
// the closest vertex on that edge. Returns an object with the `index` of the
// chosen edge, the chosen `loc` on that edge, and the `distance` to to it.
iD.geo.chooseEdge = function(nodes, point, projection) {
- var dist = iD.geo.dist,
+ var dist = iD.geo.euclideanDistance,
points = nodes.map(function(n) { return projection(n.loc); }),
min = Infinity,
idx, loc;
@@ -15746,6 +15920,16 @@ _.extend(iD.geo.Extent.prototype, {
(this[0][1] + this[1][1]) / 2];
},
+ polygon: function() {
+ return [
+ [this[0][0], this[0][1]],
+ [this[0][0], this[1][1]],
+ [this[1][0], this[1][1]],
+ [this[1][0], this[0][1]],
+ [this[0][0], this[0][1]]
+ ]
+ },
+
intersects: function(obj) {
if (!(obj instanceof iD.geo.Extent)) obj = new iD.geo.Extent(obj);
return obj[0][0] <= this[1][0] &&
@@ -15909,6 +16093,68 @@ iD.geo.joinWays = function(array, graph) {
return joined;
};
+iD.geo.turns = function(graph, entityID) {
+ var way = graph.entity(entityID);
+ if (way.type !== 'way' || !way.tags.highway || way.isArea())
+ return [];
+
+ function withRestriction(turn) {
+ graph.parentRelations(turn.from).forEach(function(relation) {
+ if (relation.tags.type !== 'restriction')
+ return;
+
+ var f = relation.memberByRole('from'),
+ t = relation.memberByRole('to'),
+ v = relation.memberByRole('via');
+
+ if (f && f.id === turn.from.id &&
+ t && t.id === turn.to.id &&
+ v && v.id === turn.via.id) {
+ turn.restriction = relation;
+ }
+ });
+
+ return turn;
+ }
+
+ var turns = [];
+
+ [way.first(), way.last()].forEach(function(nodeID) {
+ var node = graph.entity(nodeID);
+ graph.parentWays(node).forEach(function(parent) {
+ if (parent === way || parent.isDegenerate() || !parent.tags.highway)
+ return;
+ if (way.first() === node.id && way.tags.oneway === 'yes')
+ return;
+ if (way.last() === node.id && way.tags.oneway === '-1')
+ return;
+
+ var index = parent.nodes.indexOf(node.id);
+
+ // backward
+ if (parent.first() !== node.id && parent.tags.oneway !== 'yes') {
+ turns.push(withRestriction({
+ from: way,
+ to: parent,
+ via: node,
+ toward: graph.entity(parent.nodes[index - 1])
+ }));
+ }
+
+ // forward
+ if (parent.last() !== node.id && parent.tags.oneway !== '-1') {
+ turns.push(withRestriction({
+ from: way,
+ to: parent,
+ via: node,
+ toward: graph.entity(parent.nodes[index + 1])
+ }));
+ }
+ });
+ });
+
+ return turns;
+};
iD.actions = {};
iD.actions.AddEntity = function(way) {
return function(graph) {
@@ -15959,6 +16205,10 @@ iD.actions.AddMidpoint = function(midpoint, node) {
(way.nodes[i] === midpoint.edge[1] &&
way.nodes[i + 1] === midpoint.edge[0])) {
graph = graph.replace(graph.entity(way.id).addNode(node.id, i + 1));
+
+ // Add only one midpoint on doubled-back segments,
+ // turning them into self-intersections.
+ return;
}
}
});
@@ -15995,63 +16245,105 @@ iD.actions.ChangeTags = function(entityId, tags) {
return graph.replace(entity.update({tags: tags}));
};
};
-iD.actions.Circularize = function(wayId, projection, count) {
- count = count || 12;
-
- function closestIndex(nodes, loc) {
- var idx, min = Infinity, dist;
- for (var i = 0; i < nodes.length; i++) {
- dist = iD.geo.dist(nodes[i].loc, loc);
- if (dist < min) {
- min = dist;
- idx = i;
- }
- }
- return idx;
- }
+iD.actions.Circularize = function(wayId, projection, maxAngle) {
+ maxAngle = (maxAngle || 20) * Math.PI / 180;
var action = function(graph) {
var way = graph.entity(wayId),
nodes = _.uniq(graph.childNodes(way)),
+ keyNodes = nodes.filter(function(n) { return graph.parentWays(n).length != 1; }),
points = nodes.map(function(n) { return projection(n.loc); }),
+ keyPoints = keyNodes.map(function(n) { return projection(n.loc); }),
centroid = d3.geom.polygon(points).centroid(),
- radius = d3.median(points, function(p) {
- return iD.geo.dist(centroid, p);
- }),
- ids = [],
- sign = d3.geom.polygon(points).area() > 0 ? -1 : 1;
-
- for (var i = 0; i < count; i++) {
- var node,
+ radius = d3.median(points, function(p) { return iD.geo.euclideanDistance(centroid, p); }),
+ sign = d3.geom.polygon(points).area() > 0 ? 1 : -1,
+ ids;
+
+ // we need atleast two key nodes for the algorithm to work
+ if (!keyNodes.length) {
+ keyNodes = [nodes[0]];
+ keyPoints = [points[0]];
+ }
+
+ if (keyNodes.length == 1) {
+ var index = nodes.indexOf(keyNodes[0]),
+ oppositeIndex = Math.floor((index + nodes.length / 2) % nodes.length);
+
+ keyNodes.push(nodes[oppositeIndex]);
+ keyPoints.push(points[oppositeIndex]);
+ }
+
+ // key points and nodes are those connected to the ways,
+ // they are projected onto the circle, inbetween nodes are moved
+ // to constant internals between key nodes, extra inbetween nodes are
+ // added if necessary.
+ for (var i = 0; i < keyPoints.length; i++) {
+ var nextKeyNodeIndex = (i + 1) % keyNodes.length,
+ startNodeIndex = nodes.indexOf(keyNodes[i]),
+ endNodeIndex = nodes.indexOf(keyNodes[nextKeyNodeIndex]),
+ numberNewPoints = -1,
+ indexRange = endNodeIndex - startNodeIndex,
+ distance, totalAngle, eachAngle, startAngle, endAngle,
+ angle, loc, node, j;
+
+ if (indexRange < 0) {
+ indexRange += nodes.length;
+ }
+
+ // position this key node
+ distance = iD.geo.euclideanDistance(centroid, keyPoints[i]);
+ keyPoints[i] = [
+ centroid[0] + (keyPoints[i][0] - centroid[0]) / distance * radius,
+ centroid[1] + (keyPoints[i][1] - centroid[1]) / distance * radius];
+ graph = graph.replace(keyNodes[i].move(projection.invert(keyPoints[i])));
+
+ // figure out the between delta angle we want to match to
+ startAngle = Math.atan2(keyPoints[i][1] - centroid[1], keyPoints[i][0] - centroid[0]);
+ endAngle = Math.atan2(keyPoints[nextKeyNodeIndex][1] - centroid[1], keyPoints[nextKeyNodeIndex][0] - centroid[0]);
+ totalAngle = endAngle - startAngle;
+
+ // detects looping around -pi/pi
+ if (totalAngle*sign > 0) {
+ totalAngle = -sign * (2 * Math.PI - Math.abs(totalAngle));
+ }
+
+ do {
+ numberNewPoints++;
+ eachAngle = totalAngle / (indexRange + numberNewPoints);
+ } while (Math.abs(eachAngle) > maxAngle);
+
+ // move existing points
+ for (j = 1; j < indexRange; j++) {
+ angle = startAngle + j * eachAngle;
loc = projection.invert([
- centroid[0] + Math.cos(sign * (i / 12) * Math.PI * 2) * radius,
- centroid[1] + Math.sin(sign * (i / 12) * Math.PI * 2) * radius]);
+ centroid[0] + Math.cos(angle)*radius,
+ centroid[1] + Math.sin(angle)*radius]);
- if (nodes.length) {
- var idx = closestIndex(nodes, loc);
- node = nodes[idx];
- nodes.splice(idx, 1);
- } else {
- node = iD.Node();
+ node = nodes[(j + startNodeIndex) % nodes.length].move(loc);
+ graph = graph.replace(node);
}
- ids.push(node.id);
- graph = graph.replace(node.move(loc));
+ // add new inbetween nodes if necessary
+ for (j = 0; j < numberNewPoints; j++) {
+ angle = startAngle + (indexRange + j) * eachAngle;
+ loc = projection.invert([
+ centroid[0] + Math.cos(angle) * radius,
+ centroid[1] + Math.sin(angle) * radius]);
+
+ node = iD.Node({loc: loc});
+ graph = graph.replace(node);
+
+ nodes.splice(endNodeIndex + j, 0, node);
+ }
}
+ // update the way to have all the new nodes
+ ids = nodes.map(function(n) { return n.id; });
ids.push(ids[0]);
+
way = way.update({nodes: ids});
graph = graph.replace(way);
- for (i = 0; i < nodes.length; i++) {
- graph.parentWays(nodes[i]).forEach(function(parent) {
- graph = graph.replace(parent.replaceNode(nodes[i].id,
- ids[closestIndex(graph.childNodes(way), nodes[i].loc)]));
- });
-
- graph = iD.actions.DeleteNode(nodes[i].id)(graph);
- }
-
return graph;
};
@@ -16151,7 +16443,12 @@ iD.actions.DeleteNode = function(nodeId) {
graph.parentRelations(node)
.forEach(function(parent) {
- graph = graph.replace(parent.removeMembersWithID(nodeId));
+ parent = parent.removeMembersWithID(nodeId);
+ graph = graph.replace(parent);
+
+ if (parent.isDegenerate()) {
+ graph = iD.actions.DeleteRelation(parent.id)(graph);
+ }
});
return graph.remove(node);
@@ -16176,7 +16473,12 @@ iD.actions.DeleteRelation = function(relationId) {
graph.parentRelations(relation)
.forEach(function(parent) {
- graph = graph.replace(parent.removeMembersWithID(relationId));
+ parent = parent.removeMembersWithID(relationId);
+ graph = graph.replace(parent);
+
+ if (parent.isDegenerate()) {
+ graph = iD.actions.DeleteRelation(parent.id)(graph);
+ }
});
_.uniq(_.pluck(relation.members, 'id')).forEach(function(memberId) {
@@ -16211,7 +16513,12 @@ iD.actions.DeleteWay = function(wayId) {
graph.parentRelations(way)
.forEach(function(parent) {
- graph = graph.replace(parent.removeMembersWithID(wayId));
+ parent = parent.removeMembersWithID(wayId);
+ graph = graph.replace(parent);
+
+ if (parent.isDegenerate()) {
+ graph = iD.actions.DeleteRelation(parent.id)(graph);
+ }
});
_.uniq(way.nodes).forEach(function(nodeId) {
@@ -16630,20 +16937,24 @@ iD.actions.Noop = function() {
*/
iD.actions.Orthogonalize = function(wayId, projection) {
+ var threshold = 7, // degrees within right or straight to alter
+ lowerThreshold = Math.cos((90 - threshold) * Math.PI / 180),
+ upperThreshold = Math.cos(threshold * Math.PI / 180);
+
var action = function(graph) {
var way = graph.entity(wayId),
nodes = graph.childNodes(way),
+ points = _.uniq(nodes).map(function(n) { return projection(n.loc); }),
corner = {i: 0, dotp: 1},
- points, i, j, score, motions;
+ epsilon = 1e-4,
+ i, j, score, motions;
if (nodes.length === 4) {
- points = _.uniq(nodes).map(function(n) { return projection(n.loc); });
-
for (i = 0; i < 1000; i++) {
motions = points.map(calcMotion);
points[corner.i] = addPoints(points[corner.i],motions[corner.i]);
score = corner.dotp;
- if (score < 1.0e-8) {
+ if (score < epsilon) {
break;
}
}
@@ -16651,30 +16962,50 @@ iD.actions.Orthogonalize = function(wayId, projection) {
graph = graph.replace(graph.entity(nodes[corner.i].id)
.move(projection.invert(points[corner.i])));
} else {
- var best;
- points = nodes.map(function(n) { return projection(n.loc); });
- score = squareness();
+ var best,
+ originalPoints = _.clone(points);
+ score = Infinity;
for (i = 0; i < 1000; i++) {
motions = points.map(calcMotion);
for (j = 0; j < motions.length; j++) {
points[j] = addPoints(points[j],motions[j]);
}
- var newScore = squareness();
+ var newScore = squareness(points);
if (newScore < score) {
best = _.clone(points);
score = newScore;
}
- if (score < 1.0e-8) {
+ if (score < epsilon) {
break;
}
}
points = best;
- for (i = 0; i < points.length - 1; i++) {
- graph = graph.replace(graph.entity(nodes[i].id)
- .move(projection.invert(points[i])));
+ for (i = 0; i < points.length; i++) {
+ // only move the points that actually moved
+ if (originalPoints[i][0] != points[i][0] || originalPoints[i][1] != points[i][1]) {
+ graph = graph.replace(graph.entity(nodes[i].id)
+ .move(projection.invert(points[i])));
+ }
+ }
+
+ // remove empty nodes on straight sections
+ for (i = 0; i < points.length; i++) {
+ var node = nodes[i];
+
+ if (graph.parentWays(node).length > 1 ||
+ graph.parentRelations(node).length ||
+ node.hasInterestingTags()) {
+
+ continue;
+ }
+
+ var dotp = normalizedDotProduct(i, points);
+ if (dotp < -1 + epsilon) {
+ graph = iD.actions.DeleteNode(nodes[i].id)(graph);
+ }
}
}
@@ -16684,79 +17015,91 @@ iD.actions.Orthogonalize = function(wayId, projection) {
var a = array[(i - 1 + array.length) % array.length],
c = array[(i + 1) % array.length],
p = subtractPoints(a, b),
- q = subtractPoints(c, b);
+ q = subtractPoints(c, b),
+ scale, dotp;
- var scale = iD.geo.dist(p, [0, 0]) + iD.geo.dist(q, [0, 0]);
+ scale = 2 * Math.min(iD.geo.euclideanDistance(p, [0, 0]), iD.geo.euclideanDistance(q, [0, 0]));
p = normalizePoint(p, 1.0);
q = normalizePoint(q, 1.0);
- var dotp = p[0] * q[0] + p[1] * q[1];
+ dotp = filterDotProduct(p[0] * q[0] + p[1] * q[1]);
// nasty hack to deal with almost-straight segments (angle is closer to 180 than to 90/270).
if (array.length > 3) {
if (dotp < -0.707106781186547) {
dotp += 1.0;
}
- } else if (Math.abs(dotp) < corner.dotp) {
+ } else if (dotp && Math.abs(dotp) < corner.dotp) {
corner.i = i;
corner.dotp = Math.abs(dotp);
}
return normalizePoint(addPoints(p, q), 0.1 * dotp * scale);
}
+ };
- function squareness() {
- var g = 0.0;
- for (var i = 1; i < points.length - 1; i++) {
- var score = scoreOfPoints(points[i - 1], points[i], points[i + 1]);
- g += score;
- }
- var startScore = scoreOfPoints(points[points.length - 1], points[0], points[1]);
- var endScore = scoreOfPoints(points[points.length - 2], points[points.length - 1], points[0]);
- g += startScore;
- g += endScore;
- return g;
- }
+ function squareness(points) {
+ return points.reduce(function(sum, val, i, array) {
+ var dotp = normalizedDotProduct(i, array);
- function scoreOfPoints(a, b, c) {
- var p = subtractPoints(a, b),
- q = subtractPoints(c, b);
+ dotp = filterDotProduct(dotp);
+ return sum + 2.0 * Math.min(Math.abs(dotp - 1.0), Math.min(Math.abs(dotp), Math.abs(dotp + 1)));
+ }, 0);
+ }
- p = normalizePoint(p, 1.0);
- q = normalizePoint(q, 1.0);
+ function normalizedDotProduct(i, points) {
+ var a = points[(i - 1 + points.length) % points.length],
+ b = points[i],
+ c = points[(i + 1) % points.length],
+ p = subtractPoints(a, b),
+ q = subtractPoints(c, b);
- var dotp = p[0] * q[0] + p[1] * q[1];
- // score is constructed so that +1, -1 and 0 are all scored 0, any other angle
- // is scored higher.
- return 2.0 * Math.min(Math.abs(dotp - 1.0), Math.min(Math.abs(dotp), Math.abs(dotp + 1)));
- }
+ p = normalizePoint(p, 1.0);
+ q = normalizePoint(q, 1.0);
- function subtractPoints(a, b) {
- return [a[0] - b[0], a[1] - b[1]];
- }
+ return p[0] * q[0] + p[1] * q[1];
+ }
+
+ function subtractPoints(a, b) {
+ return [a[0] - b[0], a[1] - b[1]];
+ }
+
+ function addPoints(a, b) {
+ return [a[0] + b[0], a[1] + b[1]];
+ }
- function addPoints(a, b) {
- return [a[0] + b[0], a[1] + b[1]];
+ function normalizePoint(point, scale) {
+ var vector = [0, 0];
+ var length = Math.sqrt(point[0] * point[0] + point[1] * point[1]);
+ if (length !== 0) {
+ vector[0] = point[0] / length;
+ vector[1] = point[1] / length;
}
- function normalizePoint(point, scale) {
- var vector = [0, 0];
- var length = Math.sqrt(point[0] * point[0] + point[1] * point[1]);
- if (length !== 0) {
- vector[0] = point[0] / length;
- vector[1] = point[1] / length;
- }
+ vector[0] *= scale;
+ vector[1] *= scale;
- vector[0] *= scale;
- vector[1] *= scale;
+ return vector;
+ }
- return vector;
+ function filterDotProduct(dotp) {
+ if (lowerThreshold > Math.abs(dotp) || Math.abs(dotp) > upperThreshold) {
+ return dotp;
}
- };
+
+ return 0;
+ }
action.disabled = function(graph) {
- if (!graph.entity(wayId).isClosed())
- return 'not_closed';
+ var way = graph.entity(wayId),
+ nodes = graph.childNodes(way),
+ points = _.uniq(nodes).map(function(n) { return projection(n.loc); });
+
+ if (squareness(points)) {
+ return false;
+ }
+
+ return 'not_squarish';
};
return action;
@@ -16880,19 +17223,70 @@ iD.actions.RotateWay = function(wayId, pivot, angle, projection) {
iD.actions.Split = function(nodeId, newWayIds) {
var wayIds;
+ // if the way is closed, we need to search for a partner node
+ // to split the way at.
+ //
+ // The following looks for a node that is both far away from
+ // the initial node in terms of way segment length and nearby
+ // in terms of beeline-distance. This assures that areas get
+ // split on the most "natural" points (independent of the number
+ // of nodes).
+ // For example: bone-shaped areas get split across their waist
+ // line, circles across the diameter.
+ function splitArea(nodes, idxA, graph) {
+ var lengths = new Array(nodes.length),
+ length,
+ i,
+ best = 0,
+ idxB;
+
+ function wrap(index) {
+ return iD.util.wrap(index, nodes.length);
+ }
+
+ function dist(nA, nB) {
+ return iD.geo.sphericalDistance(graph.entity(nA).loc, graph.entity(nB).loc);
+ }
+
+ // calculate lengths
+ length = 0;
+ for (i = wrap(idxA+1); i != idxA; i = wrap(i+1)) {
+ length += dist(nodes[i], nodes[wrap(i-1)]);
+ lengths[i] = length;
+ }
+
+ length = 0;
+ for (i = wrap(idxA-1); i != idxA; i = wrap(i-1)) {
+ length += dist(nodes[i], nodes[wrap(i+1)]);
+ if (length < lengths[i])
+ lengths[i] = length;
+ }
+
+ // determine best opposite node to split
+ for (i = 0; i < nodes.length; i++) {
+ var cost = lengths[i] / dist(nodes[idxA], nodes[i]);
+ if (cost > best) {
+ idxB = i;
+ best = cost;
+ }
+ }
+
+ return idxB;
+ }
+
function split(graph, wayA, newWayId) {
var wayB = iD.Way({id: newWayId, tags: wayA.tags}),
nodesA,
nodesB,
- isArea = wayA.isArea();
+ isArea = wayA.isArea(),
+ isOuter = iD.geo.isSimpleMultipolygonOuterMember(wayA, graph);
if (wayA.isClosed()) {
var nodes = wayA.nodes.slice(0, -1),
idxA = _.indexOf(nodes, nodeId),
- idxB = idxA + Math.floor(nodes.length / 2);
+ idxB = splitArea(nodes, idxA, graph);
- if (idxB >= nodes.length) {
- idxB %= nodes.length;
+ if (idxB < idxA) {
nodesA = nodes.slice(idxA).concat(nodes.slice(0, idxB + 1));
nodesB = nodes.slice(idxB, idxA + 1);
} else {
@@ -16919,24 +17313,23 @@ iD.actions.Split = function(nodeId, newWayIds) {
graph = graph.replace(relation);
}
} else {
- var role = relation.memberById(wayA.id).role,
- last = wayB.last(),
- i = relation.memberById(wayA.id).index,
- j;
-
- for (j = 0; j < relation.members.length; j++) {
- var entity = graph.hasEntity(relation.members[j].id);
- if (entity && entity.type === 'way' && entity.contains(last)) {
- break;
- }
+ if (relation === isOuter) {
+ graph = graph.replace(relation.mergeTags(wayA.tags));
+ graph = graph.replace(wayA.update({tags: {}}));
+ graph = graph.replace(wayB.update({tags: {}}));
}
- relation = relation.addMember({id: wayB.id, type: 'way', role: role}, i <= j ? i + 1 : i);
- graph = graph.replace(relation);
+ var member = {
+ id: wayB.id,
+ type: 'way',
+ role: relation.memberById(wayA.id).role
+ };
+
+ graph = iD.actions.AddMember(relation.id, member)(graph);
}
});
- if (isArea) {
+ if (!isOuter && isArea) {
var multipolygon = iD.Relation({
tags: _.extend({}, wayA.tags, {type: 'multipolygon'}),
members: [
@@ -16962,12 +17355,16 @@ iD.actions.Split = function(nodeId, newWayIds) {
action.ways = function(graph) {
var node = graph.entity(nodeId),
- parents = graph.parentWays(node);
+ parents = graph.parentWays(node),
+ hasLines = _.any(parents, function(parent) { return parent.geometry(graph) === 'line'; });
return parents.filter(function(parent) {
if (wayIds && wayIds.indexOf(parent.id) === -1)
return false;
+ if (!wayIds && hasLines && parent.geometry(graph) !== 'line')
+ return false;
+
if (parent.isClosed()) {
return true;
}
@@ -16996,6 +17393,80 @@ iD.actions.Split = function(nodeId, newWayIds) {
return action;
};
+/*
+ * Based on https://github.com/openstreetmap/potlatch2/net/systemeD/potlatch2/tools/Straighten.as
+ */
+
+iD.actions.Straighten = function(wayId, projection) {
+ function positionAlongWay(n, s, e) {
+ return ((n[0] - s[0]) * (e[0] - s[0]) + (n[1] - s[1]) * (e[1] - s[1]))/
+ (Math.pow(e[0] - s[0], 2) + Math.pow(e[1] - s[1], 2));
+ }
+
+ var action = function(graph) {
+ var way = graph.entity(wayId),
+ nodes = graph.childNodes(way),
+ points = nodes.map(function(n) { return projection(n.loc); }),
+ startPoint = points[0],
+ endPoint = points[points.length-1],
+ toDelete = [],
+ i;
+
+ for (i = 1; i < points.length-1; i++) {
+ var node = nodes[i],
+ point = points[i];
+
+ if (graph.parentWays(node).length > 1 ||
+ graph.parentRelations(node).length ||
+ node.hasInterestingTags()) {
+
+ var u = positionAlongWay(point, startPoint, endPoint),
+ p0 = startPoint[0] + u * (endPoint[0] - startPoint[0]),
+ p1 = startPoint[1] + u * (endPoint[1] - startPoint[1]),
+
+ graph = graph.replace(graph.entity(node.id)
+ .move(projection.invert([p0, p1])));
+ } else {
+ // safe to delete
+ if (toDelete.indexOf(node) == -1) {
+ toDelete.push(node);
+ }
+ }
+ }
+
+ for (i = 0; i < toDelete.length; i++) {
+ graph = iD.actions.DeleteNode(toDelete[i].id)(graph);
+ }
+
+ return graph;
+ };
+
+ action.disabled = function(graph) {
+ // check way isn't too bendy
+ var way = graph.entity(wayId),
+ nodes = graph.childNodes(way),
+ points = nodes.map(function(n) { return projection(n.loc); }),
+ startPoint = points[0],
+ endPoint = points[points.length-1],
+ threshold = 0.2 * Math.sqrt(Math.pow(startPoint[0] - endPoint[0], 2) + Math.pow(startPoint[1] - endPoint[1], 2)),
+ i;
+
+ for (i = 1; i < points.length-1; i++) {
+ var point = points[i],
+ u = positionAlongWay(point, startPoint, endPoint),
+ p0 = startPoint[0] + u * (endPoint[0] - startPoint[0]),
+ p1 = startPoint[1] + u * (endPoint[1] - startPoint[1]),
+ dist = Math.sqrt(Math.pow(p0 - point[0], 2) + Math.pow(p1 - point[1], 2));
+
+ // to bendy if point is off by 20% of total start/end distance in projected space
+ if (dist > threshold) {
+ return 'too_bendy';
+ }
+ }
+ };
+
+ return action;
+};
iD.behavior = {};
iD.behavior.AddWay = function(context) {
var event = d3.dispatch('start', 'startFromWay', 'startFromNode'),
@@ -17267,8 +17738,8 @@ iD.behavior.Draw = function(context) {
d3.select(window).on('mouseup.draw', function() {
element.on('mousemove.draw', mousemove);
- if (iD.geo.dist(pos, point()) < closeTolerance ||
- (iD.geo.dist(pos, point()) < tolerance &&
+ if (iD.geo.euclideanDistance(pos, point()) < closeTolerance ||
+ (iD.geo.euclideanDistance(pos, point()) < tolerance &&
(+new Date() - time) < 500)) {
// Prevent a quick second click
@@ -17324,9 +17795,12 @@ iD.behavior.Draw = function(context) {
function draw(selection) {
context.install(hover);
- context.install(tail);
context.install(edit);
+ if (!iD.behavior.Draw.usedTails[tail.text()]) {
+ context.install(tail);
+ }
+
keybinding
.on('â«', backspace)
.on('â¦', del)
@@ -17345,9 +17819,13 @@ iD.behavior.Draw = function(context) {
draw.off = function(selection) {
context.uninstall(hover);
- context.uninstall(tail);
context.uninstall(edit);
+ if (!iD.behavior.Draw.usedTails[tail.text()]) {
+ context.uninstall(tail);
+ iD.behavior.Draw.usedTails[tail.text()] = true;
+ }
+
selection
.on('mousedown.draw', null)
.on('mousemove.draw', null);
@@ -17360,10 +17838,7 @@ iD.behavior.Draw = function(context) {
};
draw.tail = function(_) {
- if (!_ || iD.behavior.Draw.usedTails[_] === undefined) {
- tail.text(_);
- iD.behavior.Draw.usedTails[_] = true;
- }
+ tail.text(_);
return draw;
};
@@ -18086,7 +18561,7 @@ iD.modes.AddLine = function(context) {
iD.actions.AddEntity(way),
iD.actions.AddVertex(way.id, node.id));
- context.enter(iD.modes.DrawLine(context, way.id, 'forward', graph));
+ context.enter(iD.modes.DrawLine(context, way.id, graph));
}
function startFromWay(loc, edge) {
@@ -18100,29 +18575,17 @@ iD.modes.AddLine = function(context) {
iD.actions.AddVertex(way.id, node.id),
iD.actions.AddMidpoint({ loc: loc, edge: edge }, node));
- context.enter(iD.modes.DrawLine(context, way.id, 'forward', graph));
+ context.enter(iD.modes.DrawLine(context, way.id, graph));
}
function startFromNode(node) {
- var graph = context.graph(),
- parent = graph.parentWays(node)[0],
- isLine = parent && parent.geometry(graph) === 'line';
-
- if (isLine && parent.first() === node.id) {
- context.enter(iD.modes.DrawLine(context, parent.id, 'backward', graph));
-
- } else if (isLine && parent.last() === node.id) {
- context.enter(iD.modes.DrawLine(context, parent.id, 'forward', graph));
-
- } else {
- var way = iD.Way();
+ var way = iD.Way();
- context.perform(
- iD.actions.AddEntity(way),
- iD.actions.AddVertex(way.id, node.id));
+ context.perform(
+ iD.actions.AddEntity(way),
+ iD.actions.AddVertex(way.id, node.id));
- context.enter(iD.modes.DrawLine(context, way.id, 'forward', graph));
- }
+ context.enter(iD.modes.DrawLine(context, way.id, context.graph()));
}
mode.enter = function() {
@@ -18209,7 +18672,9 @@ iD.modes.Browse = function(context) {
});
// Get focus on the body.
- document.activeElement.blur();
+ if (document.activeElement) {
+ document.activeElement.blur();
+ }
if (sidebar) {
context.ui().sidebar.show(sidebar);
@@ -18277,8 +18742,8 @@ iD.modes.DragNode = function(context) {
return t('operations.move.annotation.' + entity.geometry(context.graph()));
}
- function connectAnnotation(datum) {
- return t('operations.connect.annotation.' + datum.geometry(context.graph()));
+ function connectAnnotation(entity) {
+ return t('operations.connect.annotation.' + entity.geometry(context.graph()));
}
function origin(entity) {
@@ -18347,7 +18812,7 @@ iD.modes.DragNode = function(context) {
context.replace(
iD.actions.MoveNode(entity.id, loc),
- t('operations.move.annotation.' + entity.geometry(context.graph())));
+ moveAnnotation(entity));
}
function end(entity) {
@@ -18487,7 +18952,7 @@ iD.modes.DrawArea = function(context, wayId, baseGraph) {
return mode;
};
-iD.modes.DrawLine = function(context, wayId, direction, baseGraph) {
+iD.modes.DrawLine = function(context, wayId, baseGraph, affix) {
var mode = {
button: 'line',
id: 'draw-line'
@@ -18497,8 +18962,8 @@ iD.modes.DrawLine = function(context, wayId, direction, baseGraph) {
mode.enter = function() {
var way = context.entity(wayId),
- index = (direction === 'forward') ? undefined : 0,
- headId = (direction === 'forward') ? way.last() : way.first();
+ index = (affix === 'prefix') ? 0 : undefined,
+ headId = (affix === 'prefix') ? way.first() : way.last();
behavior = iD.behavior.DrawWay(context, wayId, index, mode, baseGraph)
.tail(t('modes.draw_line.tail'));
@@ -18533,81 +18998,82 @@ iD.modes.Move = function(context, entityIDs) {
};
var keybinding = d3.keybinding('move'),
- edit = iD.behavior.Edit(context);
-
- mode.enter = function() {
- context.install(edit);
+ edit = iD.behavior.Edit(context),
+ annotation = entityIDs.length === 1 ?
+ t('operations.move.annotation.' + context.geometry(entityIDs[0])) :
+ t('operations.move.annotation.multiple'),
+ origin,
+ nudgeInterval;
- var origin,
- nudgeInterval,
- annotation = entityIDs.length === 1 ?
- t('operations.move.annotation.' + context.geometry(entityIDs[0])) :
- t('operations.move.annotation.multiple');
+ function edge(point, size) {
+ var pad = [30, 100, 30, 100];
+ if (point[0] > size[0] - pad[0]) return [-10, 0];
+ else if (point[0] < pad[2]) return [10, 0];
+ else if (point[1] > size[1] - pad[1]) return [0, -10];
+ else if (point[1] < pad[3]) return [0, 10];
+ return null;
+ }
- context.perform(
- iD.actions.Noop(),
- annotation);
+ function startNudge(nudge) {
+ if (nudgeInterval) window.clearInterval(nudgeInterval);
+ nudgeInterval = window.setInterval(function() {
+ context.pan(nudge);
+ context.replace(
+ iD.actions.Move(entityIDs, [-nudge[0], -nudge[1]], context.projection),
+ annotation);
+ var c = context.projection(origin);
+ origin = context.projection.invert([c[0] - nudge[0], c[1] - nudge[1]]);
+ }, 50);
+ }
- function edge(point, size) {
- var pad = [30, 100, 30, 100];
- if (point[0] > size[0] - pad[0]) return [-10, 0];
- else if (point[0] < pad[2]) return [10, 0];
- else if (point[1] > size[1] - pad[1]) return [0, -10];
- else if (point[1] < pad[3]) return [0, 10];
- return null;
- }
+ function stopNudge() {
+ if (nudgeInterval) window.clearInterval(nudgeInterval);
+ nudgeInterval = null;
+ }
- function startNudge(nudge) {
- if (nudgeInterval) window.clearInterval(nudgeInterval);
- nudgeInterval = window.setInterval(function() {
- context.pan(nudge);
- context.replace(
- iD.actions.Move(entityIDs, [-nudge[0], -nudge[1]], context.projection),
- annotation);
- var c = context.projection(origin);
- origin = context.projection.invert([c[0] - nudge[0], c[1] - nudge[1]]);
- }, 50);
- }
+ function move() {
+ var p = context.mouse();
- function stopNudge() {
- if (nudgeInterval) window.clearInterval(nudgeInterval);
- nudgeInterval = null;
- }
+ var delta = origin ?
+ [p[0] - context.projection(origin)[0],
+ p[1] - context.projection(origin)[1]] :
+ [0, 0];
- function move() {
- var p = context.mouse();
+ var nudge = edge(p, context.map().dimensions());
+ if (nudge) startNudge(nudge);
+ else stopNudge();
- var delta = origin ?
- [p[0] - context.projection(origin)[0],
- p[1] - context.projection(origin)[1]] :
- [0, 0];
+ origin = context.map().mouseCoordinates();
- var nudge = edge(p, context.map().dimensions());
- if (nudge) startNudge(nudge);
- else stopNudge();
+ context.replace(
+ iD.actions.Move(entityIDs, delta, context.projection),
+ annotation);
+ }
- origin = context.map().mouseCoordinates();
+ function finish() {
+ d3.event.stopPropagation();
+ context.enter(iD.modes.Select(context, entityIDs)
+ .suppressMenu(true));
+ stopNudge();
+ }
- context.replace(
- iD.actions.Move(entityIDs, delta, context.projection),
- annotation);
- }
+ function cancel() {
+ context.pop();
+ context.enter(iD.modes.Select(context, entityIDs)
+ .suppressMenu(true));
+ stopNudge();
+ }
- function finish() {
- d3.event.stopPropagation();
- context.enter(iD.modes.Select(context, entityIDs));
- stopNudge();
- }
+ function undone() {
+ context.enter(iD.modes.Browse(context));
+ }
- function cancel() {
- context.pop();
- context.enter(iD.modes.Select(context, entityIDs));
- stopNudge();
- }
+ mode.enter = function() {
+ context.install(edit);
- function undone() {
- context.enter(iD.modes.Browse(context));
- }
+ context.perform(
+ iD.actions.Noop(),
+ annotation);
context.surface()
.on('mousemove.move', move)
@@ -18625,6 +19091,8 @@ iD.modes.Move = function(context, entityIDs) {
};
mode.exit = function() {
+ stopNudge();
+
context.uninstall(edit);
context.surface()
@@ -18678,12 +19146,14 @@ iD.modes.RotateWay = function(context, wayId) {
function finish() {
d3.event.stopPropagation();
- context.enter(iD.modes.Select(context, [wayId]));
+ context.enter(iD.modes.Select(context, [wayId])
+ .suppressMenu(true));
}
function cancel() {
context.pop();
- context.enter(iD.modes.Select(context, [wayId]));
+ context.enter(iD.modes.Select(context, [wayId])
+ .suppressMenu(true));
}
function undone() {
@@ -19045,16 +19515,65 @@ iD.operations.Circularize = function(selectedIDs, context) {
return operation;
};
+iD.operations.Continue = function(selectedIDs, context) {
+ var graph = context.graph(),
+ entities = selectedIDs.map(function(id) { return graph.entity(id); }),
+ geometries = _.extend({line: [], vertex: []},
+ _.groupBy(entities, function(entity) { return entity.geometry(graph); })),
+ vertex = geometries.vertex[0];
+
+ function candidateWays() {
+ return graph.parentWays(vertex).filter(function(parent) {
+ return parent.geometry(graph) === 'line' &&
+ parent.affix(vertex.id) &&
+ (geometries.line.length === 0 || geometries.line[0] === parent);
+ });
+ }
+
+ var operation = function() {
+ var candidate = candidateWays()[0];
+ context.enter(iD.modes.DrawLine(
+ context,
+ candidate.id,
+ context.graph(),
+ candidate.affix(vertex.id)));
+ };
+
+ operation.available = function() {
+ return geometries.vertex.length === 1 && geometries.line.length <= 1;
+ };
+
+ operation.disabled = function() {
+ var candidates = candidateWays();
+ if (candidates.length === 0)
+ return 'not_eligible';
+ if (candidates.length > 1)
+ return 'multiple';
+ };
+
+ operation.tooltip = function() {
+ var disable = operation.disabled();
+ return disable ?
+ t('operations.continue.' + disable) :
+ t('operations.continue.description');
+ };
+
+ operation.id = "continue";
+ operation.keys = [t('operations.continue.key')];
+ operation.title = t('operations.continue.title');
+
+ return operation;
+};
iD.operations.Delete = function(selectedIDs, context) {
var action = iD.actions.DeleteMultiple(selectedIDs);
var operation = function() {
var annotation,
- mode;
+ nextSelectedID;
if (selectedIDs.length > 1) {
annotation = t('operations.delete.annotation.multiple', {n: selectedIDs.length});
- mode = iD.modes.Browse(context);
+
} else {
var id = selectedIDs[0],
entity = context.entity(id),
@@ -19063,7 +19582,6 @@ iD.operations.Delete = function(selectedIDs, context) {
parent = parents[0];
annotation = t('operations.delete.annotation.' + geometry);
- mode = iD.modes.Browse(context);
// Select the next closest node in the way.
if (geometry === 'vertex' && parents.length === 1 && parent.nodes.length > 2) {
@@ -19075,12 +19593,12 @@ iD.operations.Delete = function(selectedIDs, context) {
} else if (i === nodes.length - 1) {
i--;
} else {
- var a = iD.geo.dist(entity.loc, context.entity(nodes[i - 1]).loc),
- b = iD.geo.dist(entity.loc, context.entity(nodes[i + 1]).loc);
+ var a = iD.geo.sphericalDistance(entity.loc, context.entity(nodes[i - 1]).loc),
+ b = iD.geo.sphericalDistance(entity.loc, context.entity(nodes[i + 1]).loc);
i = a < b ? i - 1 : i + 1;
}
- mode = iD.modes.Select(context, [nodes[i]]);
+ nextSelectedID = nodes[i];
}
}
@@ -19088,8 +19606,11 @@ iD.operations.Delete = function(selectedIDs, context) {
action,
annotation);
- context.enter(mode);
-
+ if (nextSelectedID && context.hasEntity(nextSelectedID)) {
+ context.enter(iD.modes.Select(context, [nextSelectedID]));
+ } else {
+ context.enter(iD.modes.Browse(context));
+ }
};
operation.available = function() {
@@ -19108,7 +19629,7 @@ iD.operations.Delete = function(selectedIDs, context) {
};
operation.id = "delete";
- operation.keys = [iD.ui.cmd('â«'), iD.ui.cmd('â¦')];
+ operation.keys = [iD.ui.cmd('ââ«'), iD.ui.cmd('ââ¦')];
operation.title = t('operations.delete.title');
return operation;
@@ -19232,17 +19753,20 @@ iD.operations.Move = function(selectedIDs, context) {
};
iD.operations.Orthogonalize = function(selectedIDs, context) {
var entityId = selectedIDs[0],
+ geometry = context.geometry(entityId),
action = iD.actions.Orthogonalize(entityId, context.projection);
- var operation = function() {
- var annotation = t('operations.orthogonalize.annotation.' + context.geometry(entityId));
+ function operation() {
+ var annotation = t('operations.orthogonalize.annotation.' + geometry);
context.perform(action, annotation);
- };
+ }
operation.available = function() {
+ var entity = context.entity(entityId);
return selectedIDs.length === 1 &&
- context.entity(entityId).type === 'way' &&
- _.uniq(context.entity(entityId).nodes).length > 2;
+ entity.type === 'way' &&
+ entity.isClosed() &&
+ _.uniq(entity.nodes).length > 2;
};
operation.disabled = function() {
@@ -19253,13 +19777,12 @@ iD.operations.Orthogonalize = function(selectedIDs, context) {
var disable = operation.disabled();
return disable ?
t('operations.orthogonalize.' + disable) :
- t('operations.orthogonalize.description');
+ t('operations.orthogonalize.description.' + geometry);
};
operation.id = "orthogonalize";
operation.keys = [t('operations.orthogonalize.key')];
operation.title = t('operations.orthogonalize.title');
- operation.description = t('operations.orthogonalize.description');
return operation;
};
@@ -19372,6 +19895,40 @@ iD.operations.Split = function(selectedIDs, context) {
return operation;
};
+iD.operations.Straighten = function(selectedIDs, context) {
+ var entityId = selectedIDs[0],
+ action = iD.actions.Straighten(entityId, context.projection);
+
+ function operation() {
+ var annotation = t('operations.straighten.annotation');
+ context.perform(action, annotation);
+ }
+
+ operation.available = function() {
+ var entity = context.entity(entityId);
+ return selectedIDs.length === 1 &&
+ entity.type === 'way' &&
+ !entity.isClosed() &&
+ _.uniq(entity.nodes).length > 2;
+ };
+
+ operation.disabled = function() {
+ return action.disabled(context.graph());
+ };
+
+ operation.tooltip = function() {
+ var disable = operation.disabled();
+ return disable ?
+ t('operations.straighten.' + disable) :
+ t('operations.straighten.description');
+ };
+
+ operation.id = "straighten";
+ operation.keys = [t('operations.straighten.key')];
+ operation.title = t('operations.straighten.title');
+
+ return operation;
+};
iD.Connection = function() {
var event = d3.dispatch('authenticating', 'authenticated', 'auth', 'loading', 'load', 'loaded'),
@@ -19914,6 +20471,8 @@ iD.Entity = function(attrs) {
// Create the appropriate subtype.
if (attrs && attrs.type) {
return iD.Entity[attrs.type].apply(this, arguments);
+ } else if (attrs && attrs.id) {
+ return iD.Entity[iD.Entity.id.type(attrs.id)].apply(this, arguments);
}
// Initialize a generic Entity (used only in tests).
@@ -19940,14 +20499,9 @@ iD.Entity.id.type = function(id) {
// A function suitable for use as the second argument to d3.selection#data().
iD.Entity.key = function(entity) {
- return entity.id + ',' + entity.v;
+ return entity.id + 'v' + (entity.v || 0);
};
-iD.Entity.areaPath = d3.geo.path()
- .projection(d3.geo.mercator()
- .scale(12016420.517592335)
- .precision(0));
-
iD.Entity.prototype = {
tags: {},
@@ -20014,12 +20568,9 @@ iD.Entity.prototype = {
resolver.parentRelations(this).length > 0;
},
- // Returns the (possibly negative) area of the entity in square pixels at an
- // arbitrary unspecified zoom level -- so basically, only useful for relative
- // comparisons.
area: function(resolver) {
return resolver.transient(this, 'area', function() {
- return iD.Entity.areaPath.area(this.asGeoJSON(resolver, true));
+ return d3.geo.area(this.asGeoJSON(resolver, true));
});
},
@@ -20315,28 +20866,14 @@ iD.Graph.prototype = {
// Obliterates any existing entities
load: function(entities) {
-
- var base = this.base(),
- i, entity, prefix;
+ var base = this.base();
this.entities = Object.create(base.entities);
- for (i in entities) {
- entity = entities[i];
- prefix = i[0];
-
- if (entity === 'undefined') {
- this.entities[i] = undefined;
- } else if (prefix == 'n') {
- this.entities[i] = new iD.Node(entity);
-
- } else if (prefix == 'w') {
- this.entities[i] = new iD.Way(entity);
-
- } else if (prefix == 'r') {
- this.entities[i] = new iD.Relation(entity);
- }
+ for (var i in entities) {
+ this.entities[i] = entities[i];
this._updateCalculated(base.entities[i], this.entities[i]);
}
+
return this;
}
};
@@ -20529,33 +21066,85 @@ iD.History = function(context) {
toJSON: function() {
if (stack.length <= 1) return;
+ var allEntities = {};
+
var s = stack.map(function(i) {
- var x = { entities: i.graph.entities };
+ var modified = [], deleted = [];
+
+ _.forEach(i.graph.entities, function(entity, id) {
+ if (entity) {
+ var key = iD.Entity.key(entity);
+ allEntities[key] = entity;
+ modified.push(key);
+ } else {
+ deleted.push(id);
+ }
+ });
+
+ var x = {};
+
+ if (modified.length) x.modified = modified;
+ if (deleted.length) x.deleted = deleted;
if (i.imageryUsed) x.imageryUsed = i.imageryUsed;
if (i.annotation) x.annotation = i.annotation;
+
return x;
});
return JSON.stringify({
+ version: 2,
+ entities: _.values(allEntities),
stack: s,
nextIDs: iD.Entity.id.next,
index: index
- }, function includeUndefined(key, value) {
- if (typeof value === 'undefined') return 'undefined';
- return value;
});
},
fromJSON: function(json) {
-
var h = JSON.parse(json);
iD.Entity.id.next = h.nextIDs;
index = h.index;
- stack = h.stack.map(function(d) {
- d.graph = iD.Graph(stack[0].graph).load(d.entities);
- return d;
- });
+
+ if (h.version === 2) {
+ var allEntities = {};
+
+ h.entities.forEach(function(entity) {
+ allEntities[iD.Entity.key(entity)] = iD.Entity(entity);
+ });
+
+ stack = h.stack.map(function(d) {
+ var entities = {}, entity;
+
+ d.modified && d.modified.forEach(function(key) {
+ entity = allEntities[key];
+ entities[entity.id] = entity;
+ });
+
+ d.deleted && d.deleted.forEach(function(id) {
+ entities[id] = undefined;
+ });
+
+ return {
+ graph: iD.Graph(stack[0].graph).load(entities),
+ annotation: d.annotation,
+ imageryUsed: d.imageryUsed
+ };
+ });
+ } else { // original version
+ stack = h.stack.map(function(d) {
+ var entities = {};
+
+ for (var i in d.entities) {
+ var entity = d.entities[i];
+ entities[i] = entity === 'undefined' ? undefined : iD.Entity(entity);
+ }
+
+ d.graph = iD.Graph(stack[0].graph).load(entities);
+ return d;
+ });
+ }
+
stack[0].graph.inherited = false;
dispatch.change();
@@ -20705,6 +21294,10 @@ _.extend(iD.Relation.prototype, {
});
},
+ isDegenerate: function() {
+ return this.members.length === 0;
+ },
+
// Return an array of members, each extended with an 'index' property whose value
// is the member index.
indexedMembers: function() {
@@ -20808,24 +21401,26 @@ _.extend(iD.Relation.prototype, {
},
asGeoJSON: function(resolver) {
- if (this.isMultipolygon()) {
- return {
- type: 'Feature',
- properties: this.tags,
- geometry: {
- type: 'MultiPolygon',
- coordinates: this.multipolygon(resolver)
- }
- };
- } else {
- return {
- type: 'FeatureCollection',
- properties: this.tags,
- features: this.members.map(function(member) {
- return _.extend({role: member.role}, resolver.entity(member.id).asGeoJSON(resolver));
- })
- };
- }
+ return resolver.transient(this, 'GeoJSON', function () {
+ if (this.isMultipolygon()) {
+ return {
+ type: 'Feature',
+ properties: this.tags,
+ geometry: {
+ type: 'MultiPolygon',
+ coordinates: this.multipolygon(resolver)
+ }
+ };
+ } else {
+ return {
+ type: 'FeatureCollection',
+ properties: this.tags,
+ features: this.members.map(function (member) {
+ return _.extend({role: member.role}, resolver.entity(member.id).asGeoJSON(resolver));
+ })
+ };
+ }
+ });
},
isMultipolygon: function() {
@@ -20865,7 +21460,11 @@ _.extend(iD.Relation.prototype, {
outers = outers.map(function(outer) { return _.pluck(outer.nodes, 'loc'); });
inners = inners.map(function(inner) { return _.pluck(inner.nodes, 'loc'); });
- var result = outers.map(function(o) { return [o]; });
+ var result = outers.map(function(o) {
+ // Heuristic for detecting counterclockwise winding order. Assumes
+ // that OpenStreetMap polygons are not hemisphere-spanning.
+ return [d3.geo.area({type: 'Polygon', coordinates: [o]}) > 2 * Math.PI ? o.reverse() : o];
+ });
function findOuter(inner) {
var o, outer;
@@ -20884,6 +21483,12 @@ _.extend(iD.Relation.prototype, {
}
for (var i = 0; i < inners.length; i++) {
+ var inner = inners[i];
+
+ if (d3.geo.area({type: 'Polygon', coordinates: [inner]}) < 2 * Math.PI) {
+ inner = inner.reverse();
+ }
+
var o = findOuter(inners[i]);
if (o !== undefined)
result[o].push(inners[i]);
@@ -21041,6 +21646,11 @@ _.extend(iD.Way.prototype, {
return this.nodes.indexOf(node) >= 0;
},
+ affix: function(node) {
+ if (this.nodes[0] === node) return 'prefix';
+ if (this.nodes[this.nodes.length - 1] === node) return 'suffix';
+ },
+
isOneWay: function() {
return this.tags.oneway === 'yes' ||
this.tags.oneway === '1' ||
@@ -21146,31 +21756,41 @@ _.extend(iD.Way.prototype, {
},
asGeoJSON: function(resolver, polygon) {
- var nodes = resolver.childNodes(this);
+ return resolver.transient(this, 'GeoJSON', function() {
+ var nodes = resolver.childNodes(this);
- if (this.isArea() && polygon && nodes.length >= 4) {
- if (!this.isClosed()) {
- nodes = nodes.concat([nodes[0]]);
- }
-
- return {
- type: 'Feature',
- properties: this.tags,
- geometry: {
- type: 'Polygon',
- coordinates: [_.pluck(nodes, 'loc')]
+ if (this.isArea() && polygon && nodes.length >= 4) {
+ if (!this.isClosed()) {
+ nodes = nodes.concat([nodes[0]]);
}
- };
- } else {
- return {
- type: 'Feature',
- properties: this.tags,
- geometry: {
- type: 'LineString',
- coordinates: _.pluck(nodes, 'loc')
+
+ var json = {
+ type: 'Feature',
+ properties: this.tags,
+ geometry: {
+ type: 'Polygon',
+ coordinates: [_.pluck(nodes, 'loc')]
+ }
+ };
+
+ // Heuristic for detecting counterclockwise winding order. Assumes
+ // that OpenStreetMap polygons are not hemisphere-spanning.
+ if (d3.geo.area(json) > 2 * Math.PI) {
+ json.geometry.coordinates[0] = json.geometry.coordinates[0].reverse();
}
- };
- }
+
+ return json;
+ } else {
+ return {
+ type: 'Feature',
+ properties: this.tags,
+ geometry: {
+ type: 'LineString',
+ coordinates: _.pluck(nodes, 'loc')
+ }
+ };
+ }
+ });
}
});
@@ -21178,23 +21798,26 @@ _.extend(iD.Way.prototype, {
// of the following keys, and the value is _not_ one of the associated
// values for the respective key.
iD.Way.areaKeys = {
+ aeroway: { taxiway: true},
+ amenity: {},
area: {},
+ 'area:highway': {},
building: {},
- leisure: {},
- tourism: {},
- ruins: {},
+ 'building:part': {},
historic: {},
landuse: {},
+ leisure: {},
+ man_made: { cutline: true, embankment: true, pipeline: true},
military: {},
natural: { coastline: true },
- amenity: {},
- shop: {},
- man_made: {},
- public_transport: {},
+ office: {},
place: {},
- aeroway: {},
- waterway: {},
- power: {}
+ power: {},
+ public_transport: {},
+ ruins: {},
+ shop: {},
+ tourism: {},
+ waterway: {}
};
iD.Background = function(context) {
var dispatch = d3.dispatch('change'),
@@ -21205,33 +21828,31 @@ iD.Background = function(context) {
overlayLayers = [];
var backgroundSources = iD.data.imagery.map(function(source) {
- if (source.sourcetag === 'Bing') {
+ if (source.type === 'bing') {
return iD.BackgroundSource.Bing(source, dispatch);
} else {
- return iD.BackgroundSource.template(source);
+ return iD.BackgroundSource(source);
}
});
- backgroundSources.push(iD.BackgroundSource.Custom);
-
- function findSource(sourcetag) {
+ function findSource(id) {
return _.find(backgroundSources, function(d) {
- return d.data.sourcetag && d.data.sourcetag === sourcetag;
+ return d.id && d.id === id;
});
}
function updateImagery() {
- var b = background.baseLayerSource().data,
- o = overlayLayers.map(function (d) { return d.source().data.sourcetag; }).join(','),
+ var b = background.baseLayerSource(),
+ o = overlayLayers.map(function (d) { return d.source().id; }).join(','),
q = iD.util.stringQs(location.hash.substring(1));
- var tag = b.sourcetag;
- if (!tag && b.name === 'Custom') {
- tag = 'custom:' + b.template;
+ var id = b.id;
+ if (!id && b.name === 'Custom') {
+ id = 'custom:' + b.template;
}
- if (tag) {
- q.background = tag;
+ if (id) {
+ q.background = id;
} else {
delete q.background;
}
@@ -21248,11 +21869,14 @@ iD.Background = function(context) {
if (b.name === 'Custom') {
imageryUsed.push('Custom (' + b.template + ')');
} else {
- imageryUsed.push(b.sourcetag || b.name);
+ imageryUsed.push(b.id || b.name);
}
overlayLayers.forEach(function (d) {
- imageryUsed.push(d.source().data.sourcetag || d.source().data.name);
+ var source = d.source();
+ if (!source.isLocatorOverlay()) {
+ imageryUsed.push(source.id || source.name);
+ }
});
if (background.showsGpxLayer()) {
@@ -21280,7 +21904,7 @@ iD.Background = function(context) {
gpx.call(gpxLayer);
var overlays = selection.selectAll('.overlay-layer')
- .data(overlayLayers, function(d) { return d.source().data.name });
+ .data(overlayLayers, function(d) { return d.source().name });
overlays.enter().insert('div', '.layer-data')
.attr('class', 'layer-layer overlay-layer');
@@ -21294,11 +21918,8 @@ iD.Background = function(context) {
}
background.sources = function(extent) {
- return backgroundSources.filter(function(layer) {
- return !layer.data.extents ||
- layer.data.extents.some(function(layerExtent) {
- return iD.geo.Extent(layerExtent).intersects(extent);
- });
+ return backgroundSources.filter(function(source) {
+ return source.intersects(extent);
});
};
@@ -21347,7 +21968,7 @@ iD.Background = function(context) {
background.showsLayer = function(d) {
return d === baseLayer.source() ||
- (d.data.name === 'Custom' && baseLayer.source().data.name === 'Custom') ||
+ (d.name === 'Custom' && baseLayer.source().name === 'Custom') ||
overlayLayers.some(function(l) { return l.source() === d; });
};
@@ -21364,7 +21985,7 @@ iD.Background = function(context) {
}
}
- layer = iD.TileLayer('overlay')
+ layer = iD.TileLayer()
.source(d)
.projection(context.projection)
.dimensions(baseLayer.dimensions());
@@ -21375,14 +21996,14 @@ iD.Background = function(context) {
};
background.nudge = function(d, zoom) {
- baseLayer.nudge(d, zoom);
+ baseLayer.source().nudge(d, zoom);
dispatch.change();
return background;
};
background.offset = function(d) {
- if (!arguments.length) return baseLayer.offset();
- baseLayer.offset(d);
+ if (!arguments.length) return baseLayer.source().offset();
+ baseLayer.source().offset(d);
dispatch.change();
return background;
};
@@ -21391,7 +22012,7 @@ iD.Background = function(context) {
chosen = q.background || q.layer;
if (chosen && chosen.indexOf('custom:') === 0) {
- background.baseLayerSource(iD.BackgroundSource.template({
+ background.baseLayerSource(iD.BackgroundSource({
template: chosen.replace(/^custom:/, ''),
name: 'Custom'
}));
@@ -21399,6 +22020,14 @@ iD.Background = function(context) {
background.baseLayerSource(findSource(chosen) || findSource("Bing"));
}
+ var locator = _.find(backgroundSources, function(d) {
+ return d.overlay && d.default;
+ });
+
+ if (locator) {
+ background.toggleOverlayLayer(locator);
+ }
+
var overlays = (q.overlays || '').split(',');
overlays.forEach(function(overlay) {
overlay = findSource(overlay);
@@ -21407,49 +22036,63 @@ iD.Background = function(context) {
return d3.rebind(background, dispatch, 'on');
};
-iD.BackgroundSource = {};
+iD.BackgroundSource = function(data) {
+ var source = _.clone(data),
+ offset = [0, 0];
-// derive the url of a 'quadkey' style tile from a coordinate object
-iD.BackgroundSource.template = function(data) {
+ source.scaleExtent = data.scaleExtent || [0, 20];
- function generator(coord) {
- var u = '';
- for (var zoom = coord[2]; zoom > 0; zoom--) {
- var b = 0;
- var mask = 1 << (zoom - 1);
- if ((coord[0] & mask) !== 0) b++;
- if ((coord[1] & mask) !== 0) b += 2;
- u += b.toString();
- }
+ source.offset = function(_) {
+ if (!arguments.length) return offset;
+ offset = _;
+ return source;
+ };
+
+ source.nudge = function(_, zoomlevel) {
+ offset[0] += _[0] / Math.pow(2, zoomlevel);
+ offset[1] += _[1] / Math.pow(2, zoomlevel);
+ return source;
+ };
+ source.url = function(coord) {
return data.template
- .replace('{t}', data.subdomains ?
- data.subdomains[(coord[0] + coord[1]) % data.subdomains.length] : '')
- .replace('{u}', u)
.replace('{x}', coord[0])
.replace('{y}', coord[1])
// TMS-flipped y coordinate
- .replace('{ty}', Math.pow(2, coord[2]) - coord[1] - 1)
- .replace('{z}', coord[2])
- // JOSM style
- .replace('{zoom}', coord[2])
- .replace(/\{(switch\:[^\}]*)\}/, function(s, r) {
- var subdomains = r.split(':')[1].split(',');
- return subdomains[coord[2] % subdomains.length];
+ .replace(/\{[t-]y\}/, Math.pow(2, coord[2]) - coord[1] - 1)
+ .replace(/\{z(oom)?\}/, coord[2])
+ .replace(/\{switch:([^}]+)\}/, function(s, r) {
+ var subdomains = r.split(',');
+ return subdomains[(coord[0] + coord[1]) % subdomains.length];
});
- }
+ };
- generator.data = data;
- generator.copyrightNotices = function() {};
+ source.intersects = function(extent) {
+ extent = extent.polygon();
+ return !data.polygon || data.polygon.some(function(polygon) {
+ return iD.geo.polygonIntersectsPolygon(polygon, extent);
+ });
+ };
+
+ source.validZoom = function(z) {
+ return source.scaleExtent[0] <= z &&
+ (!source.isLocatorOverlay() || source.scaleExtent[1] > z);
+ };
- return generator;
+ source.isLocatorOverlay = function() {
+ return source.name === 'Locator Overlay';
+ };
+
+ source.copyrightNotices = function() {};
+
+ return source;
};
iD.BackgroundSource.Bing = function(data, dispatch) {
// http://msdn.microsoft.com/en-us/library/ff701716.aspx
// http://msdn.microsoft.com/en-us/library/ff701701.aspx
- var bing = iD.BackgroundSource.template(data),
+ var bing = iD.BackgroundSource(data),
key = 'Arzdiw4nlOJzRwOz__qailc8NiR31Tt51dN2D7cm57NrnceZnCpgOkmJhNpGoppU', // Same as P2 and JOSM
url = 'http://dev.virtualearth.net/REST/v1/Imagery/Metadata/Aerial?include=ImageryProviders&key=' +
key + '&jsonp={callback}',
@@ -21470,6 +22113,25 @@ iD.BackgroundSource.Bing = function(data, dispatch) {
dispatch.change();
});
+ var template = "http://ecn.t{t}.tiles.virtualearth.net/tiles/a{u}.jpeg?g=587&mkt=en-gb&n=z",
+ subdomains = [0, 1, 2, 3];
+
+ bing.url = function(coord) {
+ var u = '';
+
+ for (var zoom = coord[2]; zoom > 0; zoom--) {
+ var b = 0;
+ var mask = 1 << (zoom - 1);
+ if ((coord[0] & mask) !== 0) b++;
+ if ((coord[1] & mask) !== 0) b += 2;
+ u += b.toString();
+ }
+
+ return template
+ .replace('{t}', subdomains[(coord[0] + coord[1]) % 4])
+ .replace('{u}', u);
+ };
+
bing.copyrightNotices = function(zoom, extent) {
zoom = Math.min(zoom, 21);
return providers.filter(function(provider) {
@@ -21483,20 +22145,11 @@ iD.BackgroundSource.Bing = function(data, dispatch) {
}).join(', ');
};
- return bing;
-};
+ bing.logo = "bing_maps.png";
+ bing.terms_url = "http://opengeodata.org/microsoft-imagery-details";
-iD.BackgroundSource.Custom = function() {
- var template = window.prompt('Enter a tile template. ' +
- 'Valid tokens are {z}, {x}, {y} for Z/X/Y scheme and {u} for quadtile scheme.');
- if (!template) return null;
- return iD.BackgroundSource.template({
- template: template,
- name: 'Custom'
- });
+ return bing;
};
-
-iD.BackgroundSource.Custom.data = { 'name': 'Custom' };
iD.GpxLayer = function(context, dispatch) {
var projection,
gj = {},
@@ -21521,8 +22174,35 @@ iD.GpxLayer = function(context, dispatch) {
.append('path')
.attr('class', 'gpx');
+ var path = d3.geo.path()
+ .projection(projection);
+
paths
- .attr('d', d3.geo.path().projection(projection));
+ .attr('d', path);
+
+ if (typeof gj.features !== 'undefined') {
+ svg
+ .selectAll('text')
+ .remove();
+
+ svg
+ .selectAll('path')
+ .data(gj.features)
+ .enter()
+ .append('text')
+ .attr('class', 'gpx')
+ .text(function(d) {
+ return d.properties.name;
+ })
+ .attr('x', function(d) {
+ var centroid = path.centroid(d);
+ return centroid[0] + 5;
+ })
+ .attr('y', function(d) {
+ var centroid = path.centroid(d);
+ return centroid[1];
+ });
+ }
}
function toDom(x) {
@@ -21606,7 +22286,8 @@ iD.Map = function(context) {
midpoints = iD.svg.Midpoints(roundedProjection, context),
labels = iD.svg.Labels(roundedProjection, context),
supersurface, surface,
- mouse;
+ mouse,
+ mousemove;
function map(selection) {
context.history()
@@ -21638,6 +22319,10 @@ iD.Map = function(context) {
.attr('id', 'surface')
.call(iD.svg.Surface(context));
+ surface.on('mousemove.map', function() {
+ mousemove = d3.event;
+ });
+
surface.on('mouseover.vertices', function() {
if (map.editable() && !transformed) {
var hover = d3.event.target.__data__;
@@ -21669,7 +22354,6 @@ iD.Map = function(context) {
map.dimensions(selection.dimensions());
labels.supersurface(supersurface);
- mouse = iD.util.fastMouse(supersurface.node());
}
function pxCenter() { return [dimensions[0] / 2, dimensions[1] / 2]; }
@@ -21723,7 +22407,7 @@ iD.Map = function(context) {
.call(midpoints, graph, all, filter, map.extent())
.call(labels, graph, all, filter, dimensions, !difference && !extent);
- if (points.points(context.intersects(map.extent())).length > 100) {
+ if (points.points(context.intersects(map.extent()), 100).length >= 100) {
surface.select('.layer-hit').selectAll('g.point').remove();
} else {
surface.call(points, points.points(all), filter);
@@ -21836,7 +22520,7 @@ iD.Map = function(context) {
}
map.mouse = function() {
- var e = d3.event, s;
+ var e = mousemove || d3.event, s;
while (s = e.sourceEvent) e = s;
return mouse(e);
};
@@ -21899,6 +22583,7 @@ iD.Map = function(context) {
surface.dimensions(dimensions);
context.background().dimensions(dimensions);
projection.clipExtent([[0, 0], dimensions]);
+ mouse = iD.util.fastMouse(supersurface.node());
setCenter(center);
return redraw();
};
@@ -22002,16 +22687,11 @@ iD.Map = function(context) {
return d3.rebind(map, dispatch, 'on');
};
-iD.TileLayer = function(backgroundType) {
-
- backgroundType = backgroundType || 'background';
-
+iD.TileLayer = function() {
var tileSize = 256,
tile = d3.geo.tile(),
projection,
cache = {},
- offset = [0, 0],
- offsets = {},
tileOrigin,
z,
transformProp = iD.util.prefixCSSProperty('Transform'),
@@ -22032,7 +22712,7 @@ iD.TileLayer = function(backgroundType) {
function lookUp(d) {
for (var up = -1; up > -d[2]; up--) {
var tile = atZoom(d, up);
- if (cache[source(tile)] !== false) {
+ if (cache[source.url(tile)] !== false) {
return tile;
}
}
@@ -22050,7 +22730,7 @@ iD.TileLayer = function(backgroundType) {
}
function addSource(d) {
- d.push(source(d));
+ d.push(source.url(d));
return d;
}
@@ -22074,7 +22754,7 @@ iD.TileLayer = function(backgroundType) {
function render(selection) {
var requests = [];
- if (tile.scaleExtent()[0] <= z) {
+ if (source.validZoom(z)) {
tile().forEach(function(d) {
addSource(d);
requests.push(d);
@@ -22090,8 +22770,8 @@ iD.TileLayer = function(backgroundType) {
}
var pixelOffset = [
- Math.round(offset[0] * Math.pow(2, z)),
- Math.round(offset[1] * Math.pow(2, z))
+ Math.round(source.offset()[0] * Math.pow(2, z)),
+ Math.round(source.offset()[1] * Math.pow(2, z))
];
function load(d) {
@@ -22148,19 +22828,6 @@ iD.TileLayer = function(backgroundType) {
.classed('tile-removing', false);
}
- background.offset = function(_) {
- if (!arguments.length) return offset;
- offset = _;
- if (source.data) offsets[source.data.name] = offset;
- return background;
- };
-
- background.nudge = function(_, zoomlevel) {
- offset[0] += _[0] / Math.pow(2, zoomlevel);
- offset[1] += _[1] / Math.pow(2, zoomlevel);
- return background;
- };
-
background.projection = function(_) {
if (!arguments.length) return projection;
projection = _;
@@ -22176,13 +22843,8 @@ iD.TileLayer = function(backgroundType) {
background.source = function(_) {
if (!arguments.length) return source;
source = _;
- if (source.data) {
- offset = offsets[source.data.name] = offsets[source.data.name] || [0, 0];
- } else {
- offset = [0, 0];
- }
cache = {};
- tile.scaleExtent((source.data && source.data.scaleExtent) || [1, 20]);
+ tile.scaleExtent(source.scaleExtent);
return background;
};
@@ -22253,7 +22915,7 @@ iD.svg = {
b = [x, y];
if (a) {
- var span = iD.geo.dist(a, b) - offset;
+ var span = iD.geo.euclideanDistance(a, b) - offset;
if (span >= 0) {
var angle = Math.atan2(b[1] - a[1], b[0] - a[0]),
@@ -22362,13 +23024,25 @@ iD.svg.Areas = function(projection) {
fill: areas
};
+ var bisect = d3.bisector(function(node) {
+ return -node.__data__.area(graph);
+ }).left;
+
+ var fills = surface.selectAll('.layer-fill path.area')[0];
+
+ function sortedByArea(entity) {
+ if (this.__data__ === 'fill') {
+ return fills[bisect(fills, -entity.area(graph))];
+ }
+ }
+
var paths = surface.selectAll('.layer-shadow, .layer-stroke, .layer-fill')
.selectAll('path.area')
.filter(filter)
.data(function(layer) { return data[layer]; }, iD.Entity.key);
paths.enter()
- .append('path')
+ .insert('path', sortedByArea)
.each(function(entity) {
var layer = this.parentNode.__data__;
@@ -22381,7 +23055,6 @@ iD.svg.Areas = function(projection) {
.call(iD.svg.TagClasses());
paths
- .order()
.attr('d', path);
paths.exit()
@@ -22470,7 +23143,12 @@ iD.svg.Labels = function(projection, context) {
return c[text];
} else {
- return size / 3 * 2 * text.length;
+ var str = encodeURIComponent(text).match(/%[CDEFcdef]/g);
+ if (str === null) {
+ return size / 3 * 2 * text.length;
+ } else {
+ return size / 3 * (2 * text.length + str.length);
+ }
}
}
@@ -22653,18 +23331,23 @@ iD.svg.Labels = function(projection, context) {
// Split entities into groups specified by label_stack
for (i = 0; i < entities.length; i++) {
entity = entities[i];
- var geometry = entity.geometry(graph),
- preset = geometry === 'area' && context.presets().match(entity, graph),
+ var geometry = entity.geometry(graph);
+
+ if (geometry === 'vertex')
+ continue;
+ if (hidePoints && geometry === 'point')
+ continue;
+
+ var preset = geometry === 'area' && context.presets().match(entity, graph),
icon = preset && !blacklisted(preset) && preset.icon;
- if ((iD.util.displayName(entity) || icon) && !(hidePoints && geometry === 'point')) {
+ if (!icon && !iD.util.displayName(entity))
+ continue;
- for (k = 0; k < label_stack.length; k ++) {
- if (entity.geometry(graph) === label_stack[k][0] &&
- entity.tags[label_stack[k][1]]) {
- labelable[k].push(entity);
- break;
- }
+ for (k = 0; k < label_stack.length; k ++) {
+ if (geometry === label_stack[k][0] && entity.tags[label_stack[k][1]]) {
+ labelable[k].push(entity);
+ break;
}
}
}
@@ -22950,7 +23633,7 @@ iD.svg.Midpoints = function(projection, context) {
// If neither of the nodes changed, no need to redraw midpoint
if (!midpoints[id] && (filter(a) || filter(b))) {
var loc = iD.geo.interp(a.loc, b.loc, 0.5);
- if (extent.intersects(loc) && iD.geo.dist(projection(a.loc), projection(b.loc)) > 40) {
+ if (extent.intersects(loc) && iD.geo.euclideanDistance(projection(a.loc), projection(b.loc)) > 40) {
midpoints[id] = {
type: 'midpoint',
id: id,
@@ -23040,7 +23723,7 @@ iD.svg.Points = function(projection, context) {
.remove();
}
- drawPoints.points = function(entities) {
+ drawPoints.points = function(entities, limit) {
var graph = context.graph(),
points = [];
@@ -23048,6 +23731,7 @@ iD.svg.Points = function(projection, context) {
var entity = entities[i];
if (entity.geometry(graph) === 'point') {
points.push(entity);
+ if (limit && points.length >= limit) break;
}
}
@@ -23056,6 +23740,81 @@ iD.svg.Points = function(projection, context) {
return drawPoints;
};
+iD.svg.Restrictions = function(context) {
+ var projection = context.projection;
+
+ function drawRestrictions(surface) {
+ var turns = drawRestrictions.turns(context.graph(), context.selectedIDs());
+
+ var groups = surface.select('.layer-hit').selectAll('g.restriction')
+ .data(turns, iD.Entity.key);
+
+ var enter = groups.enter().append('g')
+ .attr('class', 'restriction');
+
+ enter.append('circle')
+ .attr('class', 'restriction')
+ .attr('r', 4);
+
+ groups
+ .attr('transform', function(restriction) {
+ var via = context.entity(restriction.memberByRole('via').id);
+ return iD.svg.PointTransform(projection)(via);
+ });
+
+ groups.exit()
+ .remove();
+
+ return this;
+ }
+
+ drawRestrictions.turns = function (graph, selectedIDs) {
+ if (selectedIDs.length != 1)
+ return [];
+
+ var from = graph.entity(selectedIDs[0]);
+ if (from.type !== 'way')
+ return [];
+
+ return graph.parentRelations(from).filter(function(relation) {
+ var f = relation.memberById(from.id),
+ t = relation.memberByRole('to'),
+ v = relation.memberByRole('via');
+
+ return relation.tags.type === 'restriction' && f.role === 'from' &&
+ t && t.type === 'way' && graph.hasEntity(t.id) &&
+ v && v.type === 'node' && graph.hasEntity(v.id) &&
+ !graph.entity(t.id).isDegenerate() &&
+ !graph.entity(f.id).isDegenerate() &&
+ graph.entity(t.id).affix(v.id) &&
+ graph.entity(f.id).affix(v.id);
+ });
+ };
+
+ drawRestrictions.datum = function(graph, from, restriction, projection) {
+ var to = graph.entity(restriction.memberByRole('to').id),
+ a = graph.entity(restriction.memberByRole('via').id),
+ b;
+
+ if (to.first() === a.id) {
+ b = graph.entity(to.nodes[1]);
+ } else {
+ b = graph.entity(to.nodes[to.nodes.length - 2]);
+ }
+
+ a = projection(a.loc);
+ b = projection(b.loc);
+
+ return {
+ from: from,
+ to: to,
+ restriction: restriction,
+ angle: Math.atan2(b[1] - a[1], b[0] - a[0])
+ }
+ };
+
+ return drawRestrictions;
+};
iD.svg.Surface = function(context) {
function autosize(image) {
var img = document.createElement('img');
@@ -23488,8 +24247,7 @@ iD.ui = function(context) {
.call(iD.ui.Contributors(context));
window.onbeforeunload = function() {
- history.save();
- if (history.hasChanges()) return t('save.unsaved_changes');
+ return context.save();
};
d3.select(window).on('resize.editor', function() {
@@ -23510,8 +24268,7 @@ iD.ui = function(context) {
.on('â', pan([pa, 0]))
.on('â', pan([0, pa]))
.on('â', pan([-pa, 0]))
- .on('â', pan([0, -pa]))
- .on('M', function() { context.toggleFullscreen(); });
+ .on('â', pan([0, -pa]));
d3.select(document)
.call(keybinding);
@@ -23613,22 +24370,22 @@ iD.ui.Attribution = function(context) {
}
var attribution = selection.selectAll('.provided-by')
- .data([context.background().baseLayerSource()], function(d) { return d.data.name; });
+ .data([context.background().baseLayerSource()], function(d) { return d.name; });
attribution.enter()
.append('span')
.attr('class', 'provided-by')
.each(function(d) {
- var source = d.data.sourcetag || d.data.name;
+ var source = d.terms_text || d.id || d.name;
- if (d.data.logo) {
- source = '';
+ if (d.logo) {
+ source = '';
}
- if (d.data.terms_url) {
+ if (d.terms_url) {
d3.select(this)
.append('a')
- .attr('href', d.data.terms_url)
+ .attr('href', d.terms_url)
.attr('target', '_blank')
.html(source);
} else {
@@ -23676,7 +24433,7 @@ iD.ui.Background = function(context) {
['top', [0, -1]],
['right', [-1, 0]],
['bottom', [0, 1]]],
- opacityDefault = (context.storage('background-opacity') !== undefined) ?
+ opacityDefault = (context.storage('background-opacity') != undefined) ?
(+context.storage('background-opacity')) : 0.5;
function background(selection) {
@@ -23698,7 +24455,7 @@ iD.ui.Background = function(context) {
return context.background().showsLayer(d);
}
- content.selectAll('label.layer')
+ content.selectAll('label.layer, label.custom_layer')
.classed('active', active)
.selectAll('input')
.property('checked', active);
@@ -23706,18 +24463,24 @@ iD.ui.Background = function(context) {
function clickSetSource(d) {
d3.event.preventDefault();
- if (d.data.name === 'Custom') {
- var configured = d();
- if (!configured) {
- selectLayer();
- return;
- }
- d = configured;
- }
context.background().baseLayerSource(d);
selectLayer();
}
+ function clickCustom() {
+ d3.event.preventDefault();
+ var template = window.prompt(t('background.custom_prompt'));
+ if (!template) {
+ selectLayer();
+ return;
+ }
+ context.background().baseLayerSource(iD.BackgroundSource({
+ template: template,
+ name: 'Custom'
+ }));
+ selectLayer();
+ }
+
function clickSetOverlay(d) {
d3.event.preventDefault();
context.background().toggleOverlayLayer(d);
@@ -23735,29 +24498,27 @@ iD.ui.Background = function(context) {
.filter(filter);
var layerLinks = layerList.selectAll('label.layer')
- .data(sources, function(d) { return d.data.name; });
+ .data(sources, function(d) { return d.name; });
var layerInner = layerLinks.enter()
- .append('label')
+ .insert('label', '.custom_layer')
.attr('class', 'layer');
// only set tooltips for layers with tooltips
layerInner
- .filter(function(d) { return d.data.description; })
+ .filter(function(d) { return d.description; })
.call(bootstrap.tooltip()
- .title(function(d) { return d.data.description; })
- .placement('left')
- );
+ .title(function(d) { return d.description; })
+ .placement('left'));
layerInner.append('input')
.attr('type', type)
.attr('name', 'layers')
- .attr('value', function(d) { return d.data.name; })
+ .attr('value', function(d) { return d.name; })
.on('change', change);
- layerInner.insert('span').text(function(d) {
- return d.data.name;
- });
+ layerInner.append('span')
+ .text(function(d) { return d.name; });
layerLinks.exit()
.remove();
@@ -23766,13 +24527,8 @@ iD.ui.Background = function(context) {
}
function update() {
- backgroundList.call(drawList, 'radio', clickSetSource, function(d) {
- return !d.data.overlay;
- });
-
- overlayList.call(drawList, 'checkbox', clickSetOverlay, function(d) {
- return d.data.overlay;
- });
+ backgroundList.call(drawList, 'radio', clickSetSource, function(d) { return !d.overlay; });
+ overlayList.call(drawList, 'checkbox', clickSetOverlay, function(d) { return d.overlay; });
var hasGpx = context.background().hasGpxLayer(),
showsGpx = context.background().showsGpxLayer();
@@ -23889,6 +24645,19 @@ iD.ui.Background = function(context) {
.append('div')
.attr('class', 'toggle-list layer-list');
+ var custom = backgroundList
+ .append('label')
+ .attr('class', 'custom_layer')
+ .datum({name: 'Custom'});
+
+ custom.append('input')
+ .attr('type', 'radio')
+ .attr('name', 'layers')
+ .on('change', clickCustom);
+
+ custom.append('span')
+ .text(t('background.custom'));
+
var overlayList = content
.append('div')
.attr('class', 'toggle-list layer-list');
@@ -24014,7 +24783,7 @@ iD.ui.Commit = function(context) {
presets = context.presets();
function zipSame(d) {
- var c = [], n = -1;
+ var c = {}, n = -1;
for (var i = 0; i < d.length; i++) {
var desc = {
name: d[i].tags.name || presets.match(d[i], context.graph()).name(),
@@ -24022,15 +24791,15 @@ iD.ui.Commit = function(context) {
count: 1,
tagText: iD.util.tagText(d[i])
};
- if (c[n] &&
- c[n].name == desc.name &&
- c[n].tagText == desc.tagText) {
- c[n].count++;
+
+ var fingerprint = desc.name + desc.tagText;
+ if (c[fingerprint]) {
+ c[fingerprint].count++;
} else {
- c[++n] = desc;
+ c[fingerprint] = desc;
}
}
- return c;
+ return _.values(c);
}
function commit(selection) {
@@ -24043,9 +24812,9 @@ iD.ui.Commit = function(context) {
header.append('button')
.attr('class', 'fr')
+ .on('click', event.cancel)
.append('span')
- .attr('class', 'icon close')
- .on('click', event.cancel);
+ .attr('class', 'icon close');
header.append('h3')
.text(t('commit.title'));
@@ -24063,7 +24832,10 @@ iD.ui.Commit = function(context) {
var commentField = commentSection.append('textarea')
.attr('placeholder', t('commit.description_placeholder'))
- .property('value', context.storage('comment') || '');
+ .property('value', context.storage('comment') || '')
+ .on('blur.save', function () {
+ context.storage('comment', this.value);
+ });
commentField.node().select();
@@ -24100,10 +24872,8 @@ iD.ui.Commit = function(context) {
var saveButton = saveSection.append('button')
.attr('class', 'action col3 button')
.on('click.save', function() {
- var comment = commentField.node().value;
- localStorage.comment = comment;
event.save({
- comment: comment
+ comment: commentField.node().value
});
});
@@ -24443,6 +25213,7 @@ iD.ui.EntityEditor = function(context) {
.entityID(id));
function historyChanged() {
+ if (state === 'hide') return;
var entity = context.hasEntity(id);
if (!entity) return;
entityEditor.preset(context.presets().match(entity, context.graph()));
@@ -24491,7 +25262,7 @@ iD.ui.EntityEditor = function(context) {
if (!arguments.length) return preset;
if (_ !== preset) {
preset = _;
- reference = iD.ui.TagReference(preset.reference())
+ reference = iD.ui.TagReference(preset.reference(context.geometry(id)))
.showing(false);
}
return entityEditor;
@@ -24510,9 +25281,10 @@ iD.ui.FeatureList = function(context) {
.text(t('inspector.feature_list'));
function keypress() {
- var q = search.property('value');
- if (d3.event.keyCode === 13 && q.length) {
- click(list.selectAll('.feature-list-item:first-child').datum().entity);
+ var q = search.property('value'),
+ items = list.selectAll('.feature-list-item');
+ if (d3.event.keyCode === 13 && q.length && items.size()) {
+ click(items.datum().entity);
}
}
@@ -24749,116 +25521,40 @@ iD.ui.Geolocate = function(map) {
};
};
iD.ui.Help = function(context) {
-
var key = 'h';
- function help(selection) {
-
- var shown = false, pane;
-
- function setup() {
- pane = context.container()
- .select('.help-wrap')
- .html('');
-
- var toc = pane.append('ul')
- .attr('class', 'toc');
-
- function clickHelp(d, i) {
- pane.property('scrollTop', 0);
- doctitle.text(d.title);
- body.html(d.html);
- body.selectAll('a')
- .attr('target', '_blank');
- menuItems.classed('selected', function(m) {
- return m.title === d.title;
- });
-
- nav.html('');
-
- if (i > 0) {
- var prevLink = nav.append('a')
- .attr('class', 'previous')
- .on('click', function() {
- clickHelp(docs[i - 1], i - 1);
- });
- prevLink.append('span').attr('class', 'icon back blue');
- prevLink.append('span').text(docs[i - 1].title);
- }
- if (i < docs.length - 1) {
- var nextLink = nav.append('a')
- .attr('class', 'next')
- .on('click', function() {
- clickHelp(docs[i + 1], i + 1);
- });
- nextLink.append('span').text(docs[i + 1].title);
- nextLink.append('span').attr('class', 'icon forward blue');
- }
- }
-
- var docKeys = [
- 'help.help',
- 'help.editing_saving',
- 'help.roads',
- 'help.gps',
- 'help.imagery',
- 'help.addresses',
- 'help.inspector',
- 'help.buildings'];
-
- function one(f) { return function(x) { return f(x); }; }
- var docs = docKeys.map(one(t)).map(function(text) {
- return {
- title: text.split('\n')[0].replace('#', '').trim(),
- html: marked(text.split('\n').slice(1).join('\n'))
- };
- });
-
- var menuItems = toc.selectAll('li')
- .data(docs)
- .enter()
- .append('li')
- .append('a')
- .text(function(d) { return d.title; })
- .on('click', clickHelp);
-
- toc.append('li')
- .attr('class','walkthrough')
- .append('a')
- .text(t('splash.walkthrough'))
- .on('click', function() {
- d3.select(document.body).call(iD.ui.intro(context));
- setVisible(false);
- });
+ var docKeys = [
+ 'help.help',
+ 'help.editing_saving',
+ 'help.roads',
+ 'help.gps',
+ 'help.imagery',
+ 'help.addresses',
+ 'help.inspector',
+ 'help.buildings',
+ 'help.relations'];
+
+ var docs = docKeys.map(function(key) {
+ var text = t(key);
+ return {
+ title: text.split('\n')[0].replace('#', '').trim(),
+ html: marked(text.split('\n').slice(1).join('\n'))
+ };
+ });
- var content = pane.append('div')
- .attr('class', 'left-content'),
- doctitle = content.append('h2')
- .text(t('help.title')),
- body = content.append('div')
- .attr('class', 'body'),
- nav = content.append('div')
- .attr('class', 'nav');
+ function help(selection) {
+ var shown = false;
- clickHelp(docs[0], 0);
+ function hide() {
+ setVisible(false);
}
- function hide() { setVisible(false); }
function toggle() {
if (d3.event) d3.event.preventDefault();
tooltip.hide(button);
setVisible(!button.classed('active'));
}
- function blockClick() {
- pane.on('mousedown.help-inside', function() {
- return d3.event.stopPropagation();
- });
- selection.on('mousedown.help-inside', function() {
- return d3.event.stopPropagation();
- });
- }
-
function setVisible(show) {
if (show !== shown) {
button.classed('active', show);
@@ -24868,8 +25564,7 @@ iD.ui.Help = function(context) {
.style('right', '-500px')
.transition()
.duration(200)
- .style('right', '0px')
- .each('end', blockClick);
+ .style('right', '0px');
} else {
pane.style('right', '0px')
.transition()
@@ -24878,11 +25573,47 @@ iD.ui.Help = function(context) {
.each('end', function() {
d3.select(this).style('display', 'none');
});
- pane.on('mousedown.help-inside', null);
}
}
}
+ function clickHelp(d, i) {
+ pane.property('scrollTop', 0);
+ doctitle.text(d.title);
+ body.html(d.html);
+ body.selectAll('a')
+ .attr('target', '_blank');
+ menuItems.classed('selected', function(m) {
+ return m.title === d.title;
+ });
+
+ nav.html('');
+
+ if (i > 0) {
+ var prevLink = nav.append('a')
+ .attr('class', 'previous')
+ .on('click', function() {
+ clickHelp(docs[i - 1], i - 1);
+ });
+ prevLink.append('span').attr('class', 'icon back blue');
+ prevLink.append('span').text(docs[i - 1].title);
+ }
+ if (i < docs.length - 1) {
+ var nextLink = nav.append('a')
+ .attr('class', 'next')
+ .on('click', function() {
+ clickHelp(docs[i + 1], i + 1);
+ });
+ nextLink.append('span').text(docs[i + 1].title);
+ nextLink.append('span').attr('class', 'icon forward blue');
+ }
+ }
+
+ function clickWalkthrough() {
+ d3.select(document.body).call(iD.ui.intro(context));
+ setVisible(false);
+ }
+
var tooltip = bootstrap.tooltip()
.placement('left')
.html(true)
@@ -24896,14 +25627,56 @@ iD.ui.Help = function(context) {
button.append('span')
.attr('class', 'icon help light');
+ var pane = context.container()
+ .select('.help-wrap');
+
+ var toc = pane.append('ul')
+ .attr('class', 'toc');
+
+ var menuItems = toc.selectAll('li')
+ .data(docs)
+ .enter()
+ .append('li')
+ .append('a')
+ .text(function(d) { return d.title; })
+ .on('click', clickHelp);
+
+ toc.append('li')
+ .attr('class','walkthrough')
+ .append('a')
+ .text(t('splash.walkthrough'))
+ .on('click', clickWalkthrough);
+
+ var content = pane.append('div')
+ .attr('class', 'left-content');
+
+ var doctitle = content.append('h2')
+ .text(t('help.title'));
+
+ var body = content.append('div')
+ .attr('class', 'body');
+
+ var nav = content.append('div')
+ .attr('class', 'nav');
+
+ clickHelp(docs[0], 0);
+
+ var keybinding = d3.keybinding('help')
+ .on(key, toggle);
+
+ d3.select(document)
+ .call(keybinding);
+
context.surface().on('mousedown.help-outside', hide);
context.container().on('mousedown.b.help-outside', hide);
- setup();
+ pane.on('mousedown.help-inside', function() {
+ return d3.event.stopPropagation();
+ });
- var keybinding = d3.keybinding('help');
- keybinding.on(key, toggle);
- d3.select(document).call(keybinding);
+ selection.on('mousedown.help-inside', function() {
+ return d3.event.stopPropagation();
+ });
}
return help;
@@ -24985,6 +25758,7 @@ iD.ui.Inspector = function(context) {
inspector.state = function(_) {
if (!arguments.length) return state;
state = _;
+ entityEditor.state(state);
return inspector;
};
@@ -25016,21 +25790,25 @@ iD.ui.intro = function(context) {
background = context.background().baseLayerSource(),
opacity = d3.select('.background-layer').style('opacity'),
loadedTiles = context.connection().loadedTiles(),
- baseEntities = context.history().graph().base().entities;
+ baseEntities = context.history().graph().base().entities,
+ introGraph;
// Load semi-real data used in intro
context.connection().toggle(false).flush();
context.history().save().reset();
- context.history().merge(iD.Graph().load(JSON.parse(iD.introGraph)).entities);
+
+ introGraph = JSON.parse(iD.introGraph);
+ for (var key in introGraph) {
+ introGraph[key] = iD.Entity(introGraph[key]);
+ }
+ context.history().merge(iD.Graph().load(introGraph).entities);
context.background().bing();
// Block saving
var savebutton = d3.select('#bar button.save'),
save = savebutton.on('click');
savebutton.on('click', null);
-
- var beforeunload = window.onbeforeunload;
- window.onbeforeunload = null;
+ context.inIntro(true);
d3.select('.background-layer').style('opacity', 1);
@@ -25063,7 +25841,7 @@ iD.ui.intro = function(context) {
context.background().baseLayerSource(background);
if (history) context.history().fromJSON(history);
window.location.replace(hash);
- window.onbeforeunload = beforeunload;
+ context.inIntro(false);
d3.select('#bar button.save').on('click', save);
});
@@ -25103,7 +25881,7 @@ iD.ui.intro = function(context) {
};
iD.ui.intro.pointBox = function(point, context) {
- var rect = context.surface().node().getBoundingClientRect();
+ var rect = context.surfaceRect();
point = context.projection(point);
return {
left: point[0] + rect.left - 30,
@@ -25115,7 +25893,7 @@ iD.ui.intro.pointBox = function(point, context) {
iD.ui.intro.pad = function(box, padding, context) {
if (box instanceof Array) {
- var rect = context.surface().node().getBoundingClientRect();
+ var rect = context.surfaceRect();
box = context.projection(box);
box = {
left: box[0] + rect.left,
@@ -25468,10 +26246,10 @@ iD.ui.preset = function(context) {
var shown = fields.filter(function(field) { return field.shown(); }),
notShown = fields.filter(function(field) { return !field.shown(); });
- var $form = selection.selectAll('form')
+ var $form = selection.selectAll('.preset-form')
.data([0]);
- $form.enter().append('form')
+ $form.enter().append('div')
.attr('class', 'preset-form inspector-inner fillL3');
var $fields = $form.selectAll('.form-field')
@@ -25667,7 +26445,7 @@ iD.ui.PresetList = function(context) {
var message = messagewrap.append('h3')
.text(t('inspector.choose'));
- if (currentPreset) {
+ if (context.entity(id).isUsed(context.graph())) {
messagewrap.append('button')
.attr('class', 'preset-choose')
.on('click', function() { event.choose(currentPreset); })
@@ -25722,6 +26500,7 @@ iD.ui.PresetList = function(context) {
list.call(drawList, results);
} else {
list.call(drawList, context.presets().defaults(geometry, 36));
+ message.text(t('inspector.choose'));
}
}
@@ -25863,7 +26642,7 @@ iD.ui.PresetList = function(context) {
};
item.preset = preset;
- item.reference = iD.ui.TagReference(preset.reference());
+ item.reference = iD.ui.TagReference(preset.reference(context.geometry(id)));
return item;
}
@@ -25877,6 +26656,7 @@ iD.ui.PresetList = function(context) {
presetList.entityID = function(_) {
if (!arguments.length) return id;
id = _;
+ presetList.preset(context.presets().match(context.entity(id), context.graph()));
return presetList;
};
@@ -25924,7 +26704,7 @@ iD.ui.RadialMenu = function(context, operations) {
.attr('class', 'radial-menu-background')
.attr('d', 'M' + r * Math.sin(a0) + ',' +
r * Math.cos(a0) +
- ' A' + r + ',' + r + ' 0 0,0 ' +
+ ' A' + r + ',' + r + ' 0 ' + (operations.length > 5 ? '1' : '0') + ',0 ' +
(r * Math.sin(a1) + 1e-3) + ',' +
(r * Math.cos(a1) + 1e-3)) // Force positive-length path (#1305)
.attr('stroke-width', 50)
@@ -25956,16 +26736,34 @@ iD.ui.RadialMenu = function(context, operations) {
.attr('class', 'tooltip-inner radial-menu-tooltip');
function mouseover(d, i) {
- var rect = context.surface().node().getBoundingClientRect(),
+ var rect = context.surfaceRect(),
angle = a0 + i * a,
- dx = rect.left - (angle < 0 ? 200 : 0),
- dy = rect.top;
+ top = rect.top + (r + 25) * Math.cos(angle) + center[1] + 'px',
+ left = rect.left + (r + 25) * Math.sin(angle) + center[0] + 'px',
+ bottom = rect.height - (r + 25) * Math.cos(angle) - center[1] + 'px',
+ right = rect.width - (r + 25) * Math.sin(angle) - center[0] + 'px';
tooltip
- .style('left', (r + 25) * Math.sin(angle) + dx + center[0] + 'px')
- .style('top', (r + 25) * Math.cos(angle) + dy + center[1]+ 'px')
+ .style('top', null)
+ .style('left', null)
+ .style('bottom', null)
+ .style('right', null)
.style('display', 'block')
.html(iD.ui.tooltipHtml(d.tooltip(), d.keys[0]));
+
+ if (i === 0) {
+ tooltip
+ .style('right', right)
+ .style('top', top);
+ } else if (i >= 4) {
+ tooltip
+ .style('left', left)
+ .style('bottom', bottom);
+ } else {
+ tooltip
+ .style('left', left)
+ .style('top', top);
+ }
}
function mouseout() {
@@ -26154,7 +26952,7 @@ iD.ui.RawMembershipEditor = function(context) {
graph = context.graph();
context.intersects(context.extent()).forEach(function(entity) {
- if (entity.type !== 'relation')
+ if (entity.type !== 'relation' || entity.id === id)
return;
var presetName = context.presets().match(entity, graph).name(),
@@ -26542,12 +27340,12 @@ iD.ui.Restore = function(context) {
introModal.append('div')
.attr('class', 'modal-section')
.append('h3')
- .text(t('restore.heading'));
+ .text(t('restore.heading'));
introModal.append('div')
.attr('class','modal-section')
.append('p')
- .text(t('restore.description'));
+ .text(t('restore.description'));
var buttonWrap = introModal.append('div')
.attr('class', 'modal-actions cf');
@@ -26570,8 +27368,6 @@ iD.ui.Restore = function(context) {
restore.node().focus();
};
- modal.select('button.close').attr('class','hide');
-
};
iD.ui.Save = function(context) {
var history = context.history(),
@@ -26669,6 +27465,7 @@ iD.ui.Sidebar = function(context) {
} else if (!current) {
featureListWrap.classed('inspector-hidden', false);
inspectorWrap.classed('inspector-hidden', true);
+ inspector.state('hide');
}
};
@@ -26689,6 +27486,7 @@ iD.ui.Sidebar = function(context) {
} else if (!current) {
featureListWrap.classed('inspector-hidden', false);
inspectorWrap.classed('inspector-hidden', true);
+ inspector.state('hide');
}
};
@@ -26874,36 +27672,37 @@ iD.ui.Success = function(context) {
.on('click', function() { event.cancel(success) });
header.append('h3')
- .text(t('just_edited'));
+ .text(t('success.just_edited'));
var body = selection.append('div')
.attr('class', 'body save-success');
- body.append('a')
- .attr('class', 'col12 osm')
- .attr('target', '_blank')
- .attr('href', function() {
- return context.connection().changesetURL(changeset.id);
- })
- .text(t('view_on_osm'));
+ body.append('p')
+ .html(t('success.help_html'));
+
+ var changesetURL = context.connection().changesetURL(changeset.id);
body.append('a')
- .attr('class', 'col12 twitter')
+ .attr('class', 'button col12 osm')
.attr('target', '_blank')
- .attr('href', function() {
- return 'https://twitter.com/intent/tweet?source=webclient&text=' +
- encodeURIComponent(message);
- })
- .text(t('success.tweet'));
+ .attr('href', changesetURL)
+ .text(t('success.view_on_osm'));
- body.append('a')
- .attr('class', 'col12 facebook')
+ var sharing = {
+ facebook: 'https://facebook.com/sharer/sharer.php?u=' + encodeURIComponent(changesetURL),
+ twitter: 'https://twitter.com/intent/tweet?source=webclient&text=' + encodeURIComponent(message),
+ google: 'https://plus.google.com/share?url=' + encodeURIComponent(changesetURL)
+ };
+
+ body.selectAll('.button.social')
+ .data(d3.entries(sharing))
+ .enter().append('a')
+ .attr('class', function(d) { return 'button social col4 ' + d.key; })
.attr('target', '_blank')
- .attr('href', function() {
- return 'https://facebook.com/sharer/sharer.php?u=' +
- encodeURIComponent(context.connection().changesetURL(changeset.id));
- })
- .text(t('success.facebook'));
+ .attr('href', function(d) { return d.value; })
+ .call(bootstrap.tooltip()
+ .title(function(d) { return t('success.' + d.key); })
+ .placement('bottom'));
}
success.changeset = function(_) {
@@ -27098,7 +27897,9 @@ iD.ui.UndoRedo = function(context) {
.placement('bottom')
.html(true)
.title(function (d) {
- return iD.ui.tooltipHtml(d.annotation() || t('nothing_to_' + d.id), d.cmd);
+ return iD.ui.tooltipHtml(d.annotation() ?
+ t(d.id + '.tooltip', {action: d.annotation()}) :
+ t(d.id + '.nothing'), d.cmd);
});
var buttons = selection.selectAll('button')
@@ -27239,7 +28040,6 @@ iD.ui.preset.access = function(field, context) {
.attr('class', 'col6 preset-input-access-wrap')
.append('input')
.attr('type', 'text')
- .attr('placeholder', field.placeholder())
.attr('class', 'preset-input-access')
.attr('id', function(d) { return 'preset-input-access-' + d; })
.each(function(d) {
@@ -27284,7 +28084,10 @@ iD.ui.preset.access = function(field, context) {
access.tags = function(tags) {
items.selectAll('.preset-input-access')
- .value(function(d) { return tags[d] || ''; });
+ .value(function(d) { return tags[d] || ''; })
+ .attr('placeholder', function(d) {
+ return d !== 'access' && tags.access ? tags.access : field.placeholder();
+ });
};
access.focus = function() {
@@ -27477,7 +28280,11 @@ iD.ui.preset.combo = function(field) {
input.enter().append('input')
.attr('type', 'text')
- .attr('id', 'preset-input-' + field.id)
+ .attr('id', 'preset-input-' + field.id);
+
+ input
+ .on('change', change)
+ .on('blur', change)
.each(function() {
if (field.options) {
options(field.options);
@@ -27488,11 +28295,7 @@ iD.ui.preset.combo = function(field) {
if (!err) options(_.pluck(data, 'value'));
});
}
- });
-
- input
- .on('change', change)
- .on('blur', change)
+ })
.call(combobox);
function options(opts) {
@@ -27686,7 +28489,9 @@ iD.ui.preset.localized = function(field, context) {
if (language) value = language[2];
- t[key(d.lang)] = '';
+ if (d.lang) {
+ t[key(d.lang)] = '';
+ }
if (d.value) {
t[key(value)] = d.value;
@@ -27725,8 +28530,8 @@ iD.ui.preset.localized = function(field, context) {
var innerWrap = wraps.enter()
.insert('div', ':first-child');
- innerWrap.attr('class', 'entry')
- .each(function(d) {
+ innerWrap.attr('class', 'entry')
+ .each(function() {
var wrap = d3.select(this);
var langcombo = d3.combobox().fetcher(fetcher);
@@ -27766,26 +28571,22 @@ iD.ui.preset.localized = function(field, context) {
.remove();
})
.append('span').attr('class', 'icon delete');
-
});
- innerWrap.transition()
- .style('margin-top','0px')
+ innerWrap
+ .style('margin-top', '0px')
.style('max-height', '0px')
- .style('padding', '0px')
.style('opacity', '0')
- .style('border-width', '0px')
.transition()
.duration(200)
- .style('margin-top','10px')
- .style('border-width', '1px')
- .style('padding', '10px')
+ .style('margin-top', '10px')
.style('max-height', '240px')
.style('opacity', '1')
- .each('end', function(d) {
- d3.select(this).style('max-height', '');
- d3.select(this).style('overflow', 'visible');
- });;
+ .each('end', function() {
+ d3.select(this)
+ .style('max-height', '')
+ .style('overflow', 'visible');
+ });
wraps.exit()
.transition()
@@ -28319,11 +29120,11 @@ iD.ui.intro.line = function(context, reveal) {
var centroid = [-85.62830, 41.95699];
var midpoint = [-85.62975395449628, 41.95787501510204];
- var start = [-85.6297754121684, 41.9583158176903];
+ var start = [-85.6297754121684, 41.95805253325314];
var intersection = [-85.62974496187628, 41.95742515554585];
context.map().centerZoom(start, 18);
- reveal('button.add-line', t('intro.lines.add'), {tooltipClass: 'intro-areas-add'});
+ reveal('button.add-line', t('intro.lines.add'), {tooltipClass: 'intro-lines-add'});
context.on('enter.intro', addLine);
@@ -28361,7 +29162,7 @@ iD.ui.intro.line = function(context, reveal) {
// ended line before creating intersection
function retry(mode) {
if (mode.id !== 'select') return;
- var pointBox = iD.ui.intro.pad(intersection, 30);
+ var pointBox = iD.ui.intro.pad(intersection, 30, context);
reveal(pointBox, t('intro.lines.restart'));
timeout(function() {
context.replace(iD.actions.DeleteMultiple(mode.selectedIDs()));
@@ -28395,6 +29196,10 @@ iD.ui.intro.line = function(context, reveal) {
context.on('enter.intro', null);
d3.select('#curtain').style('pointer-events', 'all');
+ presetCategory();
+ }
+
+ function presetCategory() {
timeout(function() {
d3.select('#curtain').style('pointer-events', 'none');
var road = d3.select('.preset-category-road .preset-list-button');
@@ -28407,9 +29212,20 @@ iD.ui.intro.line = function(context, reveal) {
timeout(function() {
var grid = d3.select('.subgrid');
reveal(grid.node(), t('intro.lines.residential'));
+ grid.selectAll(':not(.preset-highway-residential) .preset-list-button')
+ .one('click.intro', retryPreset);
grid.selectAll('.preset-highway-residential .preset-list-button')
.one('click.intro', roadDetails);
- }, 200);
+ }, 500);
+ }
+
+ // selected wrong road type
+ function retryPreset(mode) {
+ timeout(function() {
+ var preset = d3.select('.entity-editor-pane .preset-list-button');
+ reveal(preset.node(), t('intro.lines.wrong_preset'));
+ preset.one('click.intro', presetCategory);
+ }, 500);
}
function roadDetails() {
@@ -28455,7 +29271,7 @@ iD.ui.intro.navigation = function(context, reveal) {
step.enter = function() {
- var rect = context.surface().node().getBoundingClientRect(),
+ var rect = context.surfaceRect(),
map = {
left: rect.left + 10,
top: rect.top + 70,
@@ -29000,14 +29816,17 @@ iD.presets.Preset = function(id, preset, fields) {
return Object.keys(preset.tags).length === 0;
};
- preset.reference = function() {
- var reference = {key: Object.keys(preset.tags)[0]};
+ preset.reference = function(geometry) {
+ var key = Object.keys(preset.tags)[0],
+ value = preset.tags[key];
- if (preset.tags[reference.key] !== '*') {
- reference.value = preset.tags[reference.key];
+ if (geometry === 'relation' && key === 'type') {
+ return { rtype: value };
+ } else if (value === '*') {
+ return { key: key };
+ } else {
+ return { key: key, value: value };
}
-
- return reference;
};
var removeTags = preset.removeTags || preset.tags;
@@ -29029,7 +29848,11 @@ iD.presets.Preset = function(id, preset, fields) {
tags = _.clone(tags);
for (var k in applyTags) {
- if (applyTags[k] !== '*') tags[k] = applyTags[k];
+ if (applyTags[k] === '*') {
+ tags[k] = 'yes';
+ } else {
+ tags[k] = applyTags[k];
+ }
}
for (var f in preset.fields) {
@@ -29253,6 +30076,8 @@ iD.introGraph = '{"n185954700":{"id":"n185954700","loc":[-85.642244,41.939081],"
],
"discarded": [
"created_by",
+ "odbl",
+ "odbl:note",
"tiger:upload_uuid",
"tiger:tlid",
"tiger:source",
@@ -29260,8 +30085,30 @@ iD.introGraph = '{"n185954700":{"id":"n185954700","loc":[-85.642244,41.939081],"
"geobase:datasetName",
"geobase:uuid",
"sub_sea:type",
- "odbl",
- "odbl:note",
+ "KSJ2:ADS",
+ "KSJ2:ARE",
+ "KSJ2:AdminArea",
+ "KSJ2:COP_label",
+ "KSJ2:DFD",
+ "KSJ2:INT",
+ "KSJ2:INT_label",
+ "KSJ2:LOC",
+ "KSJ2:LPN",
+ "KSJ2:OPC",
+ "KSJ2:PubFacAdmin",
+ "KSJ2:RAC",
+ "KSJ2:RAC_label",
+ "KSJ2:RIC",
+ "KSJ2:RIN",
+ "KSJ2:WSC",
+ "KSJ2:coordinate",
+ "KSJ2:curve_id",
+ "KSJ2:curve_type",
+ "KSJ2:filename",
+ "KSJ2:lake_id",
+ "KSJ2:lat",
+ "KSJ2:long",
+ "KSJ2:river_id",
"yh:LINE_NAME",
"yh:LINE_NUM",
"yh:STRUCTURE",
@@ -29272,620 +30119,23480 @@ iD.introGraph = '{"n185954700":{"id":"n185954700","loc":[-85.642244,41.939081],"
],
"imagery": [
{
- "name": "Bing aerial imagery",
- "template": "http://ecn.t{t}.tiles.virtualearth.net/tiles/a{u}.jpeg?g=587&mkt=en-gb&n=z",
- "description": "Satellite imagery.",
- "scaleExtent": [
- 0,
- 20
- ],
- "subdomains": [
- "0",
- "1",
- "2",
- "3"
- ],
- "default": "yes",
- "sourcetag": "Bing",
- "logo": "bing_maps.png",
- "logo_url": "http://www.bing.com/maps",
- "terms_url": "http://opengeodata.org/microsoft-imagery-details"
- },
- {
- "name": "MapBox Satellite",
- "template": "http://{t}.tiles.mapbox.com/v3/openstreetmap.map-4wvf9l0l/{z}/{x}/{y}.png",
- "description": "Satellite and aerial imagery.",
- "scaleExtent": [
- 0,
- 16
- ],
- "subdomains": [
- "a",
- "b",
- "c"
- ],
- "terms_url": "http://mapbox.com/tos/"
- },
- {
- "name": "OpenStreetMap",
- "template": "http://{t}.tile.openstreetmap.org/{z}/{x}/{y}.png",
- "description": "The default OpenStreetMap layer.",
- "scaleExtent": [
- 0,
- 18
- ],
- "subdomains": [
- "a",
- "b",
- "c"
- ]
- },
- {
- "name": "TIGER 2012 Roads Overlay",
- "template": "http://{t}.tile.openstreetmap.us/tiger2012_roads_expanded/{z}/{x}/{y}.png",
- "sourcetag": "TIGER 2012",
- "overlay": true,
- "scaleExtent": [
- 16,
- 19
- ],
- "subdomains": [
- "a",
- "b",
- "c"
- ],
- "extents": [
+ "name": "7th Series (OS7)",
+ "type": "tms",
+ "template": "http://ooc.openstreetmap.org/os7/{zoom}/{x}/{y}.jpg",
+ "polygon": [
[
[
- -124.81,
- 24.055
+ -9,
+ 49.8
],
[
- -66.865,
- 49.386
- ]
- ],
- [
- [
- -179.754,
- 50.858
+ -9,
+ 61.1
],
[
- -129.899,
- 71.463
- ]
- ],
- [
+ 1.9,
+ 61.1
+ ],
[
- -174.46,
- 18.702
+ 1.9,
+ 49.8
],
[
- -154.516,
- 26.501
+ -9,
+ 49.8
]
]
]
},
{
- "name": "USGS Topographic Maps",
- "template": "http://{t}.tile.openstreetmap.us/usgs_scanned_topos/{z}/{x}/{y}.png",
- "subdomains": [
- "a",
- "b",
- "c"
- ],
- "extents": [
+ "name": "AGRI black-and-white 2.5m",
+ "type": "tms",
+ "template": "http://agri.openstreetmap.org/{zoom}/{x}/{y}.png",
+ "polygon": [
[
[
- -125.991,
- 24.005
+ 112.28778,
+ -28.784589
],
[
- -65.988,
- 50.009
- ]
- ],
- [
+ 112.71488,
+ -31.13894
+ ],
[
- -160.579,
- 18.902
+ 114.11263,
+ -34.178287
],
[
- -154.793,
- 22.508
- ]
- ],
- [
+ 113.60788,
+ -37.39012
+ ],
[
- -178.001,
- 51.255
+ 117.17992,
+ -37.451794
],
[
- -130.004,
- 71.999
- ]
- ]
- ]
- },
- {
- "name": "USGS Large Scale Aerial Imagery",
- "template": "http://{t}.tile.openstreetmap.us/usgs_large_scale/{z}/{x}/{y}.jpg",
- "subdomains": [
- "a",
- "b",
- "c"
- ],
- "extents": [
- [
+ 119.31538,
+ -37.42096
+ ],
[
- -124.819,
- 24.496
+ 121.72262,
+ -36.708394
],
[
- -66.931,
- 49.443
- ]
- ]
- ]
- },
- {
- "name": "British Columbia bc_mosaic",
- "template": "http://{t}.imagery.paulnorman.ca/tiles/bc_mosaic/{z}/{x}/{y}.png",
- "subdomains": [
- "a",
- "b",
- "c",
- "d"
- ],
- "extents": [
- [
+ 123.81925,
+ -35.76893
+ ],
[
- -123.441,
- 48.995
+ 125.9547,
+ -34.3066
],
[
- -121.346,
- 50.426
- ]
- ]
- ],
- "sourcetag": "bc_mosaic",
- "terms_url": "http://imagery.paulnorman.ca/tiles/about.html"
- },
- {
- "name": "OS OpenData Streetview",
- "template": "http://os.openstreetmap.org/sv/{z}/{x}/{y}.png",
- "extents": [
- [
+ 127.97368,
+ -33.727398
+ ],
[
- -8.72,
- 49.86
+ 130.07031,
+ -33.24166
],
[
- 1.84,
- 60.92
- ]
- ]
- ],
- "sourcetag": "OS_OpenData_StreetView"
- },
- {
- "name": "OS OpenData Locator",
- "template": "http://tiles.itoworld.com/os_locator/{z}/{x}/{y}.png",
- "extents": [
- [
+ 130.10913,
+ -33.888704
+ ],
[
- -9,
- 49.8
+ 131.00214,
+ -34.049705
],
[
- 1.9,
- 61.1
- ]
- ]
- ],
- "sourcetag": "OS_OpenData_Locator"
- },
- {
- "name": "OS 1:25k historic (OSM)",
- "template": "http://ooc.openstreetmap.org/os1/{z}/{x}/{y}.jpg",
- "extents": [
- [
+ 131.0798,
+ -34.72257
+ ],
[
- -9,
- 49.8
+ 132.28342,
+ -35.39
],
[
- 1.9,
- 61.1
- ]
- ]
- ],
- "sourcetag": "OS 1:25k"
- },
- {
- "name": "OS 1:25k historic (NLS)",
- "template": "http://geo.nls.uk/mapdata2/os/25000/{z}/{x}/{y}.png",
- "extents": [
- [
+ 134.18591,
+ -35.61126
+ ],
[
- -9,
- 49.8
+ 133.8753,
+ -37.1119
],
[
- 1.9,
- 61.1
- ]
- ]
- ],
- "sourcetag": "OS 1:25k",
- "logo": "icons/logo_nls70-nq8.png",
- "logo_url": "http://geo.nls.uk/maps/"
- },
- {
- "name": "OS 7th Series historic (OSM)",
- "template": "http://ooc.openstreetmap.org/os7/{z}/{x}/{y}.jpg",
- "extents": [
- [
+ 134.8459,
+ -37.6365
+ ],
[
- -9,
- 49.8
+ 139.7769,
+ -37.82075
],
[
- 1.9,
- 61.1
- ]
- ]
- ],
- "sourcetag": "OS7"
- },
- {
- "name": "OS 7th Series historic (NLS)",
- "template": "http://geo.nls.uk/mapdata2/os/seventh/{z}/{x}/{y}.png",
- "extents": [
- [
+ 139.93223,
+ -39.4283
+ ],
[
- -9,
- 49.8
+ 141.6017,
+ -39.8767
],
[
- 1.9,
- 61.1
- ]
- ]
- ],
- "sourcetag": "OS7",
- "logo": "icons/logo_nls70-nq8.png",
- "logo_url": "http://geo.nls.uk/maps/"
- },
- {
- "name": "OS New Popular Edition historic",
- "template": "http://ooc.openstreetmap.org/npe/{z}/{x}/{y}.png",
- "extents": [
- [
+ 142.3783,
+ -39.368294
+ ],
[
- -5.8,
- 49.8
+ 142.3783,
+ -40.64702
],
[
- 1.9,
- 55.8
- ]
- ]
- ],
- "sourcetag": "NPE"
- },
- {
- "name": "OS Scottish Popular historic",
- "template": "http://ooc.openstreetmap.org/npescotland/tiles/{z}/{x}/{y}.jpg",
- "extents": [
- [
+ 142.49478,
+ -42.074874
+ ],
[
- -7.8,
- 54.5
+ 144.009,
+ -44.060127
],
[
- -1.1,
- 61.1
- ]
- ]
- ],
- "sourcetag": "NPE"
- },
- {
- "name": "Surrey aerial",
- "template": "http://gravitystorm.dev.openstreetmap.org/surrey/{z}/{x}/{y}.png",
- "extents": [
- [
+ 147.23161,
+ -44.03222
+ ],
[
- -0.856,
- 51.071
+ 149.05645,
+ -42.534313
],
[
- 0.062,
- 51.473
- ]
- ]
- ],
- "sourcetag": "Surrey aerial"
- },
- {
- "name": "Port au Prince - GeoEye Jan 2010",
- "template": "http://gravitystorm.dev.openstreetmap.org/imagery/haiti/{z}/{x}/{y}.png",
- "extents": [
- [
+ 149.52237,
+ -40.99959
+ ],
[
- -72.43,
- 18.5
+ 149.9494,
+ -40.852921
],
[
- -72.31,
- 18.58
- ]
- ]
- ],
- "sourcetag": "GeoEye, 2010-01"
- },
- {
- "name": "Haiti - IOM Drone Imagery, 2012-13",
- "template": "http://wms.openstreetmap.fr/tms/1.0.0/iomhaiti/{zoom}/{x}/{y}",
- "extents": [
- [
+ 150.8036,
+ -38.09627
+ ],
[
- -74.5,
- 17.95
+ 151.81313,
+ -38.12682
],
[
- -71.58,
- 20.12
- ]
- ]
- ],
- "sourcetag": "iom_image2013"
- },
- {
- "name": "NAIP",
- "template": "http://cube.telascience.org/tilecache/tilecache.py/NAIP_ALL/{z}/{x}/{y}.png",
- "description": "National Agriculture Imagery Program",
- "extents": [
- [
+ 156.20052,
+ -22.667706
+ ],
[
- -125.8,
- 24.2
+ 156.20052,
+ -20.10109
],
[
- -62.3,
- 49.5
- ]
- ],
- [
+ 156.62761,
+ -17.417627
+ ],
[
- -168.5,
- 55.3
+ 155.26869,
+ -17.19521
],
[
- -140,
- 71.5
- ]
- ]
- ],
- "sourcetag": "NAIP"
- },
- {
- "name": "Ireland - NLS Historic Maps",
- "template": "http://geo.nls.uk/maps/ireland/gsgs4136/{z}/{x}/{y}.png",
- "extents": [
- [
+ 154.14272,
+ -19.51662
+ ],
[
- -10.71,
- 51.32
+ 153.5215,
+ -18.34139
],
[
- -5.37,
- 55.46
- ]
- ]
- ],
- "sourcetag": "NLS Historic Maps",
- "logo": "icons/logo_nls70-nq8.png",
- "logo_url": "http://geo.nls.uk/maps/"
- },
- {
- "name": "Denmark - Fugro Aerial Imagery",
- "template": "http://tile.openstreetmap.dk/fugro2005/{z}/{x}/{y}.jpg",
- "extents": [
- [
+ 153.05558,
+ -16.5636
+ ],
[
- 7.81,
- 54.44
+ 152.78379,
+ -15.256768
],
[
- 15.49,
- 57.86
- ]
- ]
- ],
- "sourcetag": "Fugro (2005)"
- },
- {
- "name": "Denmark - Stevns Kommune",
- "template": "http://tile.openstreetmap.dk/stevns/2009/{z}/{x}/{y}.jpg",
- "extents": [
- [
+ 152.27905,
+ -13.4135
+ ],
[
- 12.09144,
- 55.23403
+ 151.3472,
+ -12.391767
],
[
- 12.47712,
- 55.43647
- ]
- ]
- ],
- "sourcetag": "Stevns Kommune (2009)"
- },
- {
- "name": "Austria - geoimage.at",
- "template": "http://geoimage.openstreetmap.at/4d80de696cd562a63ce463a58a61488d/{z}/{x}/{y}.jpg",
- "extents": [
- [
+ 149.48354,
+ -12.05024
+ ],
[
- 9.36,
- 46.33
+ 146.9598,
+ -9.992408
],
[
- 17.28,
- 49.09
- ]
- ]
- ],
- "sourcetag": "geoimage.at"
- },
- {
- "name": "Russia - Kosmosnimki.ru IRS Satellite",
- "template": "http://irs.gis-lab.info/?layers=irs&request=GetTile&z={z}&x={x}&y={y}",
- "extents": [
- [
+ 135.9719,
+ -9.992408
+ ],
[
- 19.02,
- 40.96
+ 130.3032,
+ -10.33636
],
[
- 77.34,
- 70.48
- ]
- ]
- ],
- "sourcetag": "Kosmosnimki.ru IRS"
- },
- {
- "name": "Belarus - Kosmosnimki.ru SPOT4 Satellite",
- "template": "http://irs.gis-lab.info/?layers=spot&request=GetTile&z={z}&x={x}&y={y}",
- "extents": [
- [
+ 128.09016,
+ -12.164136
+ ],
[
- 23.16,
- 51.25
+ 125.91588,
+ -12.315912
],
[
- 32.83,
- 56.19
- ]
- ]
- ],
- "sourcetag": "Kosmosnimki.ru SPOT4"
- },
- {
- "name": "Australia - Geographic Reference Image",
- "template": "http://agri.openstreetmap.org/{z}/{x}/{y}.png",
- "extents": [
- [
+ 124.3239,
+ -11.860326
+ ],
[
- 96,
- -44
+ 122.03323,
+ -11.974295
],
[
- 168,
- -9
- ]
- ]
- ],
- "sourcetag": "AGRI"
- },
- {
- "name": "Switzerland - Canton Aargau - AGIS 25cm 2011",
- "template": "http://tiles.poole.ch/AGIS/OF2011/{z}/{x}/{y}.png",
- "extents": [
- [
+ 118.26706,
+ -16.9353
+ ],
[
- 7.69,
- 47.13
+ 115.93747,
+ -19.11357
],
[
- 8.48,
- 47.63
- ]
- ]
- ],
- "sourcetag": "AGIS OF2011"
- },
- {
- "name": "Switzerland - Canton Solothurn - SOGIS 2007",
- "template": "http://mapproxy.sosm.ch:8080/tiles/sogis2007/EPSG900913/{z}/{x}/{y}.png?origin=nw",
- "extents": [
- [
+ 114.0738,
+ -21.11863
+ ],
[
- 7.33,
- 47.06
+ 113.49141,
+ -22.596033
],
[
- 8.04,
- 47.5
+ 112.28778,
+ -28.784589
]
]
],
- "sourcetag": "Orthofoto 2007 WMS Solothurn"
+ "terms_text": "AGRI"
},
{
- "name": "Poland - Media-Lab fleet GPS masstracks",
- "template": "http://masstracks.media-lab.com.pl/{z}/{x}/{y}.png",
- "extents": [
- [
- [
- 14,
- 48.9
- ],
- [
- 24.2,
- 55
- ]
- ]
+ "name": "Bing aerial imagery",
+ "type": "bing",
+ "description": "Satellite and aerial imagery.",
+ "template": "http://www.bing.com/maps/",
+ "scaleExtent": [
+ 0,
+ 22
],
- "sourcetag": "masstracks"
+ "id": "Bing",
+ "default": true
},
{
- "name": "South Africa - CD:NGI Aerial",
- "template": "http://{t}.aerial.openstreetmap.org.za/ngi-aerial/{z}/{x}/{y}.jpg",
- "subdomains": [
- "a",
- "b",
- "c"
- ],
- "extents": [
+ "name": "British Columbia Mosaic",
+ "type": "tms",
+ "template": "http://{switch:a,b,c,d}.imagery.paulnorman.ca/tiles/bc_mosaic/{zoom}/{x}/{y}.png",
+ "scaleExtent": [
+ 9,
+ 20
+ ],
+ "polygon": [
[
[
- 17.64,
- -34.95
+ -123.3176032,
+ 49.3272567
],
[
- 32.87,
- -22.05
- ]
- ]
- ],
- "sourcetag": "ngi-aerial"
- },
- {
- "name": "Lithuania - ORT10LT",
- "template": "http://mapproxy.openmap.lt/ort10lt/g/{z}/{x}/{y}.jpeg",
- "extents": [
- [
+ -123.4405258,
+ 49.3268222
+ ],
[
- 21,
- 53.88
+ -123.440717,
+ 49.3384429
],
[
- 26.85,
- 56.45
- ]
- ]
- ],
- "scaleExtent": [
- 4,
- 18
+ -123.4398375,
+ 49.3430357
+ ],
+ [
+ -123.4401258,
+ 49.3435398
+ ],
+ [
+ -123.4401106,
+ 49.3439946
+ ],
+ [
+ -123.4406265,
+ 49.3444493
+ ],
+ [
+ -123.4404747,
+ 49.3455762
+ ],
+ [
+ -123.4397768,
+ 49.3460606
+ ],
+ [
+ -123.4389726,
+ 49.3461298
+ ],
+ [
+ -123.4372904,
+ 49.3567236
+ ],
+ [
+ -123.4374774,
+ 49.3710843
+ ],
+ [
+ -123.4335292,
+ 49.3709446
+ ],
+ [
+ -123.4330357,
+ 49.373725
+ ],
+ [
+ -123.4332717,
+ 49.3751221
+ ],
+ [
+ -123.4322847,
+ 49.3761001
+ ],
+ [
+ -123.4317482,
+ 49.3791736
+ ],
+ [
+ -123.4314264,
+ 49.3795927
+ ],
+ [
+ -123.4307826,
+ 49.3823866
+ ],
+ [
+ -123.4313405,
+ 49.3827358
+ ],
+ [
+ -123.4312118,
+ 49.3838533
+ ],
+ [
+ -123.4300415,
+ 49.3845883
+ ],
+ [
+ -123.4189858,
+ 49.3847087
+ ],
+ [
+ -123.4192235,
+ 49.4135198
+ ],
+ [
+ -123.3972532,
+ 49.4135691
+ ],
+ [
+ -123.3972758,
+ 49.4243473
+ ],
+ [
+ -123.4006929,
+ 49.4243314
+ ],
+ [
+ -123.4007741,
+ 49.5703491
+ ],
+ [
+ -123.4000812,
+ 49.570345
+ ],
+ [
+ -123.4010761,
+ 49.5933838
+ ],
+ [
+ -123.3760399,
+ 49.5932848
+ ],
+ [
+ -123.3769811,
+ 49.6756063
+ ],
+ [
+ -123.3507288,
+ 49.6756396
+ ],
+ [
+ -123.3507969,
+ 49.7086751
+ ],
+ [
+ -123.332887,
+ 49.708722
+ ],
+ [
+ -123.3327888,
+ 49.7256288
+ ],
+ [
+ -123.3007111,
+ 49.7255625
+ ],
+ [
+ -123.3009164,
+ 49.7375384
+ ],
+ [
+ -123.2885986,
+ 49.737638
+ ],
+ [
+ -123.2887823,
+ 49.8249207
+ ],
+ [
+ -123.2997955,
+ 49.8249207
+ ],
+ [
+ -123.3011721,
+ 49.8497814
+ ],
+ [
+ -123.3218218,
+ 49.850669
+ ],
+ [
+ -123.3273284,
+ 49.8577696
+ ],
+ [
+ -123.3276726,
+ 49.9758852
+ ],
+ [
+ -123.3008279,
+ 49.9752212
+ ],
+ [
+ -123.3007204,
+ 50.0997002
+ ],
+ [
+ -123.2501716,
+ 50.100735
+ ],
+ [
+ -123.25091,
+ 50.2754901
+ ],
+ [
+ -123.0224338,
+ 50.2755598
+ ],
+ [
+ -123.0224879,
+ 50.3254853
+ ],
+ [
+ -123.0009318,
+ 50.3254689
+ ],
+ [
+ -123.0007778,
+ 50.3423899
+ ],
+ [
+ -122.9775023,
+ 50.3423408
+ ],
+ [
+ -122.9774766,
+ 50.3504306
+ ],
+ [
+ -122.9508137,
+ 50.3504961
+ ],
+ [
+ -122.950795,
+ 50.3711984
+ ],
+ [
+ -122.9325221,
+ 50.3711521
+ ],
+ [
+ -122.9321048,
+ 50.399793
+ ],
+ [
+ -122.8874234,
+ 50.3999748
+ ],
+ [
+ -122.8873385,
+ 50.4256108
+ ],
+ [
+ -122.6620152,
+ 50.4256959
+ ],
+ [
+ -122.6623083,
+ 50.3994506
+ ],
+ [
+ -122.5990316,
+ 50.3992413
+ ],
+ [
+ -122.5988274,
+ 50.3755206
+ ],
+ [
+ -122.5724832,
+ 50.3753706
+ ],
+ [
+ -122.5735621,
+ 50.2493891
+ ],
+ [
+ -122.5990415,
+ 50.2494643
+ ],
+ [
+ -122.5991504,
+ 50.2265663
+ ],
+ [
+ -122.6185016,
+ 50.2266359
+ ],
+ [
+ -122.6185741,
+ 50.2244081
+ ],
+ [
+ -122.6490609,
+ 50.2245126
+ ],
+ [
+ -122.6492181,
+ 50.1993528
+ ],
+ [
+ -122.7308575,
+ 50.1993758
+ ],
+ [
+ -122.7311583,
+ 50.1244287
+ ],
+ [
+ -122.7490352,
+ 50.1245109
+ ],
+ [
+ -122.7490541,
+ 50.0903032
+ ],
+ [
+ -122.7687806,
+ 50.0903435
+ ],
+ [
+ -122.7689801,
+ 49.9494546
+ ],
+ [
+ -122.999047,
+ 49.9494706
+ ],
+ [
+ -122.9991199,
+ 49.8754553
+ ],
+ [
+ -122.9775894,
+ 49.8754553
+ ],
+ [
+ -122.9778145,
+ 49.6995098
+ ],
+ [
+ -122.9992362,
+ 49.6994781
+ ],
+ [
+ -122.9992524,
+ 49.6516526
+ ],
+ [
+ -123.0221525,
+ 49.6516526
+ ],
+ [
+ -123.0221162,
+ 49.5995096
+ ],
+ [
+ -123.0491898,
+ 49.5994625
+ ],
+ [
+ -123.0491898,
+ 49.5940523
+ ],
+ [
+ -123.0664647,
+ 49.5940405
+ ],
+ [
+ -123.0663594,
+ 49.5451868
+ ],
+ [
+ -123.0699906,
+ 49.5451202
+ ],
+ [
+ -123.0699008,
+ 49.5413153
+ ],
+ [
+ -123.0706835,
+ 49.5392837
+ ],
+ [
+ -123.0708888,
+ 49.5379931
+ ],
+ [
+ -123.0711454,
+ 49.5368773
+ ],
+ [
+ -123.0711069,
+ 49.5358115
+ ],
+ [
+ -123.0713764,
+ 49.532822
+ ],
+ [
+ -123.0716458,
+ 49.5321141
+ ],
+ [
+ -123.07171,
+ 49.5313896
+ ],
+ [
+ -123.0720308,
+ 49.5304153
+ ],
+ [
+ -123.0739554,
+ 49.5303486
+ ],
+ [
+ -123.0748023,
+ 49.5294992
+ ],
+ [
+ -123.0748151,
+ 49.5288079
+ ],
+ [
+ -123.0743403,
+ 49.5280584
+ ],
+ [
+ -123.073532,
+ 49.5274588
+ ],
+ [
+ -123.0733652,
+ 49.5270423
+ ],
+ [
+ -123.0732882,
+ 49.5255932
+ ],
+ [
+ -123.0737116,
+ 49.5249602
+ ],
+ [
+ -123.0736218,
+ 49.5244938
+ ],
+ [
+ -123.0992583,
+ 49.5244854
+ ],
+ [
+ -123.0991649,
+ 49.4754502
+ ],
+ [
+ -123.071052,
+ 49.4755252
+ ],
+ [
+ -123.071088,
+ 49.4663034
+ ],
+ [
+ -123.0739204,
+ 49.4663054
+ ],
+ [
+ -123.07422,
+ 49.4505028
+ ],
+ [
+ -123.0746319,
+ 49.4500858
+ ],
+ [
+ -123.074651,
+ 49.449329
+ ],
+ [
+ -123.0745999,
+ 49.449018
+ ],
+ [
+ -123.0744619,
+ 49.4486927
+ ],
+ [
+ -123.0743336,
+ 49.4479899
+ ],
+ [
+ -123.0742427,
+ 49.4477688
+ ],
+ [
+ -123.0743061,
+ 49.4447473
+ ],
+ [
+ -123.0747103,
+ 49.4447556
+ ],
+ [
+ -123.0746384,
+ 49.4377306
+ ],
+ [
+ -122.9996506,
+ 49.4377363
+ ],
+ [
+ -122.9996506,
+ 49.4369214
+ ],
+ [
+ -122.8606163,
+ 49.4415314
+ ],
+ [
+ -122.8102616,
+ 49.4423972
+ ],
+ [
+ -122.8098984,
+ 49.3766739
+ ],
+ [
+ -122.4036093,
+ 49.3766617
+ ],
+ [
+ -122.4036341,
+ 49.3771944
+ ],
+ [
+ -122.264739,
+ 49.3773028
+ ],
+ [
+ -122.263542,
+ 49.2360088
+ ],
+ [
+ -122.2155742,
+ 49.236139
+ ],
+ [
+ -122.0580956,
+ 49.235878
+ ],
+ [
+ -121.9538274,
+ 49.2966525
+ ],
+ [
+ -121.9400911,
+ 49.3045389
+ ],
+ [
+ -121.9235761,
+ 49.3142257
+ ],
+ [
+ -121.8990871,
+ 49.3225436
+ ],
+ [
+ -121.8883447,
+ 49.3259752
+ ],
+ [
+ -121.8552982,
+ 49.3363575
+ ],
+ [
+ -121.832697,
+ 49.3441519
+ ],
+ [
+ -121.7671336,
+ 49.3654361
+ ],
+ [
+ -121.6736683,
+ 49.3654589
+ ],
+ [
+ -121.6404153,
+ 49.3743775
+ ],
+ [
+ -121.5961976,
+ 49.3860493
+ ],
+ [
+ -121.5861178,
+ 49.3879193
+ ],
+ [
+ -121.5213684,
+ 49.3994649
+ ],
+ [
+ -121.5117375,
+ 49.4038378
+ ],
+ [
+ -121.4679302,
+ 49.4229024
+ ],
+ [
+ -121.4416803,
+ 49.4345607
+ ],
+ [
+ -121.422429,
+ 49.4345788
+ ],
+ [
+ -121.3462885,
+ 49.3932312
+ ],
+ [
+ -121.3480144,
+ 49.3412388
+ ],
+ [
+ -121.5135035,
+ 49.320577
+ ],
+ [
+ -121.6031683,
+ 49.2771727
+ ],
+ [
+ -121.6584065,
+ 49.1856125
+ ],
+ [
+ -121.679953,
+ 49.1654109
+ ],
+ [
+ -121.7815793,
+ 49.0702559
+ ],
+ [
+ -121.8076228,
+ 49.0622471
+ ],
+ [
+ -121.9393997,
+ 49.0636219
+ ],
+ [
+ -121.9725524,
+ 49.0424179
+ ],
+ [
+ -121.9921394,
+ 49.0332869
+ ],
+ [
+ -122.0035289,
+ 49.0273413
+ ],
+ [
+ -122.0178564,
+ 49.0241067
+ ],
+ [
+ -122.1108634,
+ 48.9992786
+ ],
+ [
+ -122.1493067,
+ 48.9995305
+ ],
+ [
+ -122.1492705,
+ 48.9991498
+ ],
+ [
+ -122.1991447,
+ 48.9996019
+ ],
+ [
+ -122.199181,
+ 48.9991974
+ ],
+ [
+ -122.234365,
+ 48.9994829
+ ],
+ [
+ -122.234365,
+ 49.000173
+ ],
+ [
+ -122.3994722,
+ 49.0012385
+ ],
+ [
+ -122.4521338,
+ 49.0016326
+ ],
+ [
+ -122.4521338,
+ 49.000883
+ ],
+ [
+ -122.4584089,
+ 49.0009306
+ ],
+ [
+ -122.4584814,
+ 48.9993124
+ ],
+ [
+ -122.4992458,
+ 48.9995022
+ ],
+ [
+ -122.4992458,
+ 48.9992906
+ ],
+ [
+ -122.5492618,
+ 48.9995107
+ ],
+ [
+ -122.5492564,
+ 48.9993206
+ ],
+ [
+ -122.6580785,
+ 48.9994212
+ ],
+ [
+ -122.6581061,
+ 48.9954007
+ ],
+ [
+ -122.7067604,
+ 48.9955344
+ ],
+ [
+ -122.7519761,
+ 48.9956392
+ ],
+ [
+ -122.7922063,
+ 48.9957204
+ ],
+ [
+ -122.7921907,
+ 48.9994331
+ ],
+ [
+ -123.0350417,
+ 48.9995724
+ ],
+ [
+ -123.0350437,
+ 49.0000958
+ ],
+ [
+ -123.0397091,
+ 49.0000536
+ ],
+ [
+ -123.0397444,
+ 49.0001812
+ ],
+ [
+ -123.0485506,
+ 49.0001348
+ ],
+ [
+ -123.0485329,
+ 49.0004712
+ ],
+ [
+ -123.0557122,
+ 49.000448
+ ],
+ [
+ -123.0556324,
+ 49.0002284
+ ],
+ [
+ -123.0641365,
+ 49.0001293
+ ],
+ [
+ -123.064158,
+ 48.9999421
+ ],
+ [
+ -123.074899,
+ 48.9996928
+ ],
+ [
+ -123.0750717,
+ 49.0006218
+ ],
+ [
+ -123.0899573,
+ 49.0003726
+ ],
+ [
+ -123.109229,
+ 48.9999421
+ ],
+ [
+ -123.1271193,
+ 49.0003046
+ ],
+ [
+ -123.1359953,
+ 48.9998741
+ ],
+ [
+ -123.1362716,
+ 49.0005765
+ ],
+ [
+ -123.153851,
+ 48.9998061
+ ],
+ [
+ -123.1540533,
+ 49.0006806
+ ],
+ [
+ -123.1710015,
+ 49.0001274
+ ],
+ [
+ -123.2000916,
+ 48.9996849
+ ],
+ [
+ -123.2003446,
+ 49.0497785
+ ],
+ [
+ -123.2108845,
+ 49.0497232
+ ],
+ [
+ -123.2112218,
+ 49.051989
+ ],
+ [
+ -123.2070479,
+ 49.0520857
+ ],
+ [
+ -123.2078911,
+ 49.0607884
+ ],
+ [
+ -123.2191688,
+ 49.0600978
+ ],
+ [
+ -123.218958,
+ 49.0612719
+ ],
+ [
+ -123.2251766,
+ 49.0612719
+ ],
+ [
+ -123.2253874,
+ 49.0622388
+ ],
+ [
+ -123.2297088,
+ 49.0620316
+ ],
+ [
+ -123.2298142,
+ 49.068592
+ ],
+ [
+ -123.2331869,
+ 49.0687301
+ ],
+ [
+ -123.2335031,
+ 49.0705945
+ ],
+ [
+ -123.249313,
+ 49.0702493
+ ],
+ [
+ -123.2497346,
+ 49.0802606
+ ],
+ [
+ -123.2751358,
+ 49.0803986
+ ],
+ [
+ -123.2751358,
+ 49.0870947
+ ],
+ [
+ -123.299483,
+ 49.0873018
+ ],
+ [
+ -123.29944,
+ 49.080253
+ ],
+ [
+ -123.3254508,
+ 49.0803944
+ ],
+ [
+ -123.3254353,
+ 49.1154662
+ ],
+ [
+ -123.2750966,
+ 49.1503341
+ ],
+ [
+ -123.275181,
+ 49.1873267
+ ],
+ [
+ -123.2788067,
+ 49.1871063
+ ],
+ [
+ -123.278891,
+ 49.1910741
+ ],
+ [
+ -123.3004767,
+ 49.1910741
+ ],
+ [
+ -123.3004186,
+ 49.2622933
+ ],
+ [
+ -123.3126185,
+ 49.2622416
+ ],
+ [
+ -123.3125958,
+ 49.2714948
+ ],
+ [
+ -123.3154251,
+ 49.2714727
+ ],
+ [
+ -123.3156628,
+ 49.2818906
+ ],
+ [
+ -123.3174735,
+ 49.2818832
+ ],
+ [
+ -123.3174961,
+ 49.2918488
+ ],
+ [
+ -123.3190353,
+ 49.2918488
+ ],
+ [
+ -123.3190692,
+ 49.298602
+ ],
+ [
+ -123.3202349,
+ 49.2985651
+ ],
+ [
+ -123.3202786,
+ 49.3019749
+ ],
+ [
+ -123.3222679,
+ 49.3019605
+ ],
+ [
+ -123.3223943,
+ 49.3118263
+ ],
+ [
+ -123.3254002,
+ 49.3118086
+ ],
+ [
+ -123.3253898,
+ 49.3201721
+ ],
+ [
+ -123.3192695,
+ 49.3201957
+ ],
+ [
+ -123.3192242,
+ 49.3246748
+ ],
+ [
+ -123.3179437,
+ 49.3246596
+ ],
+ [
+ -123.3179861,
+ 49.3254065
+ ]
+ ]
+ ],
+ "terms_url": "http://imagery.paulnorman.ca/tiles/about.html",
+ "terms_text": "Copyright Province of British Columbia, City of Surrey"
+ },
+ {
+ "name": "Cambodia, Laos, Thailand, Vietnam bilingual",
+ "type": "tms",
+ "template": "http://{switch:a,b,c,d}.tile.osm-tools.org/osm_then/{zoom}/{x}/{y}.png",
+ "scaleExtent": [
+ 0,
+ 19
+ ],
+ "polygon": [
+ [
+ [
+ 97.3,
+ 5.6
+ ],
+ [
+ 97.3,
+ 23.4
+ ],
+ [
+ 109.6,
+ 23.4
+ ],
+ [
+ 109.6,
+ 5.6
+ ],
+ [
+ 97.3,
+ 5.6
+ ]
+ ]
+ ],
+ "terms_url": "http://www.osm-tools.org/",
+ "terms_text": "© osm-tools.org & OpenStreetMap contributors, CC-BY-SA"
+ },
+ {
+ "name": "Freemap.sk Car",
+ "type": "tms",
+ "template": "http://t{switch:1,2,3,4}.freemap.sk/A/{zoom}/{x}/{y}.jpeg",
+ "scaleExtent": [
+ 8,
+ 16
+ ],
+ "polygon": [
+ [
+ [
+ 19.83682,
+ 49.25529
+ ],
+ [
+ 19.80075,
+ 49.42385
+ ],
+ [
+ 19.60437,
+ 49.48058
+ ],
+ [
+ 19.49179,
+ 49.63961
+ ],
+ [
+ 19.21831,
+ 49.52604
+ ],
+ [
+ 19.16778,
+ 49.42521
+ ],
+ [
+ 19.00308,
+ 49.42236
+ ],
+ [
+ 18.97611,
+ 49.5308
+ ],
+ [
+ 18.54685,
+ 49.51425
+ ],
+ [
+ 18.31432,
+ 49.33818
+ ],
+ [
+ 18.15913,
+ 49.2961
+ ],
+ [
+ 18.05564,
+ 49.11134
+ ],
+ [
+ 17.56396,
+ 48.84938
+ ],
+ [
+ 17.17929,
+ 48.88816
+ ],
+ [
+ 17.058,
+ 48.81105
+ ],
+ [
+ 16.90426,
+ 48.61947
+ ],
+ [
+ 16.79685,
+ 48.38561
+ ],
+ [
+ 17.06762,
+ 48.01116
+ ],
+ [
+ 17.32787,
+ 47.97749
+ ],
+ [
+ 17.51699,
+ 47.82535
+ ],
+ [
+ 17.74776,
+ 47.73093
+ ],
+ [
+ 18.29515,
+ 47.72075
+ ],
+ [
+ 18.67959,
+ 47.75541
+ ],
+ [
+ 18.89755,
+ 47.81203
+ ],
+ [
+ 18.79463,
+ 47.88245
+ ],
+ [
+ 18.84318,
+ 48.04046
+ ],
+ [
+ 19.46212,
+ 48.05333
+ ],
+ [
+ 19.62064,
+ 48.22938
+ ],
+ [
+ 19.89585,
+ 48.09387
+ ],
+ [
+ 20.33766,
+ 48.2643
+ ],
+ [
+ 20.55395,
+ 48.52358
+ ],
+ [
+ 20.82335,
+ 48.55714
+ ],
+ [
+ 21.10271,
+ 48.47096
+ ],
+ [
+ 21.45863,
+ 48.55513
+ ],
+ [
+ 21.74536,
+ 48.31435
+ ],
+ [
+ 22.15293,
+ 48.37179
+ ],
+ [
+ 22.61255,
+ 49.08914
+ ],
+ [
+ 22.09997,
+ 49.23814
+ ],
+ [
+ 21.9686,
+ 49.36363
+ ],
+ [
+ 21.6244,
+ 49.46989
+ ],
+ [
+ 21.06873,
+ 49.46402
+ ],
+ [
+ 20.94336,
+ 49.31088
+ ],
+ [
+ 20.73052,
+ 49.44006
+ ],
+ [
+ 20.22804,
+ 49.41714
+ ],
+ [
+ 20.05234,
+ 49.23052
+ ],
+ [
+ 19.83682,
+ 49.25529
+ ]
+ ]
+ ],
+ "terms_text": "Copyright ©2007-2012 Freemap Slovakia (www.freemap.sk). Some rights reserved."
+ },
+ {
+ "name": "Freemap.sk Cyclo",
+ "type": "tms",
+ "template": "http://t{switch:1,2,3,4}.freemap.sk/C/{zoom}/{x}/{y}.jpeg",
+ "scaleExtent": [
+ 8,
+ 16
+ ],
+ "polygon": [
+ [
+ [
+ 19.83682,
+ 49.25529
+ ],
+ [
+ 19.80075,
+ 49.42385
+ ],
+ [
+ 19.60437,
+ 49.48058
+ ],
+ [
+ 19.49179,
+ 49.63961
+ ],
+ [
+ 19.21831,
+ 49.52604
+ ],
+ [
+ 19.16778,
+ 49.42521
+ ],
+ [
+ 19.00308,
+ 49.42236
+ ],
+ [
+ 18.97611,
+ 49.5308
+ ],
+ [
+ 18.54685,
+ 49.51425
+ ],
+ [
+ 18.31432,
+ 49.33818
+ ],
+ [
+ 18.15913,
+ 49.2961
+ ],
+ [
+ 18.05564,
+ 49.11134
+ ],
+ [
+ 17.56396,
+ 48.84938
+ ],
+ [
+ 17.17929,
+ 48.88816
+ ],
+ [
+ 17.058,
+ 48.81105
+ ],
+ [
+ 16.90426,
+ 48.61947
+ ],
+ [
+ 16.79685,
+ 48.38561
+ ],
+ [
+ 17.06762,
+ 48.01116
+ ],
+ [
+ 17.32787,
+ 47.97749
+ ],
+ [
+ 17.51699,
+ 47.82535
+ ],
+ [
+ 17.74776,
+ 47.73093
+ ],
+ [
+ 18.29515,
+ 47.72075
+ ],
+ [
+ 18.67959,
+ 47.75541
+ ],
+ [
+ 18.89755,
+ 47.81203
+ ],
+ [
+ 18.79463,
+ 47.88245
+ ],
+ [
+ 18.84318,
+ 48.04046
+ ],
+ [
+ 19.46212,
+ 48.05333
+ ],
+ [
+ 19.62064,
+ 48.22938
+ ],
+ [
+ 19.89585,
+ 48.09387
+ ],
+ [
+ 20.33766,
+ 48.2643
+ ],
+ [
+ 20.55395,
+ 48.52358
+ ],
+ [
+ 20.82335,
+ 48.55714
+ ],
+ [
+ 21.10271,
+ 48.47096
+ ],
+ [
+ 21.45863,
+ 48.55513
+ ],
+ [
+ 21.74536,
+ 48.31435
+ ],
+ [
+ 22.15293,
+ 48.37179
+ ],
+ [
+ 22.61255,
+ 49.08914
+ ],
+ [
+ 22.09997,
+ 49.23814
+ ],
+ [
+ 21.9686,
+ 49.36363
+ ],
+ [
+ 21.6244,
+ 49.46989
+ ],
+ [
+ 21.06873,
+ 49.46402
+ ],
+ [
+ 20.94336,
+ 49.31088
+ ],
+ [
+ 20.73052,
+ 49.44006
+ ],
+ [
+ 20.22804,
+ 49.41714
+ ],
+ [
+ 20.05234,
+ 49.23052
+ ],
+ [
+ 19.83682,
+ 49.25529
+ ]
+ ]
+ ],
+ "terms_text": "Copyright ©2007-2012 Freemap Slovakia (www.freemap.sk). Some rights reserved."
+ },
+ {
+ "name": "Freemap.sk Hiking",
+ "type": "tms",
+ "template": "http://t{switch:1,2,3,4}.freemap.sk/T/{zoom}/{x}/{y}.jpeg",
+ "scaleExtent": [
+ 8,
+ 16
+ ],
+ "polygon": [
+ [
+ [
+ 19.83682,
+ 49.25529
+ ],
+ [
+ 19.80075,
+ 49.42385
+ ],
+ [
+ 19.60437,
+ 49.48058
+ ],
+ [
+ 19.49179,
+ 49.63961
+ ],
+ [
+ 19.21831,
+ 49.52604
+ ],
+ [
+ 19.16778,
+ 49.42521
+ ],
+ [
+ 19.00308,
+ 49.42236
+ ],
+ [
+ 18.97611,
+ 49.5308
+ ],
+ [
+ 18.54685,
+ 49.51425
+ ],
+ [
+ 18.31432,
+ 49.33818
+ ],
+ [
+ 18.15913,
+ 49.2961
+ ],
+ [
+ 18.05564,
+ 49.11134
+ ],
+ [
+ 17.56396,
+ 48.84938
+ ],
+ [
+ 17.17929,
+ 48.88816
+ ],
+ [
+ 17.058,
+ 48.81105
+ ],
+ [
+ 16.90426,
+ 48.61947
+ ],
+ [
+ 16.79685,
+ 48.38561
+ ],
+ [
+ 17.06762,
+ 48.01116
+ ],
+ [
+ 17.32787,
+ 47.97749
+ ],
+ [
+ 17.51699,
+ 47.82535
+ ],
+ [
+ 17.74776,
+ 47.73093
+ ],
+ [
+ 18.29515,
+ 47.72075
+ ],
+ [
+ 18.67959,
+ 47.75541
+ ],
+ [
+ 18.89755,
+ 47.81203
+ ],
+ [
+ 18.79463,
+ 47.88245
+ ],
+ [
+ 18.84318,
+ 48.04046
+ ],
+ [
+ 19.46212,
+ 48.05333
+ ],
+ [
+ 19.62064,
+ 48.22938
+ ],
+ [
+ 19.89585,
+ 48.09387
+ ],
+ [
+ 20.33766,
+ 48.2643
+ ],
+ [
+ 20.55395,
+ 48.52358
+ ],
+ [
+ 20.82335,
+ 48.55714
+ ],
+ [
+ 21.10271,
+ 48.47096
+ ],
+ [
+ 21.45863,
+ 48.55513
+ ],
+ [
+ 21.74536,
+ 48.31435
+ ],
+ [
+ 22.15293,
+ 48.37179
+ ],
+ [
+ 22.61255,
+ 49.08914
+ ],
+ [
+ 22.09997,
+ 49.23814
+ ],
+ [
+ 21.9686,
+ 49.36363
+ ],
+ [
+ 21.6244,
+ 49.46989
+ ],
+ [
+ 21.06873,
+ 49.46402
+ ],
+ [
+ 20.94336,
+ 49.31088
+ ],
+ [
+ 20.73052,
+ 49.44006
+ ],
+ [
+ 20.22804,
+ 49.41714
+ ],
+ [
+ 20.05234,
+ 49.23052
+ ],
+ [
+ 19.83682,
+ 49.25529
+ ]
+ ]
+ ],
+ "terms_text": "Copyright ©2007-2012 Freemap Slovakia (www.freemap.sk). Some rights reserved."
+ },
+ {
+ "name": "Freemap.sk Ski",
+ "type": "tms",
+ "template": "http://t{switch:1,2,3,4}.freemap.sk/K/{zoom}/{x}/{y}.jpeg",
+ "scaleExtent": [
+ 8,
+ 16
+ ],
+ "polygon": [
+ [
+ [
+ 19.83682,
+ 49.25529
+ ],
+ [
+ 19.80075,
+ 49.42385
+ ],
+ [
+ 19.60437,
+ 49.48058
+ ],
+ [
+ 19.49179,
+ 49.63961
+ ],
+ [
+ 19.21831,
+ 49.52604
+ ],
+ [
+ 19.16778,
+ 49.42521
+ ],
+ [
+ 19.00308,
+ 49.42236
+ ],
+ [
+ 18.97611,
+ 49.5308
+ ],
+ [
+ 18.54685,
+ 49.51425
+ ],
+ [
+ 18.31432,
+ 49.33818
+ ],
+ [
+ 18.15913,
+ 49.2961
+ ],
+ [
+ 18.05564,
+ 49.11134
+ ],
+ [
+ 17.56396,
+ 48.84938
+ ],
+ [
+ 17.17929,
+ 48.88816
+ ],
+ [
+ 17.058,
+ 48.81105
+ ],
+ [
+ 16.90426,
+ 48.61947
+ ],
+ [
+ 16.79685,
+ 48.38561
+ ],
+ [
+ 17.06762,
+ 48.01116
+ ],
+ [
+ 17.32787,
+ 47.97749
+ ],
+ [
+ 17.51699,
+ 47.82535
+ ],
+ [
+ 17.74776,
+ 47.73093
+ ],
+ [
+ 18.29515,
+ 47.72075
+ ],
+ [
+ 18.67959,
+ 47.75541
+ ],
+ [
+ 18.89755,
+ 47.81203
+ ],
+ [
+ 18.79463,
+ 47.88245
+ ],
+ [
+ 18.84318,
+ 48.04046
+ ],
+ [
+ 19.46212,
+ 48.05333
+ ],
+ [
+ 19.62064,
+ 48.22938
+ ],
+ [
+ 19.89585,
+ 48.09387
+ ],
+ [
+ 20.33766,
+ 48.2643
+ ],
+ [
+ 20.55395,
+ 48.52358
+ ],
+ [
+ 20.82335,
+ 48.55714
+ ],
+ [
+ 21.10271,
+ 48.47096
+ ],
+ [
+ 21.45863,
+ 48.55513
+ ],
+ [
+ 21.74536,
+ 48.31435
+ ],
+ [
+ 22.15293,
+ 48.37179
+ ],
+ [
+ 22.61255,
+ 49.08914
+ ],
+ [
+ 22.09997,
+ 49.23814
+ ],
+ [
+ 21.9686,
+ 49.36363
+ ],
+ [
+ 21.6244,
+ 49.46989
+ ],
+ [
+ 21.06873,
+ 49.46402
+ ],
+ [
+ 20.94336,
+ 49.31088
+ ],
+ [
+ 20.73052,
+ 49.44006
+ ],
+ [
+ 20.22804,
+ 49.41714
+ ],
+ [
+ 20.05234,
+ 49.23052
+ ],
+ [
+ 19.83682,
+ 49.25529
+ ]
+ ]
+ ],
+ "terms_text": "Copyright ©2007-2012 Freemap Slovakia (www.freemap.sk). Some rights reserved."
+ },
+ {
+ "name": "Fugro (Denmark)",
+ "type": "tms",
+ "template": "http://{switch:a,b,c}.tile.openstreetmap.dk/fugro2005/{zoom}/{x}/{y}.png",
+ "scaleExtent": [
+ 0,
+ 19
+ ],
+ "polygon": [
+ [
+ [
+ 8.3743941,
+ 54.9551655
+ ],
+ [
+ 8.3683809,
+ 55.4042149
+ ],
+ [
+ 8.2103997,
+ 55.4039795
+ ],
+ [
+ 8.2087314,
+ 55.4937345
+ ],
+ [
+ 8.0502655,
+ 55.4924731
+ ],
+ [
+ 8.0185123,
+ 56.7501399
+ ],
+ [
+ 8.1819161,
+ 56.7509948
+ ],
+ [
+ 8.1763274,
+ 57.0208898
+ ],
+ [
+ 8.3413329,
+ 57.0219872
+ ],
+ [
+ 8.3392467,
+ 57.1119574
+ ],
+ [
+ 8.5054433,
+ 57.1123212
+ ],
+ [
+ 8.5033923,
+ 57.2020499
+ ],
+ [
+ 9.3316304,
+ 57.2027636
+ ],
+ [
+ 9.3319079,
+ 57.2924835
+ ],
+ [
+ 9.4978864,
+ 57.2919578
+ ],
+ [
+ 9.4988593,
+ 57.3820608
+ ],
+ [
+ 9.6649749,
+ 57.3811615
+ ],
+ [
+ 9.6687295,
+ 57.5605591
+ ],
+ [
+ 9.8351961,
+ 57.5596265
+ ],
+ [
+ 9.8374896,
+ 57.6493322
+ ],
+ [
+ 10.1725726,
+ 57.6462818
+ ],
+ [
+ 10.1754245,
+ 57.7367768
+ ],
+ [
+ 10.5118282,
+ 57.7330269
+ ],
+ [
+ 10.5152095,
+ 57.8228945
+ ],
+ [
+ 10.6834853,
+ 57.8207722
+ ],
+ [
+ 10.6751613,
+ 57.6412021
+ ],
+ [
+ 10.5077045,
+ 57.6433097
+ ],
+ [
+ 10.5039992,
+ 57.5535088
+ ],
+ [
+ 10.671038,
+ 57.5514113
+ ],
+ [
+ 10.6507805,
+ 57.1024538
+ ],
+ [
+ 10.4857673,
+ 57.1045138
+ ],
+ [
+ 10.4786236,
+ 56.9249051
+ ],
+ [
+ 10.3143981,
+ 56.9267573
+ ],
+ [
+ 10.3112341,
+ 56.8369269
+ ],
+ [
+ 10.4750295,
+ 56.83509
+ ],
+ [
+ 10.4649016,
+ 56.5656681
+ ],
+ [
+ 10.9524239,
+ 56.5589761
+ ],
+ [
+ 10.9479249,
+ 56.4692243
+ ],
+ [
+ 11.1099335,
+ 56.4664675
+ ],
+ [
+ 11.1052639,
+ 56.376833
+ ],
+ [
+ 10.9429901,
+ 56.3795284
+ ],
+ [
+ 10.9341235,
+ 56.1994768
+ ],
+ [
+ 10.7719685,
+ 56.2020244
+ ],
+ [
+ 10.7694751,
+ 56.1120103
+ ],
+ [
+ 10.6079695,
+ 56.1150259
+ ],
+ [
+ 10.4466742,
+ 56.116717
+ ],
+ [
+ 10.2865948,
+ 56.118675
+ ],
+ [
+ 10.2831527,
+ 56.0281851
+ ],
+ [
+ 10.4439274,
+ 56.0270388
+ ],
+ [
+ 10.4417713,
+ 55.7579243
+ ],
+ [
+ 10.4334961,
+ 55.6693533
+ ],
+ [
+ 10.743814,
+ 55.6646861
+ ],
+ [
+ 10.743814,
+ 55.5712253
+ ],
+ [
+ 10.8969041,
+ 55.5712253
+ ],
+ [
+ 10.9051793,
+ 55.3953852
+ ],
+ [
+ 11.0613726,
+ 55.3812841
+ ],
+ [
+ 11.0593038,
+ 55.1124061
+ ],
+ [
+ 11.0458567,
+ 55.0318621
+ ],
+ [
+ 11.2030844,
+ 55.0247474
+ ],
+ [
+ 11.2030844,
+ 55.117139
+ ],
+ [
+ 11.0593038,
+ 55.1124061
+ ],
+ [
+ 11.0613726,
+ 55.3812841
+ ],
+ [
+ 11.0789572,
+ 55.5712253
+ ],
+ [
+ 10.8969041,
+ 55.5712253
+ ],
+ [
+ 10.9258671,
+ 55.6670198
+ ],
+ [
+ 10.743814,
+ 55.6646861
+ ],
+ [
+ 10.7562267,
+ 55.7579243
+ ],
+ [
+ 10.4417713,
+ 55.7579243
+ ],
+ [
+ 10.4439274,
+ 56.0270388
+ ],
+ [
+ 10.4466742,
+ 56.116717
+ ],
+ [
+ 10.6079695,
+ 56.1150259
+ ],
+ [
+ 10.6052053,
+ 56.0247462
+ ],
+ [
+ 10.9258671,
+ 56.0201215
+ ],
+ [
+ 10.9197132,
+ 55.9309388
+ ],
+ [
+ 11.0802782,
+ 55.92792
+ ],
+ [
+ 11.0858066,
+ 56.0178284
+ ],
+ [
+ 11.7265047,
+ 56.005058
+ ],
+ [
+ 11.7319981,
+ 56.0952142
+ ],
+ [
+ 12.0540333,
+ 56.0871256
+ ],
+ [
+ 12.0608477,
+ 56.1762576
+ ],
+ [
+ 12.7023469,
+ 56.1594405
+ ],
+ [
+ 12.6611131,
+ 55.7114318
+ ],
+ [
+ 12.9792318,
+ 55.7014026
+ ],
+ [
+ 12.9612912,
+ 55.5217294
+ ],
+ [
+ 12.3268659,
+ 55.5412096
+ ],
+ [
+ 12.3206071,
+ 55.4513655
+ ],
+ [
+ 12.4778226,
+ 55.447067
+ ],
+ [
+ 12.4702432,
+ 55.3570479
+ ],
+ [
+ 12.6269738,
+ 55.3523837
+ ],
+ [
+ 12.6200898,
+ 55.2632576
+ ],
+ [
+ 12.4627339,
+ 55.26722
+ ],
+ [
+ 12.4552949,
+ 55.1778223
+ ],
+ [
+ 12.2987046,
+ 55.1822303
+ ],
+ [
+ 12.2897344,
+ 55.0923641
+ ],
+ [
+ 12.6048608,
+ 55.0832904
+ ],
+ [
+ 12.5872011,
+ 54.9036285
+ ],
+ [
+ 12.2766618,
+ 54.9119031
+ ],
+ [
+ 12.2610181,
+ 54.7331602
+ ],
+ [
+ 12.1070691,
+ 54.7378161
+ ],
+ [
+ 12.0858621,
+ 54.4681655
+ ],
+ [
+ 11.7794953,
+ 54.4753579
+ ],
+ [
+ 11.7837381,
+ 54.5654783
+ ],
+ [
+ 11.1658525,
+ 54.5782155
+ ],
+ [
+ 11.1706443,
+ 54.6686508
+ ],
+ [
+ 10.8617173,
+ 54.6733956
+ ],
+ [
+ 10.8651245,
+ 54.7634667
+ ],
+ [
+ 10.7713646,
+ 54.7643888
+ ],
+ [
+ 10.7707276,
+ 54.7372807
+ ],
+ [
+ 10.7551428,
+ 54.7375776
+ ],
+ [
+ 10.7544039,
+ 54.7195666
+ ],
+ [
+ 10.7389074,
+ 54.7197588
+ ],
+ [
+ 10.7384368,
+ 54.7108482
+ ],
+ [
+ 10.7074486,
+ 54.7113045
+ ],
+ [
+ 10.7041094,
+ 54.6756741
+ ],
+ [
+ 10.5510973,
+ 54.6781698
+ ],
+ [
+ 10.5547184,
+ 54.7670245
+ ],
+ [
+ 10.2423994,
+ 54.7705935
+ ],
+ [
+ 10.2459845,
+ 54.8604673
+ ],
+ [
+ 10.0902268,
+ 54.8622134
+ ],
+ [
+ 10.0873731,
+ 54.7723851
+ ],
+ [
+ 9.1555798,
+ 54.7769557
+ ],
+ [
+ 9.1562752,
+ 54.8675369
+ ],
+ [
+ 8.5321973,
+ 54.8663765
+ ],
+ [
+ 8.531432,
+ 54.95516
+ ]
+ ],
+ [
+ [
+ 11.4577738,
+ 56.819554
+ ],
+ [
+ 11.7849181,
+ 56.8127385
+ ],
+ [
+ 11.7716715,
+ 56.6332796
+ ],
+ [
+ 11.4459621,
+ 56.6401087
+ ]
+ ],
+ [
+ [
+ 11.3274736,
+ 57.3612962
+ ],
+ [
+ 11.3161808,
+ 57.1818004
+ ],
+ [
+ 11.1508692,
+ 57.1847276
+ ],
+ [
+ 11.1456628,
+ 57.094962
+ ],
+ [
+ 10.8157703,
+ 57.1001693
+ ],
+ [
+ 10.8290599,
+ 57.3695272
+ ]
+ ],
+ [
+ [
+ 11.5843266,
+ 56.2777928
+ ],
+ [
+ 11.5782882,
+ 56.1880397
+ ],
+ [
+ 11.7392309,
+ 56.1845765
+ ],
+ [
+ 11.7456428,
+ 56.2743186
+ ]
+ ],
+ [
+ [
+ 14.6825922,
+ 55.3639405
+ ],
+ [
+ 14.8395247,
+ 55.3565231
+ ],
+ [
+ 14.8263755,
+ 55.2671261
+ ],
+ [
+ 15.1393406,
+ 55.2517359
+ ],
+ [
+ 15.1532015,
+ 55.3410836
+ ],
+ [
+ 15.309925,
+ 55.3330556
+ ],
+ [
+ 15.295719,
+ 55.2437356
+ ],
+ [
+ 15.1393406,
+ 55.2517359
+ ],
+ [
+ 15.1255631,
+ 55.1623802
+ ],
+ [
+ 15.2815819,
+ 55.1544167
+ ],
+ [
+ 15.2535578,
+ 54.9757646
+ ],
+ [
+ 14.6317464,
+ 55.0062496
+ ]
+ ]
+ ],
+ "terms_url": "http://wiki.openstreetmap.org/wiki/Fugro",
+ "terms_text": "Fugro Aerial Mapping"
+ },
+ {
+ "name": "Imagerie Drone (Haiti)",
+ "type": "tms",
+ "template": "http://wms.openstreetmap.fr/tms/1.0.0/iomhaiti/{zoom}/{x}/{y}",
+ "polygon": [
+ [
+ [
+ -72.1547401,
+ 19.6878969
+ ],
+ [
+ -72.162234,
+ 19.689011
+ ],
+ [
+ -72.164995,
+ 19.6932445
+ ],
+ [
+ -72.1657838,
+ 19.6979977
+ ],
+ [
+ -72.161603,
+ 19.7035677
+ ],
+ [
+ -72.1487449,
+ 19.7028993
+ ],
+ [
+ -72.1477194,
+ 19.7026765
+ ],
+ [
+ -72.1485082,
+ 19.7001514
+ ],
+ [
+ -72.1436963,
+ 19.7011169
+ ],
+ [
+ -72.1410143,
+ 19.7000029
+ ],
+ [
+ -72.139476,
+ 19.6973664
+ ],
+ [
+ -72.1382533,
+ 19.6927617
+ ],
+ [
+ -72.1386872,
+ 19.6923161
+ ],
+ [
+ -72.1380561,
+ 19.6896423
+ ],
+ [
+ -72.1385294,
+ 19.6894938
+ ],
+ [
+ -72.1388055,
+ 19.6901251
+ ],
+ [
+ -72.1388844,
+ 19.6876741
+ ],
+ [
+ -72.1378195,
+ 19.6872656
+ ],
+ [
+ -72.13778,
+ 19.6850003
+ ],
+ [
+ -72.1369517,
+ 19.6855945
+ ],
+ [
+ -72.136794,
+ 19.6840719
+ ],
+ [
+ -72.135729,
+ 19.6835148
+ ],
+ [
+ -72.1355713,
+ 19.6740817
+ ],
+ [
+ -72.1366362,
+ 19.6708133
+ ],
+ [
+ -72.1487843,
+ 19.6710733
+ ],
+ [
+ -72.1534779,
+ 19.6763843
+ ],
+ [
+ -72.1530835,
+ 19.6769414
+ ],
+ [
+ -72.1533251,
+ 19.6769768
+ ],
+ [
+ -72.1532807,
+ 19.6796525
+ ],
+ [
+ -72.1523834,
+ 19.6797175
+ ],
+ [
+ -72.1522749,
+ 19.6803488
+ ],
+ [
+ -72.1519101,
+ 19.6803395
+ ],
+ [
+ -72.1518608,
+ 19.6805067
+ ],
+ [
+ -72.1528173,
+ 19.6806552
+ ],
+ [
+ -72.1522299,
+ 19.6833011
+ ],
+ [
+ -72.1507801,
+ 19.6831499
+ ],
+ [
+ -72.1504457,
+ 19.6847862
+ ],
+ [
+ -72.1508591,
+ 19.6843492
+ ],
+ [
+ -72.1530087,
+ 19.6849898
+ ],
+ [
+ -72.1546258,
+ 19.6854354
+ ],
+ [
+ -72.1543103,
+ 19.6870694
+ ],
+ [
+ -72.1547244,
+ 19.6868466
+ ],
+ [
+ -72.1548501,
+ 19.6877564
+ ],
+ [
+ -72.1545814,
+ 19.6877982
+ ]
+ ],
+ [
+ [
+ -72.1310601,
+ 19.6718929
+ ],
+ [
+ -72.1259842,
+ 19.6772765
+ ],
+ [
+ -72.1255379,
+ 19.6776179
+ ],
+ [
+ -72.1216891,
+ 19.6776442
+ ],
+ [
+ -72.1149677,
+ 19.672602
+ ],
+ [
+ -72.1152745,
+ 19.6687152
+ ],
+ [
+ -72.1198205,
+ 19.6627535
+ ],
+ [
+ -72.1227768,
+ 19.6625696
+ ],
+ [
+ -72.1248965,
+ 19.662701
+ ],
+ [
+ -72.1285779,
+ 19.6645394
+ ],
+ [
+ -72.1308091,
+ 19.6661677
+ ],
+ [
+ -72.1316737,
+ 19.668794
+ ],
+ [
+ -72.1315621,
+ 19.671
+ ]
+ ],
+ [
+ [
+ -71.845795,
+ 19.6709758
+ ],
+ [
+ -71.8429354,
+ 19.6759525
+ ],
+ [
+ -71.8410027,
+ 19.6759525
+ ],
+ [
+ -71.8380249,
+ 19.6755254
+ ],
+ [
+ -71.8378671,
+ 19.6745041
+ ],
+ [
+ -71.8390504,
+ 19.6743927
+ ],
+ [
+ -71.8390109,
+ 19.6741141
+ ],
+ [
+ -71.8398392,
+ 19.673947
+ ],
+ [
+ -71.8389123,
+ 19.6736127
+ ],
+ [
+ -71.8380249,
+ 19.67209
+ ],
+ [
+ -71.8380052,
+ 19.6726285
+ ],
+ [
+ -71.8376699,
+ 19.6727214
+ ],
+ [
+ -71.8376305,
+ 19.672545
+ ],
+ [
+ -71.8354414,
+ 19.6732135
+ ],
+ [
+ -71.835333,
+ 19.6729999
+ ],
+ [
+ -71.8331242,
+ 19.6734642
+ ],
+ [
+ -71.8326706,
+ 19.6716815
+ ],
+ [
+ -71.8321579,
+ 19.67209
+ ],
+ [
+ -71.8307183,
+ 19.6694902
+ ],
+ [
+ -71.8306009,
+ 19.6697594
+ ],
+ [
+ -71.8302174,
+ 19.6698907
+ ],
+ [
+ -71.8291833,
+ 19.6672095
+ ],
+ [
+ -71.8290749,
+ 19.6672095
+ ],
+ [
+ -71.8289122,
+ 19.6667916
+ ],
+ [
+ -71.8289516,
+ 19.6666199
+ ],
+ [
+ -71.8288333,
+ 19.6663506
+ ],
+ [
+ -71.8285572,
+ 19.6664759
+ ],
+ [
+ -71.8288678,
+ 19.6672466
+ ],
+ [
+ -71.8287593,
+ 19.6674138
+ ],
+ [
+ -71.8277979,
+ 19.6678177
+ ],
+ [
+ -71.8277112,
+ 19.6678586
+ ],
+ [
+ -71.8278263,
+ 19.6679637
+ ],
+ [
+ -71.8271831,
+ 19.6681212
+ ],
+ [
+ -71.8271761,
+ 19.6680917
+ ],
+ [
+ -71.8264405,
+ 19.6683921
+ ],
+ [
+ -71.8264074,
+ 19.6683231
+ ],
+ [
+ -71.8261954,
+ 19.6684253
+ ],
+ [
+ -71.8261806,
+ 19.6683556
+ ],
+ [
+ -71.8258946,
+ 19.6684206
+ ],
+ [
+ -71.8258897,
+ 19.6686574
+ ],
+ [
+ -71.8251551,
+ 19.6687549
+ ],
+ [
+ -71.8254509,
+ 19.6691588
+ ],
+ [
+ -71.8229332,
+ 19.6695739
+ ],
+ [
+ -71.822713,
+ 19.6696658
+ ],
+ [
+ -71.8227688,
+ 19.6697577
+ ],
+ [
+ -71.8201751,
+ 19.6709855
+ ],
+ [
+ -71.8198474,
+ 19.6704537
+ ],
+ [
+ -71.8197985,
+ 19.6706014
+ ],
+ [
+ -71.8194674,
+ 19.6707557
+ ],
+ [
+ -71.8182472,
+ 19.6713433
+ ],
+ [
+ -71.8181426,
+ 19.6711431
+ ],
+ [
+ -71.8175813,
+ 19.6714254
+ ],
+ [
+ -71.816959,
+ 19.6707672
+ ],
+ [
+ -71.8176388,
+ 19.6718965
+ ],
+ [
+ -71.8171403,
+ 19.6720376
+ ],
+ [
+ -71.8158225,
+ 19.6718045
+ ],
+ [
+ -71.8138354,
+ 19.6711874
+ ],
+ [
+ -71.8123259,
+ 19.6706982
+ ],
+ [
+ -71.8121759,
+ 19.6704258
+ ],
+ [
+ -71.8124304,
+ 19.6701467
+ ],
+ [
+ -71.8119184,
+ 19.6700141
+ ],
+ [
+ -71.8118765,
+ 19.6705828
+ ],
+ [
+ -71.811169,
+ 19.6703483
+ ],
+ [
+ -71.8095938,
+ 19.6698516
+ ],
+ [
+ -71.8077992,
+ 19.6692829
+ ],
+ [
+ -71.8056028,
+ 19.668612
+ ],
+ [
+ -71.8051443,
+ 19.6668942
+ ],
+ [
+ -71.8051196,
+ 19.6652322
+ ],
+ [
+ -71.8052315,
+ 19.661979
+ ],
+ [
+ -71.8065603,
+ 19.6523921
+ ],
+ [
+ -71.8073412,
+ 19.6482946
+ ],
+ [
+ -71.8099686,
+ 19.6468292
+ ],
+ [
+ -71.8147517,
+ 19.6454502
+ ],
+ [
+ -71.8147726,
+ 19.6455619
+ ],
+ [
+ -71.8150027,
+ 19.6455093
+ ],
+ [
+ -71.8149469,
+ 19.6453846
+ ],
+ [
+ -71.8159928,
+ 19.6450234
+ ],
+ [
+ -71.8158882,
+ 19.6448855
+ ],
+ [
+ -71.8165854,
+ 19.6446097
+ ],
+ [
+ -71.8190119,
+ 19.643802
+ ],
+ [
+ -71.8211524,
+ 19.643454
+ ],
+ [
+ -71.8221564,
+ 19.6433292
+ ],
+ [
+ -71.8269046,
+ 19.643211
+ ],
+ [
+ -71.8280481,
+ 19.6432241
+ ],
+ [
+ -71.8304466,
+ 19.6440778
+ ],
+ [
+ -71.8306419,
+ 19.6448592
+ ],
+ [
+ -71.8295263,
+ 19.6450365
+ ],
+ [
+ -71.8296064,
+ 19.6456111
+ ],
+ [
+ -71.8299411,
+ 19.6455651
+ ],
+ [
+ -71.8303699,
+ 19.6451744
+ ],
+ [
+ -71.830471,
+ 19.6453452
+ ],
+ [
+ -71.8308092,
+ 19.6451974
+ ],
+ [
+ -71.8310184,
+ 19.6451088
+ ],
+ [
+ -71.8312519,
+ 19.6458541
+ ],
+ [
+ -71.8311125,
+ 19.6458245
+ ],
+ [
+ -71.831367,
+ 19.6465862
+ ],
+ [
+ -71.8328939,
+ 19.646189
+ ],
+ [
+ -71.8344566,
+ 19.6457062
+ ],
+ [
+ -71.8344664,
+ 19.6463052
+ ],
+ [
+ -71.834215,
+ 19.6461938
+ ],
+ [
+ -71.8342002,
+ 19.6465513
+ ],
+ [
+ -71.8346702,
+ 19.6463
+ ],
+ [
+ -71.8349118,
+ 19.6463905
+ ],
+ [
+ -71.8347984,
+ 19.6462187
+ ],
+ [
+ -71.8354393,
+ 19.6458496
+ ],
+ [
+ -71.8355034,
+ 19.6458032
+ ],
+ [
+ -71.8364747,
+ 19.6461328
+ ],
+ [
+ -71.8376382,
+ 19.6472658
+ ],
+ [
+ -71.8379143,
+ 19.647888
+ ],
+ [
+ -71.8390483,
+ 19.6508039
+ ],
+ [
+ -71.8456942,
+ 19.6696203
+ ]
+ ],
+ [
+ [
+ -72.098878,
+ 18.54843
+ ],
+ [
+ -72.096993,
+ 18.5501994
+ ],
+ [
+ -72.0972888,
+ 18.5503209
+ ],
+ [
+ -72.0968451,
+ 18.5503489
+ ],
+ [
+ -72.0955632,
+ 18.551854
+ ],
+ [
+ -72.0956428,
+ 18.5526742
+ ],
+ [
+ -72.0959914,
+ 18.5533748
+ ],
+ [
+ -72.0962145,
+ 18.553203
+ ],
+ [
+ -72.0962842,
+ 18.5535665
+ ],
+ [
+ -72.0964446,
+ 18.5535533
+ ],
+ [
+ -72.0965352,
+ 18.5539764
+ ],
+ [
+ -72.0965056,
+ 18.554173
+ ],
+ [
+ -72.0966085,
+ 18.5541747
+ ],
+ [
+ -72.0965178,
+ 18.5542127
+ ],
+ [
+ -72.0968769,
+ 18.5546588
+ ],
+ [
+ -72.0979018,
+ 18.5552141
+ ],
+ [
+ -72.1006211,
+ 18.5555875
+ ],
+ [
+ -72.1014926,
+ 18.5556206
+ ],
+ [
+ -72.1024339,
+ 18.5555016
+ ],
+ [
+ -72.103417,
+ 18.5543515
+ ],
+ [
+ -72.1034798,
+ 18.5516215
+ ],
+ [
+ -72.1030789,
+ 18.5516149
+ ],
+ [
+ -72.1033752,
+ 18.5515224
+ ],
+ [
+ -72.1035042,
+ 18.5515224
+ ],
+ [
+ -72.1035239,
+ 18.5502417
+ ],
+ [
+ -72.1028701,
+ 18.5503062
+ ],
+ [
+ -72.1029015,
+ 18.55025
+ ],
+ [
+ -72.1028457,
+ 18.5501773
+ ],
+ [
+ -72.1035081,
+ 18.5500252
+ ],
+ [
+ -72.103491,
+ 18.5497396
+ ],
+ [
+ -72.1035181,
+ 18.5497361
+ ],
+ [
+ -72.1035398,
+ 18.5489039
+ ],
+ [
+ -72.1034317,
+ 18.5487056
+ ],
+ [
+ -72.102717,
+ 18.5481437
+ ],
+ [
+ -72.1025601,
+ 18.5481536
+ ],
+ [
+ -72.10229,
+ 18.5482751
+ ],
+ [
+ -72.1022891,
+ 18.5482569
+ ],
+ [
+ -72.1025201,
+ 18.5481396
+ ],
+ [
+ -72.1023388,
+ 18.5481321
+ ],
+ [
+ -72.0999082,
+ 18.5480901
+ ],
+ [
+ -72.09907,
+ 18.5483799
+ ]
+ ],
+ [
+ [
+ -72.2542503,
+ 18.568262
+ ],
+ [
+ -72.2560252,
+ 18.5717765
+ ],
+ [
+ -72.2557886,
+ 18.5748049
+ ],
+ [
+ -72.2535009,
+ 18.5755526
+ ],
+ [
+ -72.2522782,
+ 18.5755526
+ ],
+ [
+ -72.2499906,
+ 18.5740945
+ ],
+ [
+ -72.2473874,
+ 18.5698323
+ ],
+ [
+ -72.2460069,
+ 18.566729
+ ],
+ [
+ -72.2458492,
+ 18.5629527
+ ],
+ [
+ -72.2479396,
+ 18.5625414
+ ],
+ [
+ -72.2501483,
+ 18.5628031
+ ],
+ [
+ -72.2519232,
+ 18.5650839
+ ]
+ ],
+ [
+ [
+ -72.303145,
+ 18.5332749
+ ],
+ [
+ -72.3031275,
+ 18.5331799
+ ],
+ [
+ -72.3048311,
+ 18.5311081
+ ],
+ [
+ -72.3097397,
+ 18.5311081
+ ],
+ [
+ -72.3164332,
+ 18.5324302
+ ],
+ [
+ -72.3234056,
+ 18.5366083
+ ],
+ [
+ -72.3261388,
+ 18.5387765
+ ],
+ [
+ -72.3261946,
+ 18.5426371
+ ],
+ [
+ -72.3170468,
+ 18.5540596
+ ],
+ [
+ -72.3130864,
+ 18.5540596
+ ],
+ [
+ -72.2987511,
+ 18.5453342
+ ],
+ [
+ -72.2988627,
+ 18.5407333
+ ],
+ [
+ -72.2962969,
+ 18.5404689
+ ],
+ [
+ -72.2954602,
+ 18.5395169
+ ],
+ [
+ -72.2961853,
+ 18.5338582
+ ],
+ [
+ -72.2971893,
+ 18.5332235
+ ],
+ [
+ -72.3007034,
+ 18.5332764
+ ],
+ [
+ -72.3022652,
+ 18.5342284
+ ],
+ [
+ -72.3028486,
+ 18.5335189
+ ],
+ [
+ -72.303104,
+ 18.5333361
+ ],
+ [
+ -72.303181,
+ 18.5334007
+ ],
+ [
+ -72.3035793,
+ 18.5335614
+ ],
+ [
+ -72.3030793,
+ 18.5346463
+ ],
+ [
+ -72.303715,
+ 18.5339873
+ ],
+ [
+ -72.3045286,
+ 18.5344052
+ ],
+ [
+ -72.3044015,
+ 18.5345097
+ ],
+ [
+ -72.3062747,
+ 18.5352571
+ ],
+ [
+ -72.3063107,
+ 18.5352741
+ ],
+ [
+ -72.3061219,
+ 18.5357628
+ ],
+ [
+ -72.3061219,
+ 18.5358196
+ ],
+ [
+ -72.30637,
+ 18.5358928
+ ],
+ [
+ -72.3062726,
+ 18.5354869
+ ],
+ [
+ -72.3066688,
+ 18.5350891
+ ],
+ [
+ -72.3061963,
+ 18.5349706
+ ],
+ [
+ -72.3058869,
+ 18.5349385
+ ],
+ [
+ -72.3055373,
+ 18.5346833
+ ],
+ [
+ -72.3054864,
+ 18.534613
+ ],
+ [
+ -72.3055585,
+ 18.5345065
+ ],
+ [
+ -72.3046749,
+ 18.5342293
+ ],
+ [
+ -72.3047617,
+ 18.5338817
+ ],
+ [
+ -72.3043252,
+ 18.5337511
+ ],
+ [
+ -72.3042595,
+ 18.5336346
+ ]
+ ],
+ [
+ [
+ -72.2981405,
+ 18.477502
+ ],
+ [
+ -72.2935652,
+ 18.4948587
+ ],
+ [
+ -72.2922242,
+ 18.4964297
+ ],
+ [
+ -72.2931708,
+ 18.4972526
+ ],
+ [
+ -72.2892266,
+ 18.5057058
+ ],
+ [
+ -72.2878067,
+ 18.5080996
+ ],
+ [
+ -72.2850458,
+ 18.5119893
+ ],
+ [
+ -72.2840203,
+ 18.5113161
+ ],
+ [
+ -72.2808649,
+ 18.515879
+ ],
+ [
+ -72.2773151,
+ 18.5175994
+ ],
+ [
+ -72.2723454,
+ 18.5175246
+ ],
+ [
+ -72.2662714,
+ 18.5144578
+ ],
+ [
+ -72.2665869,
+ 18.5066783
+ ],
+ [
+ -72.2692643,
+ 18.5046154
+ ],
+ [
+ -72.2661965,
+ 18.5029756
+ ],
+ [
+ -72.2688181,
+ 18.4965222
+ ],
+ [
+ -72.2691528,
+ 18.4959403
+ ],
+ [
+ -72.2702684,
+ 18.4961519
+ ],
+ [
+ -72.2702684,
+ 18.4955964
+ ],
+ [
+ -72.2690691,
+ 18.49557
+ ],
+ [
+ -72.2692922,
+ 18.4937714
+ ],
+ [
+ -72.2736988,
+ 18.4859951
+ ],
+ [
+ -72.2746749,
+ 18.4850429
+ ],
+ [
+ -72.2751769,
+ 18.483403
+ ],
+ [
+ -72.2765435,
+ 18.4813398
+ ],
+ [
+ -72.2773523,
+ 18.4814985
+ ],
+ [
+ -72.2783006,
+ 18.4809694
+ ],
+ [
+ -72.2778544,
+ 18.4807049
+ ],
+ [
+ -72.2771013,
+ 18.480123
+ ],
+ [
+ -72.2789978,
+ 18.4775836
+ ],
+ [
+ -72.279723,
+ 18.4772927
+ ],
+ [
+ -72.2806433,
+ 18.4776365
+ ],
+ [
+ -72.2813685,
+ 18.4771604
+ ],
+ [
+ -72.2808386,
+ 18.4769752
+ ],
+ [
+ -72.2812848,
+ 18.4758378
+ ],
+ [
+ -72.2823167,
+ 18.4751765
+ ],
+ [
+ -72.2851615,
+ 18.4750971
+ ],
+ [
+ -72.2849941,
+ 18.4763668
+ ],
+ [
+ -72.2854404,
+ 18.4769752
+ ],
+ [
+ -72.286277,
+ 18.4756262
+ ],
+ [
+ -72.2869325,
+ 18.4754675
+ ],
+ [
+ -72.2865978,
+ 18.4751897
+ ],
+ [
+ -72.2865978,
+ 18.4750046
+ ],
+ [
+ -72.2909765,
+ 18.4747268
+ ],
+ [
+ -72.2946579,
+ 18.4749384
+ ],
+ [
+ -72.2973911,
+ 18.476843
+ ]
+ ],
+ [
+ [
+ -72.3466657,
+ 18.5222375
+ ],
+ [
+ -72.346833,
+ 18.5244325
+ ],
+ [
+ -72.3475303,
+ 18.5277645
+ ],
+ [
+ -72.3455501,
+ 18.5291131
+ ],
+ [
+ -72.3403069,
+ 18.5292189
+ ],
+ [
+ -72.3383267,
+ 18.5280289
+ ],
+ [
+ -72.3369043,
+ 18.530118
+ ],
+ [
+ -72.3338086,
+ 18.5296684
+ ],
+ [
+ -72.3289279,
+ 18.5270769
+ ],
+ [
+ -72.328649,
+ 18.5253316
+ ],
+ [
+ -72.3292068,
+ 18.5232689
+ ],
+ [
+ -72.330406,
+ 18.5220524
+ ],
+ [
+ -72.3321631,
+ 18.5221847
+ ],
+ [
+ -72.3322467,
+ 18.5191963
+ ],
+ [
+ -72.3369183,
+ 18.5183633
+ ],
+ [
+ -72.3382012,
+ 18.5184691
+ ],
+ [
+ -72.3381454,
+ 18.5181782
+ ],
+ [
+ -72.3411993,
+ 18.5177947
+ ],
+ [
+ -72.3454943,
+ 18.5171997
+ ],
+ [
+ -72.3492595,
+ 18.517279
+ ],
+ [
+ -72.3504308,
+ 18.5188922
+ ],
+ [
+ -72.3503472,
+ 18.5206112
+ ],
+ [
+ -72.3496778,
+ 18.5220392
+ ]
+ ],
+ [
+ [
+ -72.3303078,
+ 18.5486462
+ ],
+ [
+ -72.3429687,
+ 18.5508149
+ ],
+ [
+ -72.3433236,
+ 18.5530585
+ ],
+ [
+ -72.3413121,
+ 18.5614341
+ ],
+ [
+ -72.3390639,
+ 18.5613593
+ ],
+ [
+ -72.3384723,
+ 18.5638271
+ ],
+ [
+ -72.3375257,
+ 18.5654348
+ ],
+ [
+ -72.3348436,
+ 18.5650609
+ ],
+ [
+ -72.3311755,
+ 18.5638271
+ ],
+ [
+ -72.3312149,
+ 18.5616211
+ ],
+ [
+ -72.3232082,
+ 18.5606863
+ ],
+ [
+ -72.3212361,
+ 18.559602
+ ],
+ [
+ -72.3208023,
+ 18.5587046
+ ],
+ [
+ -72.3208811,
+ 18.557882
+ ],
+ [
+ -72.3259493,
+ 18.5580274
+ ],
+ [
+ -72.3266186,
+ 18.5581993
+ ],
+ [
+ -72.3259214,
+ 18.5577498
+ ],
+ [
+ -72.3250986,
+ 18.5573797
+ ],
+ [
+ -72.3233767,
+ 18.552263
+ ],
+ [
+ -72.3245994,
+ 18.5478507
+ ],
+ [
+ -72.3288986,
+ 18.5483742
+ ],
+ [
+ -72.329979,
+ 18.5489548
+ ]
+ ],
+ [
+ [
+ -72.3231383,
+ 18.5269828
+ ],
+ [
+ -72.3223434,
+ 18.528067
+ ],
+ [
+ -72.3209629,
+ 18.5279745
+ ],
+ [
+ -72.3207816,
+ 18.5271282
+ ],
+ [
+ -72.3208513,
+ 18.5253697
+ ],
+ [
+ -72.3214649,
+ 18.5249598
+ ],
+ [
+ -72.3225666,
+ 18.5248937
+ ],
+ [
+ -72.3228454,
+ 18.52533
+ ],
+ [
+ -72.3232359,
+ 18.5264804
+ ]
+ ],
+ [
+ [
+ -72.2160832,
+ 18.6457752
+ ],
+ [
+ -72.2159649,
+ 18.6553795
+ ],
+ [
+ -72.2030279,
+ 18.6558279
+ ],
+ [
+ -72.1947057,
+ 18.6553421
+ ],
+ [
+ -72.1922208,
+ 18.6545573
+ ],
+ [
+ -72.1920631,
+ 18.6521283
+ ],
+ [
+ -72.193483,
+ 18.6477559
+ ],
+ [
+ -72.201253,
+ 18.6385249
+ ],
+ [
+ -72.2069327,
+ 18.6388239
+ ],
+ [
+ -72.2120996,
+ 18.6424117
+ ],
+ [
+ -72.2118068,
+ 18.6430591
+ ],
+ [
+ -72.2121693,
+ 18.6426892
+ ],
+ [
+ -72.2127968,
+ 18.6427552
+ ],
+ [
+ -72.2134662,
+ 18.6431252
+ ],
+ [
+ -72.2135638,
+ 18.6437462
+ ],
+ [
+ -72.2154176,
+ 18.6443947
+ ],
+ [
+ -72.2158909,
+ 18.6450301
+ ]
+ ],
+ [
+ [
+ -72.2867654,
+ 18.6482017
+ ],
+ [
+ -72.2900977,
+ 18.6527446
+ ],
+ [
+ -72.28981,
+ 18.6536532
+ ],
+ [
+ -72.2900738,
+ 18.6542664
+ ],
+ [
+ -72.290721,
+ 18.6537667
+ ],
+ [
+ -72.2910327,
+ 18.6544709
+ ],
+ [
+ -72.2912485,
+ 18.654221
+ ],
+ [
+ -72.29168,
+ 18.6558905
+ ],
+ [
+ -72.2912245,
+ 18.656606
+ ],
+ [
+ -72.2922673,
+ 18.65597
+ ],
+ [
+ -72.2926869,
+ 18.6567536
+ ],
+ [
+ -72.2930705,
+ 18.6567309
+ ],
+ [
+ -72.2941253,
+ 18.6581846
+ ],
+ [
+ -72.2960192,
+ 18.6608421
+ ],
+ [
+ -72.2959713,
+ 18.6619096
+ ],
+ [
+ -72.2932862,
+ 18.664567
+ ],
+ [
+ -72.2906731,
+ 18.6659979
+ ],
+ [
+ -72.2895943,
+ 18.6661342
+ ],
+ [
+ -72.2895943,
+ 18.6665657
+ ],
+ [
+ -72.2877004,
+ 18.6664749
+ ],
+ [
+ -72.2875805,
+ 18.6676559
+ ],
+ [
+ -72.2831214,
+ 18.6697227
+ ],
+ [
+ -72.2796453,
+ 18.6696546
+ ],
+ [
+ -72.2784311,
+ 18.6690787
+ ],
+ [
+ -72.2783972,
+ 18.6687736
+ ],
+ [
+ -72.277736,
+ 18.6691671
+ ],
+ [
+ -72.2774394,
+ 18.669143
+ ],
+ [
+ -72.2770071,
+ 18.6683159
+ ],
+ [
+ -72.2765575,
+ 18.6681125
+ ],
+ [
+ -72.2765385,
+ 18.6680583
+ ],
+ [
+ -72.2752319,
+ 18.6685239
+ ],
+ [
+ -72.2749292,
+ 18.6674649
+ ],
+ [
+ -72.2746416,
+ 18.6674309
+ ],
+ [
+ -72.2734668,
+ 18.6682145
+ ],
+ [
+ -72.2732271,
+ 18.6682712
+ ],
+ [
+ -72.2726757,
+ 18.6671583
+ ],
+ [
+ -72.2719147,
+ 18.6674288
+ ],
+ [
+ -72.2718808,
+ 18.6673405
+ ],
+ [
+ -72.2688149,
+ 18.6681868
+ ],
+ [
+ -72.2688269,
+ 18.6671761
+ ],
+ [
+ -72.2690786,
+ 18.6668241
+ ],
+ [
+ -72.2688149,
+ 18.66679
+ ],
+ [
+ -72.2681077,
+ 18.6670739
+ ],
+ [
+ -72.2676282,
+ 18.6673805
+ ],
+ [
+ -72.2675563,
+ 18.6666878
+ ],
+ [
+ -72.266861,
+ 18.666949
+ ],
+ [
+ -72.2655904,
+ 18.6673578
+ ],
+ [
+ -72.2654466,
+ 18.6670058
+ ],
+ [
+ -72.2647514,
+ 18.6674146
+ ],
+ [
+ -72.2629893,
+ 18.6681868
+ ],
+ [
+ -72.2628455,
+ 18.6681754
+ ],
+ [
+ -72.2626537,
+ 18.6676076
+ ],
+ [
+ -72.2623001,
+ 18.6677098
+ ],
+ [
+ -72.2624799,
+ 18.6679199
+ ],
+ [
+ -72.2624799,
+ 18.6682322
+ ],
+ [
+ -72.262306,
+ 18.6682606
+ ],
+ [
+ -72.2620963,
+ 18.6679654
+ ],
+ [
+ -72.2622761,
+ 18.6689193
+ ],
+ [
+ -72.2601484,
+ 18.6688966
+ ],
+ [
+ -72.2542749,
+ 18.6687944
+ ],
+ [
+ -72.2505388,
+ 18.6683476
+ ],
+ [
+ -72.2504371,
+ 18.669536
+ ],
+ [
+ -72.2477926,
+ 18.6698893
+ ],
+ [
+ -72.2415204,
+ 18.669793
+ ],
+ [
+ -72.2414187,
+ 18.6741933
+ ],
+ [
+ -72.2389167,
+ 18.6739759
+ ],
+ [
+ -72.2387249,
+ 18.6734649
+ ],
+ [
+ -72.2383653,
+ 18.6733059
+ ],
+ [
+ -72.2387009,
+ 18.6739532
+ ],
+ [
+ -72.2375502,
+ 18.6738964
+ ],
+ [
+ -72.2374183,
+ 18.6735103
+ ],
+ [
+ -72.237742,
+ 18.67334
+ ],
+ [
+ -72.2375142,
+ 18.6732605
+ ],
+ [
+ -72.236843,
+ 18.6734876
+ ],
+ [
+ -72.2364354,
+ 18.6724088
+ ],
+ [
+ -72.2355124,
+ 18.6726019
+ ],
+ [
+ -72.2354045,
+ 18.6724202
+ ],
+ [
+ -72.2353027,
+ 18.6729028
+ ],
+ [
+ -72.2345475,
+ 18.6726871
+ ],
+ [
+ -72.2343077,
+ 18.6724599
+ ],
+ [
+ -72.2342358,
+ 18.6734706
+ ],
+ [
+ -72.2334087,
+ 18.6734592
+ ],
+ [
+ -72.2332889,
+ 18.6733003
+ ],
+ [
+ -72.2327375,
+ 18.6732889
+ ],
+ [
+ -72.2327135,
+ 18.6735047
+ ],
+ [
+ -72.227703,
+ 18.6725281
+ ],
+ [
+ -72.2265283,
+ 18.6716537
+ ],
+ [
+ -72.226804,
+ 18.6715742
+ ],
+ [
+ -72.2274993,
+ 18.6715855
+ ],
+ [
+ -72.2274873,
+ 18.6714493
+ ],
+ [
+ -72.2272899,
+ 18.6714623
+ ],
+ [
+ -72.2272814,
+ 18.6712977
+ ],
+ [
+ -72.2272094,
+ 18.671358
+ ],
+ [
+ -72.2261785,
+ 18.6713693
+ ],
+ [
+ -72.2256032,
+ 18.670881
+ ],
+ [
+ -72.2255073,
+ 18.6694502
+ ],
+ [
+ -72.2261066,
+ 18.6696886
+ ],
+ [
+ -72.2261785,
+ 18.6695949
+ ],
+ [
+ -72.2259837,
+ 18.6695495
+ ],
+ [
+ -72.225777,
+ 18.6691379
+ ],
+ [
+ -72.2253335,
+ 18.6694643
+ ],
+ [
+ -72.2249739,
+ 18.66947
+ ],
+ [
+ -72.2245783,
+ 18.6678802
+ ],
+ [
+ -72.2235525,
+ 18.6677046
+ ],
+ [
+ -72.2235907,
+ 18.6675921
+ ],
+ [
+ -72.2224634,
+ 18.6676283
+ ],
+ [
+ -72.2223659,
+ 18.667022
+ ],
+ [
+ -72.2223277,
+ 18.6670943
+ ],
+ [
+ -72.2219209,
+ 18.667026
+ ],
+ [
+ -72.2208105,
+ 18.6669015
+ ],
+ [
+ -72.220809,
+ 18.6665325
+ ],
+ [
+ -72.2208705,
+ 18.6663593
+ ],
+ [
+ -72.2206023,
+ 18.6668107
+ ],
+ [
+ -72.2203895,
+ 18.6666361
+ ],
+ [
+ -72.2184341,
+ 18.6650535
+ ],
+ [
+ -72.21829,
+ 18.6640979
+ ],
+ [
+ -72.2183493,
+ 18.6608376
+ ],
+ [
+ -72.2187223,
+ 18.6606541
+ ],
+ [
+ -72.2186894,
+ 18.660603
+ ],
+ [
+ -72.2187253,
+ 18.6604525
+ ],
+ [
+ -72.2189771,
+ 18.6603247
+ ],
+ [
+ -72.2187823,
+ 18.6601998
+ ],
+ [
+ -72.2186984,
+ 18.6602367
+ ],
+ [
+ -72.2185815,
+ 18.6600352
+ ],
+ [
+ -72.2186085,
+ 18.6600039
+ ],
+ [
+ -72.2187823,
+ 18.6601345
+ ],
+ [
+ -72.218995,
+ 18.6600181
+ ],
+ [
+ -72.2189111,
+ 18.6599131
+ ],
+ [
+ -72.2189681,
+ 18.6597938
+ ],
+ [
+ -72.2183807,
+ 18.6595837
+ ],
+ [
+ -72.2184728,
+ 18.6539662
+ ],
+ [
+ -72.2201001,
+ 18.6511554
+ ],
+ [
+ -72.225796,
+ 18.6469472
+ ],
+ [
+ -72.2283048,
+ 18.6457265
+ ],
+ [
+ -72.2379335,
+ 18.645855
+ ],
+ [
+ -72.237764,
+ 18.6446985
+ ],
+ [
+ -72.2400355,
+ 18.6432529
+ ],
+ [
+ -72.2455958,
+ 18.6433493
+ ],
+ [
+ -72.2482742,
+ 18.6450358
+ ],
+ [
+ -72.2487488,
+ 18.6436705
+ ],
+ [
+ -72.2511067,
+ 18.6429775
+ ],
+ [
+ -72.2512385,
+ 18.6433409
+ ],
+ [
+ -72.2512625,
+ 18.6431592
+ ],
+ [
+ -72.2514843,
+ 18.6431365
+ ],
+ [
+ -72.2513284,
+ 18.6429718
+ ],
+ [
+ -72.2533602,
+ 18.6423471
+ ],
+ [
+ -72.253516,
+ 18.6426765
+ ],
+ [
+ -72.2539535,
+ 18.6425402
+ ],
+ [
+ -72.2541453,
+ 18.642932
+ ],
+ [
+ -72.2543851,
+ 18.6428696
+ ],
+ [
+ -72.2543791,
+ 18.6427503
+ ],
+ [
+ -72.2564168,
+ 18.6423244
+ ],
+ [
+ -72.2566925,
+ 18.6431365
+ ],
+ [
+ -72.2568783,
+ 18.6428582
+ ],
+ [
+ -72.2568184,
+ 18.6425288
+ ],
+ [
+ -72.258843,
+ 18.6420991
+ ],
+ [
+ -72.258885,
+ 18.6422467
+ ],
+ [
+ -72.2592626,
+ 18.6422297
+ ],
+ [
+ -72.2596461,
+ 18.6424057
+ ],
+ [
+ -72.2592206,
+ 18.6406907
+ ],
+ [
+ -72.2599545,
+ 18.6404815
+ ],
+ [
+ -72.2601156,
+ 18.6406341
+ ],
+ [
+ -72.2601156,
+ 18.6399393
+ ],
+ [
+ -72.2615268,
+ 18.6394669
+ ],
+ [
+ -72.2626056,
+ 18.6391034
+ ],
+ [
+ -72.2654465,
+ 18.6387286
+ ],
+ [
+ -72.2719433,
+ 18.6386832
+ ],
+ [
+ -72.272201,
+ 18.6388649
+ ],
+ [
+ -72.2730341,
+ 18.6394158
+ ],
+ [
+ -72.273166,
+ 18.6412558
+ ],
+ [
+ -72.2738732,
+ 18.6410286
+ ],
+ [
+ -72.2742208,
+ 18.6416079
+ ],
+ [
+ -72.2752187,
+ 18.6416987
+ ],
+ [
+ -72.2754524,
+ 18.6415738
+ ],
+ [
+ -72.2755513,
+ 18.6416874
+ ],
+ [
+ -72.2755394,
+ 18.6417527
+ ],
+ [
+ -72.2764713,
+ 18.6418634
+ ],
+ [
+ -72.276753,
+ 18.6418975
+ ],
+ [
+ -72.2762953,
+ 18.6426002
+ ],
+ [
+ -72.2774226,
+ 18.6429978
+ ],
+ [
+ -72.277982,
+ 18.6427247
+ ],
+ [
+ -72.2785796,
+ 18.6431303
+ ],
+ [
+ -72.2785669,
+ 18.6432307
+ ],
+ [
+ -72.2789017,
+ 18.6433471
+ ],
+ [
+ -72.279851,
+ 18.6439655
+ ],
+ [
+ -72.2858703,
+ 18.6469651
+ ]
+ ],
+ [
+ [
+ -72.5557247,
+ 18.5305893
+ ],
+ [
+ -72.5555866,
+ 18.5367036
+ ],
+ [
+ -72.554995,
+ 18.537975
+ ],
+ [
+ -72.5488026,
+ 18.537919
+ ],
+ [
+ -72.5486646,
+ 18.5372832
+ ],
+ [
+ -72.548842,
+ 18.5306267
+ ],
+ [
+ -72.5493745,
+ 18.5301031
+ ],
+ [
+ -72.555133,
+ 18.5301218
+ ]
+ ],
+ [
+ [
+ -72.6235278,
+ 18.5079877
+ ],
+ [
+ -72.6234441,
+ 18.5095217
+ ],
+ [
+ -72.6226074,
+ 18.5104341
+ ],
+ [
+ -72.6204878,
+ 18.511849
+ ],
+ [
+ -72.6183403,
+ 18.5107514
+ ],
+ [
+ -72.6162207,
+ 18.5083183
+ ],
+ [
+ -72.6162625,
+ 18.506467
+ ],
+ [
+ -72.618661,
+ 18.5044438
+ ],
+ [
+ -72.6204041,
+ 18.5044967
+ ],
+ [
+ -72.6228305,
+ 18.506996
+ ]
+ ]
+ ]
+ },
+ {
+ "name": "Ireland Bartholomew Quarter-Inch 1940",
+ "type": "tms",
+ "template": "http://geo.nls.uk/maps/ireland/bartholomew/{zoom}/{x}/{-y}.png",
+ "scaleExtent": [
+ 5,
+ 13
+ ],
+ "polygon": [
+ [
+ [
+ -8.8312773,
+ 55.3963337
+ ],
+ [
+ -7.3221271,
+ 55.398605
+ ],
+ [
+ -7.2891331,
+ 55.4333162
+ ],
+ [
+ -7.2368042,
+ 55.4530757
+ ],
+ [
+ -7.18881,
+ 55.4497995
+ ],
+ [
+ -7.1528144,
+ 55.3968384
+ ],
+ [
+ -6.90561,
+ 55.394903
+ ],
+ [
+ -6.9047153,
+ 55.3842114
+ ],
+ [
+ -5.8485282,
+ 55.3922956
+ ],
+ [
+ -5.8378629,
+ 55.248676
+ ],
+ [
+ -5.3614762,
+ 55.2507024
+ ],
+ [
+ -5.3899172,
+ 53.8466464
+ ],
+ [
+ -5.8734141,
+ 53.8487436
+ ],
+ [
+ -5.8983,
+ 52.8256258
+ ],
+ [
+ -6.0191742,
+ 52.8256258
+ ],
+ [
+ -6.0262844,
+ 51.7712367
+ ],
+ [
+ -8.1131422,
+ 51.7712367
+ ],
+ [
+ -8.1273627,
+ 51.3268839
+ ],
+ [
+ -10.6052842,
+ 51.3091083
+ ],
+ [
+ -10.6271879,
+ 52.0328254
+ ],
+ [
+ -10.6469845,
+ 52.0322454
+ ],
+ [
+ -10.6469845,
+ 52.0440365
+ ],
+ [
+ -10.6271879,
+ 52.0448095
+ ],
+ [
+ -10.6290733,
+ 52.0745627
+ ],
+ [
+ -10.6699234,
+ 52.0743695
+ ],
+ [
+ -10.6702376,
+ 52.0876941
+ ],
+ [
+ -10.6312729,
+ 52.0898179
+ ],
+ [
+ -10.6393128,
+ 52.4147202
+ ],
+ [
+ -10.3137689,
+ 52.4185533
+ ],
+ [
+ -10.3166401,
+ 53.3341342
+ ],
+ [
+ -10.3699669,
+ 53.3330727
+ ],
+ [
+ -10.385965,
+ 54.3534472
+ ],
+ [
+ -8.8163777,
+ 54.3586265
+ ],
+ [
+ -8.8173427,
+ 54.6595721
+ ],
+ [
+ -8.8413398,
+ 54.6616284
+ ],
+ [
+ -8.8422286,
+ 54.6929749
+ ],
+ [
+ -8.8315632,
+ 54.7145436
+ ],
+ [
+ -8.8151208,
+ 54.7145436
+ ]
+ ]
+ ],
+ "terms_url": "http://geo.nls.uk/maps/",
+ "terms_text": "National Library of Scotland Historic Maps"
+ },
+ {
+ "name": "Ireland British War Office One-Inch 1941-43 GSGS 4136",
+ "type": "tms",
+ "template": "http://geo.nls.uk/maps/ireland/gsgs4136/{zoom}/{x}/{-y}.png",
+ "scaleExtent": [
+ 5,
+ 15
+ ],
+ "polygon": [
+ [
+ [
+ -10.0847426,
+ 51.4147902
+ ],
+ [
+ -10.0906535,
+ 51.5064103
+ ],
+ [
+ -10.4564222,
+ 51.5003961
+ ],
+ [
+ -10.5005905,
+ 52.3043019
+ ],
+ [
+ -10.0837522,
+ 52.312741
+ ],
+ [
+ -10.0840973,
+ 52.3404698
+ ],
+ [
+ -10.055802,
+ 52.3408915
+ ],
+ [
+ -10.0768509,
+ 52.7628238
+ ],
+ [
+ -9.7780248,
+ 52.7684611
+ ],
+ [
+ -9.7818205,
+ 52.8577261
+ ],
+ [
+ -9.6337877,
+ 52.8596012
+ ],
+ [
+ -9.6449626,
+ 53.1294502
+ ],
+ [
+ -10.0919663,
+ 53.1227152
+ ],
+ [
+ -10.1051422,
+ 53.3912913
+ ],
+ [
+ -10.4052593,
+ 53.3866349
+ ],
+ [
+ -10.4530828,
+ 54.193502
+ ],
+ [
+ -10.2998523,
+ 54.1974988
+ ],
+ [
+ -10.3149801,
+ 54.4669592
+ ],
+ [
+ -8.9276095,
+ 54.4853897
+ ],
+ [
+ -8.9339534,
+ 54.7546562
+ ],
+ [
+ -8.7773069,
+ 54.755501
+ ],
+ [
+ -8.7826749,
+ 55.0252208
+ ],
+ [
+ -8.9402974,
+ 55.0238221
+ ],
+ [
+ -8.9451773,
+ 55.2934155
+ ],
+ [
+ -7.528039,
+ 55.2970274
+ ],
+ [
+ -7.525599,
+ 55.3874955
+ ],
+ [
+ -7.0541955,
+ 55.3841691
+ ],
+ [
+ -7.0556595,
+ 55.2939712
+ ],
+ [
+ -6.3241545,
+ 55.2859128
+ ],
+ [
+ -6.3217146,
+ 55.3253556
+ ],
+ [
+ -6.1035807,
+ 55.3223016
+ ],
+ [
+ -6.1045566,
+ 55.2828557
+ ],
+ [
+ -5.7985836,
+ 55.2772968
+ ],
+ [
+ -5.8117595,
+ 55.0087135
+ ],
+ [
+ -5.656577,
+ 55.0056351
+ ],
+ [
+ -5.6721928,
+ 54.7355021
+ ],
+ [
+ -5.3618278,
+ 54.729585
+ ],
+ [
+ -5.3964755,
+ 54.1917889
+ ],
+ [
+ -5.855679,
+ 54.2017807
+ ],
+ [
+ -5.9220464,
+ 52.8524504
+ ],
+ [
+ -6.070885,
+ 52.8551025
+ ],
+ [
+ -6.1030927,
+ 52.1373337
+ ],
+ [
+ -6.8331336,
+ 52.1463183
+ ],
+ [
+ -6.8355736,
+ 52.0578908
+ ],
+ [
+ -7.5641506,
+ 52.0617913
+ ],
+ [
+ -7.5661026,
+ 51.7921593
+ ],
+ [
+ -8.147305,
+ 51.792763
+ ],
+ [
+ -8.146329,
+ 51.7033331
+ ],
+ [
+ -8.2912636,
+ 51.7027283
+ ],
+ [
+ -8.2897996,
+ 51.5227274
+ ],
+ [
+ -9.1174397,
+ 51.516958
+ ],
+ [
+ -9.1179277,
+ 51.4625685
+ ],
+ [
+ -9.3692452,
+ 51.4616564
+ ],
+ [
+ -9.3672933,
+ 51.4254613
+ ]
+ ]
+ ],
+ "terms_url": "http://geo.nls.uk/maps/",
+ "terms_text": "National Library of Scotland Historic Maps"
+ },
+ {
+ "name": "Ireland EEA CORINE 2006",
+ "type": "tms",
+ "template": "http://a.tile.openstreetmap.ie/tiles/corine/{zoom}/{x}/{y}.png",
+ "scaleExtent": [
+ 5,
+ 16
+ ],
+ "polygon": [
+ [
+ [
+ -5.842956,
+ 53.8627976
+ ],
+ [
+ -5.8341575,
+ 53.7633541
+ ],
+ [
+ -5.6267647,
+ 53.5383692
+ ],
+ [
+ -5.9648778,
+ 52.1631197
+ ],
+ [
+ -6.0453211,
+ 52.0527275
+ ],
+ [
+ -6.1823261,
+ 51.9699475
+ ],
+ [
+ -6.3960035,
+ 51.9234618
+ ],
+ [
+ -6.5945978,
+ 51.883911
+ ],
+ [
+ -7.2481994,
+ 51.9056295
+ ],
+ [
+ -7.341212,
+ 51.8148076
+ ],
+ [
+ -8.1971787,
+ 51.5037019
+ ],
+ [
+ -8.3191005,
+ 51.4167737
+ ],
+ [
+ -9.4478202,
+ 51.1991221
+ ],
+ [
+ -9.9015706,
+ 51.2266802
+ ],
+ [
+ -10.472215,
+ 51.4050139
+ ],
+ [
+ -10.8857437,
+ 51.6770619
+ ],
+ [
+ -11.035318,
+ 52.0620016
+ ],
+ [
+ -10.9950963,
+ 52.1831616
+ ],
+ [
+ -10.8178697,
+ 52.3139827
+ ],
+ [
+ -9.8839736,
+ 52.9032208
+ ],
+ [
+ -10.1165049,
+ 52.9676141
+ ],
+ [
+ -10.5514014,
+ 53.3317027
+ ],
+ [
+ -10.6896633,
+ 53.5854022
+ ],
+ [
+ -10.6444139,
+ 54.0100436
+ ],
+ [
+ -10.5501445,
+ 54.257482
+ ],
+ [
+ -10.2824192,
+ 54.4742405
+ ],
+ [
+ -9.8073011,
+ 54.5705346
+ ],
+ [
+ -9.196435,
+ 54.5486695
+ ],
+ [
+ -9.2253443,
+ 54.7000264
+ ],
+ [
+ -8.8985435,
+ 55.1363582
+ ],
+ [
+ -8.0476045,
+ 55.4711977
+ ],
+ [
+ -7.4367384,
+ 55.6191092
+ ],
+ [
+ -7.2205471,
+ 55.6205288
+ ],
+ [
+ -6.8258723,
+ 55.5608644
+ ],
+ [
+ -6.0679458,
+ 55.3727567
+ ],
+ [
+ -5.5639184,
+ 55.0759594
+ ],
+ [
+ -5.0649187,
+ 54.4640142
+ ],
+ [
+ -5.2572284,
+ 54.1582424
+ ]
+ ]
+ ],
+ "terms_url": "http://www.eea.europa.eu/data-and-maps/data/clc-2006-vector-data-version-1",
+ "terms_text": "EEA Corine 2006"
+ },
+ {
+ "name": "Ireland EEA GMES Urban Atlas",
+ "type": "tms",
+ "template": "http://a.tile.openstreetmap.ie/tiles/urbanatlas/{zoom}/{x}/{y}.png",
+ "scaleExtent": [
+ 5,
+ 17
+ ],
+ "polygon": [
+ [
+ [
+ -9.2759602,
+ 52.7993666
+ ],
+ [
+ -9.215509,
+ 52.8276933
+ ],
+ [
+ -9.1086618,
+ 52.9128016
+ ],
+ [
+ -9.0196831,
+ 52.8837107
+ ],
+ [
+ -8.8760649,
+ 52.8978445
+ ],
+ [
+ -8.8001797,
+ 52.8833558
+ ],
+ [
+ -8.7665597,
+ 52.9065354
+ ],
+ [
+ -8.5938079,
+ 52.9238592
+ ],
+ [
+ -8.5241972,
+ 52.8869724
+ ],
+ [
+ -8.4956786,
+ 52.9105906
+ ],
+ [
+ -8.3506448,
+ 52.9238592
+ ],
+ [
+ -8.2718204,
+ 52.9492401
+ ],
+ [
+ -8.2249679,
+ 52.8991338
+ ],
+ [
+ -8.1564001,
+ 52.9149986
+ ],
+ [
+ -8.0881237,
+ 52.7630417
+ ],
+ [
+ -8.1360092,
+ 52.7239783
+ ],
+ [
+ -8.1570652,
+ 52.6766443
+ ],
+ [
+ -8.2059695,
+ 52.6185385
+ ],
+ [
+ -8.2025734,
+ 52.5954396
+ ],
+ [
+ -8.2231242,
+ 52.5599691
+ ],
+ [
+ -8.2236294,
+ 52.5095371
+ ],
+ [
+ -8.2976651,
+ 52.5025088
+ ],
+ [
+ -8.3295888,
+ 52.4721087
+ ],
+ [
+ -8.3589695,
+ 52.4986072
+ ],
+ [
+ -8.3737385,
+ 52.4764529
+ ],
+ [
+ -8.432326,
+ 52.4342609
+ ],
+ [
+ -8.4754569,
+ 52.4216289
+ ],
+ [
+ -8.5017727,
+ 52.3870011
+ ],
+ [
+ -8.5476205,
+ 52.3681351
+ ],
+ [
+ -8.6444103,
+ 52.3376422
+ ],
+ [
+ -8.6841451,
+ 52.3660614
+ ],
+ [
+ -8.8154099,
+ 52.3721014
+ ],
+ [
+ -8.8614233,
+ 52.3521652
+ ],
+ [
+ -8.9074451,
+ 52.3824674
+ ],
+ [
+ -8.9388551,
+ 52.3789166
+ ],
+ [
+ -8.9782502,
+ 52.4093811
+ ],
+ [
+ -9.0298715,
+ 52.4104169
+ ],
+ [
+ -9.1059449,
+ 52.420981
+ ],
+ [
+ -9.1084962,
+ 52.4415071
+ ],
+ [
+ -9.140702,
+ 52.4650891
+ ],
+ [
+ -9.1315765,
+ 52.5136207
+ ],
+ [
+ -9.1739699,
+ 52.5620573
+ ],
+ [
+ -9.1426235,
+ 52.589645
+ ],
+ [
+ -9.1542382,
+ 52.610216
+ ],
+ [
+ -9.1426231,
+ 52.6387401
+ ],
+ [
+ -9.1776844,
+ 52.6447573
+ ],
+ [
+ -9.2012184,
+ 52.6526248
+ ],
+ [
+ -9.2036198,
+ 52.6686468
+ ],
+ [
+ -9.2238348,
+ 52.6706578
+ ],
+ [
+ -9.2161072,
+ 52.6919412
+ ],
+ [
+ -9.1882395,
+ 52.7057242
+ ],
+ [
+ -9.2750099,
+ 52.7350292
+ ],
+ [
+ -9.2601152,
+ 52.7616711
+ ]
+ ],
+ [
+ [
+ -7.307313219981238,
+ 53.81625879275365
+ ],
+ [
+ -7.245858447032101,
+ 53.78300449111207
+ ],
+ [
+ -7.15144468970801,
+ 53.81179938127503
+ ],
+ [
+ -7.086900011973722,
+ 53.784424420834
+ ],
+ [
+ -7.0347149533800435,
+ 53.77996162275688
+ ],
+ [
+ -6.975320116954343,
+ 53.788481098127924
+ ],
+ [
+ -6.928628222423156,
+ 53.81443454540607
+ ],
+ [
+ -6.992829577403537,
+ 53.86609081229548
+ ],
+ [
+ -6.975320116954343,
+ 53.87945028968944
+ ],
+ [
+ -6.949914233165313,
+ 53.87094929783329
+ ],
+ [
+ -6.9375546140247035,
+ 53.87540241385127
+ ],
+ [
+ -6.936867968516893,
+ 53.896649390754646
+ ],
+ [
+ -6.897042529063821,
+ 53.889770599553906
+ ],
+ [
+ -6.867516772227924,
+ 53.880259817835736
+ ],
+ [
+ -6.851037280040446,
+ 53.88450958346468
+ ],
+ [
+ -6.842454211192801,
+ 53.89786317755242
+ ],
+ [
+ -6.812928454356904,
+ 53.90069520963246
+ ],
+ [
+ -6.79850889869286,
+ 53.89280549994937
+ ],
+ [
+ -6.789925829845217,
+ 53.89462633440526
+ ],
+ [
+ -6.791985766368652,
+ 53.904538374710896
+ ],
+ [
+ -6.778939501720231,
+ 53.918087767078354
+ ],
+ [
+ -6.77001311011868,
+ 53.91505470292794
+ ],
+ [
+ -6.75868345923979,
+ 53.921727153244476
+ ],
+ [
+ -6.744263903575747,
+ 53.916065748791254
+ ],
+ [
+ -6.727441088634364,
+ 53.92334455637637
+ ],
+ [
+ -6.713021532970319,
+ 53.90777445003927
+ ],
+ [
+ -6.684182421642232,
+ 53.90292024303218
+ ],
+ [
+ -6.623757616954815,
+ 53.88187882710815
+ ],
+ [
+ -6.590455309825955,
+ 53.857789593974296
+ ],
+ [
+ -6.591141955333765,
+ 53.835509894663346
+ ],
+ [
+ -6.574319140392382,
+ 53.82254170362619
+ ],
+ [
+ -6.571572558361136,
+ 53.804703885117576
+ ],
+ [
+ -6.5533764524041285,
+ 53.79983770791046
+ ],
+ [
+ -6.541360156017425,
+ 53.78300449111207
+ ],
+ [
+ -6.511491076427622,
+ 53.76900546961285
+ ],
+ [
+ -6.472695605236269,
+ 53.77326653566421
+ ],
+ [
+ -6.443513171154276,
+ 53.76393220797015
+ ],
+ [
+ -6.44728972144724,
+ 53.75114486961979
+ ],
+ [
+ -6.4775021237909485,
+ 53.728199094666586
+ ],
+ [
+ -6.459649340587848,
+ 53.71682309412751
+ ],
+ [
+ -6.435616747814443,
+ 53.72230833571077
+ ],
+ [
+ -6.4198239011347775,
+ 53.72921465935537
+ ],
+ [
+ -6.4009411496699595,
+ 53.72169889975152
+ ],
+ [
+ -6.375878588634836,
+ 53.718042098526006
+ ],
+ [
+ -6.359055773693453,
+ 53.708695495259434
+ ],
+ [
+ -6.340173022228636,
+ 53.708085862042424
+ ],
+ [
+ -6.329873339611461,
+ 53.71296268045594
+ ],
+ [
+ -6.325753466564592,
+ 53.72210519137233
+ ],
+ [
+ -6.2938244504513525,
+ 53.72576163932632
+ ],
+ [
+ -6.265328661877173,
+ 53.7363229253304
+ ],
+ [
+ -6.240952746349864,
+ 53.734292114843086
+ ],
+ [
+ -6.180871264416349,
+ 53.632015710147016
+ ],
+ [
+ -6.092793818322125,
+ 53.588038288422446
+ ],
+ [
+ -5.985734079608837,
+ 53.49383447350347
+ ],
+ [
+ -6.0887447432153685,
+ 53.27174268379562
+ ],
+ [
+ -6.033272979232964,
+ 53.1191110041494
+ ],
+ [
+ -5.984663357119282,
+ 52.9651254915577
+ ],
+ [
+ -6.122679104189409,
+ 52.73207538466633
+ ],
+ [
+ -6.185163845400262,
+ 52.73706461957944
+ ],
+ [
+ -6.1899703639549415,
+ 52.76075568810044
+ ],
+ [
+ -6.319059719423517,
+ 52.782357357522855
+ ],
+ [
+ -6.393904079774976,
+ 52.7790347214105
+ ],
+ [
+ -6.465315212587381,
+ 52.6946379192593
+ ],
+ [
+ -6.534666408876349,
+ 52.673409093161446
+ ],
+ [
+ -6.612257351259057,
+ 52.69255711803012
+ ],
+ [
+ -6.6692489284074155,
+ 52.74745702505679
+ ],
+ [
+ -6.671308864930852,
+ 52.76948072949997
+ ],
+ [
+ -6.720747341493285,
+ 52.7748810695361
+ ],
+ [
+ -6.71456753192298,
+ 52.80311808637125
+ ],
+ [
+ -6.658949245790243,
+ 52.84709806982182
+ ],
+ [
+ -6.582044948915348,
+ 52.81349473557279
+ ],
+ [
+ -6.547712673524768,
+ 52.83133677935633
+ ],
+ [
+ -6.531233181337292,
+ 52.87404491274922
+ ],
+ [
+ -6.617750515321548,
+ 52.87528820923615
+ ],
+ [
+ -6.728987087587023,
+ 52.90635903963372
+ ],
+ [
+ -6.780485500672891,
+ 52.859122574848655
+ ],
+ [
+ -6.870436062196207,
+ 52.85165948109425
+ ],
+ [
+ -6.938413967469552,
+ 52.86658438536895
+ ],
+ [
+ -6.965879787782016,
+ 52.89766145203082
+ ],
+ [
+ -6.987852444031986,
+ 52.969260966642985
+ ],
+ [
+ -7.039350857117853,
+ 52.9560260536776
+ ],
+ [
+ -7.109388698914634,
+ 53.007288776633686
+ ],
+ [
+ -7.068876613953752,
+ 53.058078015357786
+ ],
+ [
+ -7.088789333680287,
+ 53.11869890949892
+ ],
+ [
+ -7.119688381531809,
+ 53.15000684568904
+ ],
+ [
+ -7.105955471375577,
+ 53.16112391039828
+ ],
+ [
+ -7.127928127625547,
+ 53.17223809655703
+ ],
+ [
+ -7.180113186219227,
+ 53.182526443342745
+ ],
+ [
+ -7.160887112000503,
+ 53.19898266621498
+ ],
+ [
+ -7.057890285828767,
+ 53.19898266621498
+ ],
+ [
+ -7.048963894227218,
+ 53.217077217179636
+ ],
+ [
+ -7.0915359157115345,
+ 53.235575105358386
+ ],
+ [
+ -7.0434707301647235,
+ 53.25735126035676
+ ],
+ [
+ -7.05102383075065,
+ 53.29717703664696
+ ],
+ [
+ -6.996778835633536,
+ 53.31112780504489
+ ],
+ [
+ -7.044157375672535,
+ 53.33368557548294
+ ],
+ [
+ -7.105955471375576,
+ 53.371801590024276
+ ],
+ [
+ -7.22050647653913,
+ 53.432465115081854
+ ],
+ [
+ -7.149441429887032,
+ 53.45731709817442
+ ],
+ [
+ -7.099891489102085,
+ 53.463915962572514
+ ],
+ [
+ -7.0744645458045445,
+ 53.48370640260363
+ ],
+ [
+ -7.079028356140001,
+ 53.504650927752664
+ ],
+ [
+ -7.047733656696876,
+ 53.515119311359335
+ ],
+ [
+ -7.029478415355053,
+ 53.54147267392419
+ ],
+ [
+ -7.054253385747527,
+ 53.56471202500164
+ ],
+ [
+ -7.009267255298033,
+ 53.58561652973758
+ ],
+ [
+ -6.992641946218873,
+ 53.602642188744426
+ ],
+ [
+ -6.989056095241016,
+ 53.62739453790707
+ ],
+ [
+ -6.9717788132567895,
+ 53.63686620586593
+ ],
+ [
+ -6.9633031654909425,
+ 53.650973114934644
+ ],
+ [
+ -6.9871001765258205,
+ 53.66623418009986
+ ],
+ [
+ -6.999813648174589,
+ 53.67086935885432
+ ],
+ [
+ -7.008289295940436,
+ 53.65908728051006
+ ],
+ [
+ -7.044473792171549,
+ 53.65367801032349
+ ],
+ [
+ -7.066640870943764,
+ 53.63918547390694
+ ],
+ [
+ -7.101847407817279,
+ 53.65870092708686
+ ],
+ [
+ -7.120754622064167,
+ 53.672993645380515
+ ],
+ [
+ -7.137379931143327,
+ 53.66893809633893
+ ],
+ [
+ -7.160850955725672,
+ 53.683034277255075
+ ],
+ [
+ -7.174216400279507,
+ 53.686316272406906
+ ],
+ [
+ -7.196057492599188,
+ 53.69017711570491
+ ],
+ [
+ -7.210726882963154,
+ 53.69480966037566
+ ],
+ [
+ -7.247237365646801,
+ 53.71661437518035
+ ],
+ [
+ -7.239413690786019,
+ 53.73223735177976
+ ],
+ [
+ -7.260276823748104,
+ 53.74361339729716
+ ],
+ [
+ -7.2814659431627184,
+ 53.75922634307083
+ ],
+ [
+ -7.289615604476034,
+ 53.77271433845693
+ ],
+ [
+ -7.3238441819919515,
+ 53.78465723043301
+ ],
+ [
+ -7.337209626545788,
+ 53.78658318504567
+ ],
+ [
+ -7.351227044004687,
+ 53.80141007448381
+ ],
+ [
+ -7.307313219981238,
+ 53.81625879275365
+ ]
+ ],
+ [
+ [
+ -5.685433013282673,
+ 54.77854496390836
+ ],
+ [
+ -5.696867084279401,
+ 54.73050346921268
+ ],
+ [
+ -5.8223689524230124,
+ 54.70033215177621
+ ],
+ [
+ -5.878760568989772,
+ 54.649492182564074
+ ],
+ [
+ -5.743404719024681,
+ 54.68128223623249
+ ],
+ [
+ -5.581196917402638,
+ 54.68781619319656
+ ],
+ [
+ -5.571488953592992,
+ 54.67074450064368
+ ],
+ [
+ -5.582915011231644,
+ 54.66440901595977
+ ],
+ [
+ -5.58291501123164,
+ 54.65085746679818
+ ],
+ [
+ -5.6086481910584185,
+ 54.63997082553691
+ ],
+ [
+ -5.6354970593650116,
+ 54.61551371292451
+ ],
+ [
+ -5.728732824433139,
+ 54.6184944610979
+ ],
+ [
+ -5.822612969913913,
+ 54.49193018941315
+ ],
+ [
+ -5.896754545381575,
+ 54.44975600798866
+ ],
+ [
+ -5.936834914186871,
+ 54.38213187386197
+ ],
+ [
+ -6.0187561190025445,
+ 54.36974944197913
+ ],
+ [
+ -6.059257912638059,
+ 54.38280030737259
+ ],
+ [
+ -6.101784280694663,
+ 54.41510088826871
+ ],
+ [
+ -6.1740201072375225,
+ 54.43476829635816
+ ],
+ [
+ -6.216261364689026,
+ 54.42827259213158
+ ],
+ [
+ -6.264329002478664,
+ 54.487825014814625
+ ],
+ [
+ -6.249277519938476,
+ 54.49741303545491
+ ],
+ [
+ -6.288340515296785,
+ 54.53143435197413
+ ],
+ [
+ -6.283750270272458,
+ 54.54447449434036
+ ],
+ [
+ -6.321445027854273,
+ 54.58928767713928
+ ],
+ [
+ -6.264329002478664,
+ 54.604982769755765
+ ],
+ [
+ -6.240052417736423,
+ 54.59541999854735
+ ],
+ [
+ -6.098762694536575,
+ 54.631690374598676
+ ],
+ [
+ -6.051950538018501,
+ 54.61314575326238
+ ],
+ [
+ -6.031509408441251,
+ 54.620921248201434
+ ],
+ [
+ -6.002995140908084,
+ 54.65571636730639
+ ],
+ [
+ -6.0647754758974335,
+ 54.6634355452454
+ ],
+ [
+ -6.059920158948984,
+ 54.704134188139534
+ ],
+ [
+ -6.047781866577864,
+ 54.71395188569398
+ ],
+ [
+ -6.120611620804591,
+ 54.801644524994515
+ ],
+ [
+ -6.002141887262449,
+ 54.80836072138932
+ ],
+ [
+ -5.984662746248036,
+ 54.78652900156178
+ ],
+ [
+ -5.685433013282673,
+ 54.77854496390836
+ ]
+ ],
+ [
+ [
+ -9.128658300749114,
+ 53.24759266864586
+ ],
+ [
+ -9.024510568479629,
+ 53.26744820137083
+ ],
+ [
+ -9.016360907166316,
+ 53.26364619217274
+ ],
+ [
+ -9.001854510028616,
+ 53.26588844362053
+ ],
+ [
+ -8.9951717877517,
+ 53.259258838409615
+ ],
+ [
+ -8.973493688658284,
+ 53.262378780650025
+ ],
+ [
+ -8.95230456924367,
+ 53.271444820907114
+ ],
+ [
+ -8.956705386352859,
+ 53.281580911863244
+ ],
+ [
+ -8.961106203462048,
+ 53.28119110665652
+ ],
+ [
+ -8.960780217009516,
+ 53.28908396911955
+ ],
+ [
+ -8.954260487958864,
+ 53.28927883616923
+ ],
+ [
+ -8.95230456924367,
+ 53.30155366854246
+ ],
+ [
+ -8.963714095082308,
+ 53.303793931840495
+ ],
+ [
+ -8.9811543702928,
+ 53.294734752711804
+ ],
+ [
+ -8.985718180628256,
+ 53.30174847871221
+ ],
+ [
+ -9.019946758144176,
+ 53.30768976199425
+ ],
+ [
+ -9.00837423907927,
+ 53.31596722087059
+ ],
+ [
+ -9.01880580556031,
+ 53.31625933715475
+ ],
+ [
+ -9.045862681120513,
+ 53.31275380979257
+ ],
+ [
+ -9.06444390891487,
+ 53.32122500810515
+ ],
+ [
+ -9.080906224767762,
+ 53.307397587062724
+ ],
+ [
+ -9.08106921799403,
+ 53.303404329274585
+ ],
+ [
+ -9.09019683866494,
+ 53.30574189135002
+ ],
+ [
+ -9.095901601584261,
+ 53.298826232852214
+ ],
+ [
+ -9.10128037805105,
+ 53.3008718259498
+ ],
+ [
+ -9.115623781962478,
+ 53.28450433758295
+ ],
+ [
+ -9.121491538108067,
+ 53.2832375443259
+ ],
+ [
+ -9.13273807072044,
+ 53.28557621023763
+ ],
+ [
+ -9.144636576237877,
+ 53.27865728614638
+ ],
+ [
+ -9.13876882009229,
+ 53.26345120822951
+ ],
+ [
+ -9.128658300749114,
+ 53.24759266864586
+ ]
+ ],
+ [
+ [
+ -8.595266214281438,
+ 51.69264788483154
+ ],
+ [
+ -8.55819409885298,
+ 51.69306638852667
+ ],
+ [
+ -8.566697711835303,
+ 51.682644706464686
+ ],
+ [
+ -8.579130708100188,
+ 51.67349700898941
+ ],
+ [
+ -8.544554623426079,
+ 51.66520531197343
+ ],
+ [
+ -8.494765061495364,
+ 51.667778759675976
+ ],
+ [
+ -8.30113898732036,
+ 51.7235009029955
+ ],
+ [
+ -8.268406960495541,
+ 51.784858633837544
+ ],
+ [
+ -8.154536388302146,
+ 51.7814362126791
+ ],
+ [
+ -8.115350159004825,
+ 51.809093351533164
+ ],
+ [
+ -8.068326683848039,
+ 51.870050153657075
+ ],
+ [
+ -8.10059769621054,
+ 51.89964422561186
+ ],
+ [
+ -8.08123508879304,
+ 51.918414974037226
+ ],
+ [
+ -8.09183842142643,
+ 51.95337589170907
+ ],
+ [
+ -8.124570448251253,
+ 51.95479649105758
+ ],
+ [
+ -8.132407694110718,
+ 51.970988142592034
+ ],
+ [
+ -8.099675667285895,
+ 51.978371865876596
+ ],
+ [
+ -8.144394070131078,
+ 52.02151390085561
+ ],
+ [
+ -8.159607547387685,
+ 52.064330945363764
+ ],
+ [
+ -8.140705954432507,
+ 52.07254939152303
+ ],
+ [
+ -8.165600735397863,
+ 52.09294727054506
+ ],
+ [
+ -8.18726841512697,
+ 52.0835993998731
+ ],
+ [
+ -8.2093971093184,
+ 52.10512489114057
+ ],
+ [
+ -8.207092037006792,
+ 52.12494181389489
+ ],
+ [
+ -8.227837687811258,
+ 52.143052434929714
+ ],
+ [
+ -8.222766528725723,
+ 52.16454923557058
+ ],
+ [
+ -8.30298304516965,
+ 52.1829264222872
+ ],
+ [
+ -8.427456949996438,
+ 52.17783811526099
+ ],
+ [
+ -8.46710419375608,
+ 52.169921813849676
+ ],
+ [
+ -8.509978538751975,
+ 52.18405707812542
+ ],
+ [
+ -8.530263175094117,
+ 52.16511480067495
+ ],
+ [
+ -8.574981577939297,
+ 52.18066502436804
+ ],
+ [
+ -8.587889982884295,
+ 52.16963906274442
+ ],
+ [
+ -8.642289689438227,
+ 52.18829678149147
+ ],
+ [
+ -8.719279104645906,
+ 52.15804472022032
+ ],
+ [
+ -8.698533453841442,
+ 52.13541291452849
+ ],
+ [
+ -8.740946784375014,
+ 52.10823956240069
+ ],
+ [
+ -8.77460084012448,
+ 52.05951253229793
+ ],
+ [
+ -8.803183736788409,
+ 52.03768144571248
+ ],
+ [
+ -8.86818677597573,
+ 52.03286015807593
+ ],
+ [
+ -8.870491848287335,
+ 52.01839317543363
+ ],
+ [
+ -8.844214023935015,
+ 51.991148511559096
+ ],
+ [
+ -8.79811257770287,
+ 51.964455373040394
+ ],
+ [
+ -8.782899100446263,
+ 51.931777239822054
+ ],
+ [
+ -8.835915763613228,
+ 51.9292188160068
+ ],
+ [
+ -8.838681850387156,
+ 51.90277322850554
+ ],
+ [
+ -8.802261707863764,
+ 51.89367006943167
+ ],
+ [
+ -8.792580404155013,
+ 51.85695425263326
+ ],
+ [
+ -8.765841565340368,
+ 51.82476769939557
+ ],
+ [
+ -8.758926348405547,
+ 51.80054140901511
+ ],
+ [
+ -8.79811257770287,
+ 51.78628456602828
+ ],
+ [
+ -8.832227647914657,
+ 51.79626482935233
+ ],
+ [
+ -8.836837792537873,
+ 51.77687258059678
+ ],
+ [
+ -8.885705325543944,
+ 51.746055989869106
+ ],
+ [
+ -8.859888515653944,
+ 51.72435763090916
+ ],
+ [
+ -8.807332866949299,
+ 51.71093369500414
+ ],
+ [
+ -8.678248817499297,
+ 51.693505197270746
+ ],
+ [
+ -8.60540853245251,
+ 51.67835695335278
+ ],
+ [
+ -8.595266214281438,
+ 51.69264788483154
+ ]
+ ],
+ [
+ [
+ -7.138279151048154,
+ 55.06131559970097
+ ],
+ [
+ -7.117994514706011,
+ 54.99631329558348
+ ],
+ [
+ -7.070049010624583,
+ 54.98784996056705
+ ],
+ [
+ -7.076503213097081,
+ 54.93332450204895
+ ],
+ [
+ -7.025791622241725,
+ 54.91159959910791
+ ],
+ [
+ -7.007351043748867,
+ 54.87872502112528
+ ],
+ [
+ -7.024869593317081,
+ 54.8511320998998
+ ],
+ [
+ -6.990754523105296,
+ 54.81661438893913
+ ],
+ [
+ -7.051608432131725,
+ 54.80598761598125
+ ],
+ [
+ -7.115228427932084,
+ 54.80651902101645
+ ],
+ [
+ -7.170550163410654,
+ 54.84847793920564
+ ],
+ [
+ -7.199133060074584,
+ 54.84316909395457
+ ],
+ [
+ -7.222183783190655,
+ 54.85803210052931
+ ],
+ [
+ -7.2111194360949415,
+ 54.862808332627324
+ ],
+ [
+ -7.212041465019584,
+ 54.882438010878076
+ ],
+ [
+ -7.279349576518514,
+ 54.880846771447125
+ ],
+ [
+ -7.273817402970655,
+ 54.91530955931841
+ ],
+ [
+ -7.3033223285592275,
+ 54.915839525718205
+ ],
+ [
+ -7.363254208661015,
+ 54.90894941815292
+ ],
+ [
+ -7.385382902852443,
+ 54.91636948513913
+ ],
+ [
+ -7.391837105324943,
+ 54.93438395336098
+ ],
+ [
+ -7.429640291235302,
+ 54.95291983389722
+ ],
+ [
+ -7.420420001988872,
+ 54.99208185118366
+ ],
+ [
+ -7.410277683817801,
+ 55.03437621938347
+ ],
+ [
+ -7.3577220351131585,
+ 55.057619110599035
+ ],
+ [
+ -7.265519142648871,
+ 55.07557028899173
+ ],
+ [
+ -7.138279151048154,
+ 55.06131559970097
+ ]
+ ],
+ [
+ [
+ -7.190498776293322,
+ 52.26144368927652
+ ],
+ [
+ -7.156844720543858,
+ 52.28443443581867
+ ],
+ [
+ -7.132871968503143,
+ 52.27343421670601
+ ],
+ [
+ -7.113278853854483,
+ 52.26779201951648
+ ],
+ [
+ -7.098295883829036,
+ 52.27230583471742
+ ],
+ [
+ -7.089767116276089,
+ 52.25509445009032
+ ],
+ [
+ -7.07109603055207,
+ 52.259186286149074
+ ],
+ [
+ -7.033984366335195,
+ 52.257352061495865
+ ],
+ [
+ -7.027530163862696,
+ 52.250720000975015
+ ],
+ [
+ -7.034675888028678,
+ 52.247756419376
+ ],
+ [
+ -7.031218279561267,
+ 52.24013487190721
+ ],
+ [
+ -7.034214873566356,
+ 52.23222966213934
+ ],
+ [
+ -7.050580886978767,
+ 52.2296884028405
+ ],
+ [
+ -7.062567262999124,
+ 52.21980434486687
+ ],
+ [
+ -7.076858711331088,
+ 52.216132562953725
+ ],
+ [
+ -7.084926464421715,
+ 52.22065163604718
+ ],
+ [
+ -7.084465449959392,
+ 52.22785295843095
+ ],
+ [
+ -7.101292477834124,
+ 52.221498911062525
+ ],
+ [
+ -7.105211100763858,
+ 52.21726237433474
+ ],
+ [
+ -7.111665303236357,
+ 52.21796849185403
+ ],
+ [
+ -7.107977187537785,
+ 52.21104805609072
+ ],
+ [
+ -7.117773744862115,
+ 52.20928246619701
+ ],
+ [
+ -7.129760120882472,
+ 52.21690931136535
+ ],
+ [
+ -7.14497359813908,
+ 52.21782726924826
+ ],
+ [
+ -7.150505771686938,
+ 52.22375823207553
+ ],
+ [
+ -7.158112510315241,
+ 52.22262858593765
+ ],
+ [
+ -7.158804032008724,
+ 52.22700580464912
+ ],
+ [
+ -7.158573524777563,
+ 52.23180612902503
+ ],
+ [
+ -7.167563306792832,
+ 52.23985256723076
+ ],
+ [
+ -7.16733279956167,
+ 52.244580933687786
+ ],
+ [
+ -7.172519212262786,
+ 52.24676851484933
+ ],
+ [
+ -7.177590371348324,
+ 52.25114335361416
+ ],
+ [
+ -7.190498776293322,
+ 52.26144368927652
+ ]
+ ]
+ ],
+ "terms_url": "http://www.eea.europa.eu/data-and-maps/data/urban-atlas",
+ "terms_text": "EEA GMES Urban Atlas"
+ },
+ {
+ "name": "Kanton Aargau 25cm (AGIS 2011)",
+ "type": "tms",
+ "template": "http://tiles.poole.ch/AGIS/OF2011/{zoom}/{x}/{y}.png",
+ "scaleExtent": [
+ 14,
+ 19
+ ],
+ "polygon": [
+ [
+ [
+ 7.7,
+ 47.12
+ ],
+ [
+ 7.7,
+ 47.63
+ ],
+ [
+ 8.5,
+ 47.63
+ ],
+ [
+ 8.5,
+ 47.12
+ ],
+ [
+ 7.7,
+ 47.12
+ ]
+ ]
+ ],
+ "terms_text": "AGIS OF2011"
+ },
+ {
+ "name": "Katastrálna mapa Slovenska (KaPor, 2010-04)",
+ "type": "tms",
+ "template": "http://www.freemap.sk/tms/kapor2/{zoom}/{x}/{y}.jpg",
+ "polygon": [
+ [
+ [
+ 19.83682,
+ 49.25529
+ ],
+ [
+ 19.80075,
+ 49.42385
+ ],
+ [
+ 19.60437,
+ 49.48058
+ ],
+ [
+ 19.49179,
+ 49.63961
+ ],
+ [
+ 19.21831,
+ 49.52604
+ ],
+ [
+ 19.16778,
+ 49.42521
+ ],
+ [
+ 19.00308,
+ 49.42236
+ ],
+ [
+ 18.97611,
+ 49.5308
+ ],
+ [
+ 18.54685,
+ 49.51425
+ ],
+ [
+ 18.31432,
+ 49.33818
+ ],
+ [
+ 18.15913,
+ 49.2961
+ ],
+ [
+ 18.05564,
+ 49.11134
+ ],
+ [
+ 17.56396,
+ 48.84938
+ ],
+ [
+ 17.17929,
+ 48.88816
+ ],
+ [
+ 17.058,
+ 48.81105
+ ],
+ [
+ 16.90426,
+ 48.61947
+ ],
+ [
+ 16.79685,
+ 48.38561
+ ],
+ [
+ 17.06762,
+ 48.01116
+ ],
+ [
+ 17.32787,
+ 47.97749
+ ],
+ [
+ 17.51699,
+ 47.82535
+ ],
+ [
+ 17.74776,
+ 47.73093
+ ],
+ [
+ 18.29515,
+ 47.72075
+ ],
+ [
+ 18.67959,
+ 47.75541
+ ],
+ [
+ 18.89755,
+ 47.81203
+ ],
+ [
+ 18.79463,
+ 47.88245
+ ],
+ [
+ 18.84318,
+ 48.04046
+ ],
+ [
+ 19.46212,
+ 48.05333
+ ],
+ [
+ 19.62064,
+ 48.22938
+ ],
+ [
+ 19.89585,
+ 48.09387
+ ],
+ [
+ 20.33766,
+ 48.2643
+ ],
+ [
+ 20.55395,
+ 48.52358
+ ],
+ [
+ 20.82335,
+ 48.55714
+ ],
+ [
+ 21.10271,
+ 48.47096
+ ],
+ [
+ 21.45863,
+ 48.55513
+ ],
+ [
+ 21.74536,
+ 48.31435
+ ],
+ [
+ 22.15293,
+ 48.37179
+ ],
+ [
+ 22.61255,
+ 49.08914
+ ],
+ [
+ 22.09997,
+ 49.23814
+ ],
+ [
+ 21.9686,
+ 49.36363
+ ],
+ [
+ 21.6244,
+ 49.46989
+ ],
+ [
+ 21.06873,
+ 49.46402
+ ],
+ [
+ 20.94336,
+ 49.31088
+ ],
+ [
+ 20.73052,
+ 49.44006
+ ],
+ [
+ 20.22804,
+ 49.41714
+ ],
+ [
+ 20.05234,
+ 49.23052
+ ],
+ [
+ 19.83682,
+ 49.25529
+ ]
+ ]
+ ],
+ "terms_url": "http://wiki.freemap.sk/KatasterPortal",
+ "terms_text": "Permisssion by UGKK"
+ },
+ {
+ "name": "Katastrálna mapa Slovenska (KaPor, 2011-05)",
+ "type": "tms",
+ "template": "http://www.freemap.sk/tms/kapor2_201105/{zoom}/{x}/{y}.jpg",
+ "polygon": [
+ [
+ [
+ 19.83682,
+ 49.25529
+ ],
+ [
+ 19.80075,
+ 49.42385
+ ],
+ [
+ 19.60437,
+ 49.48058
+ ],
+ [
+ 19.49179,
+ 49.63961
+ ],
+ [
+ 19.21831,
+ 49.52604
+ ],
+ [
+ 19.16778,
+ 49.42521
+ ],
+ [
+ 19.00308,
+ 49.42236
+ ],
+ [
+ 18.97611,
+ 49.5308
+ ],
+ [
+ 18.54685,
+ 49.51425
+ ],
+ [
+ 18.31432,
+ 49.33818
+ ],
+ [
+ 18.15913,
+ 49.2961
+ ],
+ [
+ 18.05564,
+ 49.11134
+ ],
+ [
+ 17.56396,
+ 48.84938
+ ],
+ [
+ 17.17929,
+ 48.88816
+ ],
+ [
+ 17.058,
+ 48.81105
+ ],
+ [
+ 16.90426,
+ 48.61947
+ ],
+ [
+ 16.79685,
+ 48.38561
+ ],
+ [
+ 17.06762,
+ 48.01116
+ ],
+ [
+ 17.32787,
+ 47.97749
+ ],
+ [
+ 17.51699,
+ 47.82535
+ ],
+ [
+ 17.74776,
+ 47.73093
+ ],
+ [
+ 18.29515,
+ 47.72075
+ ],
+ [
+ 18.67959,
+ 47.75541
+ ],
+ [
+ 18.89755,
+ 47.81203
+ ],
+ [
+ 18.79463,
+ 47.88245
+ ],
+ [
+ 18.84318,
+ 48.04046
+ ],
+ [
+ 19.46212,
+ 48.05333
+ ],
+ [
+ 19.62064,
+ 48.22938
+ ],
+ [
+ 19.89585,
+ 48.09387
+ ],
+ [
+ 20.33766,
+ 48.2643
+ ],
+ [
+ 20.55395,
+ 48.52358
+ ],
+ [
+ 20.82335,
+ 48.55714
+ ],
+ [
+ 21.10271,
+ 48.47096
+ ],
+ [
+ 21.45863,
+ 48.55513
+ ],
+ [
+ 21.74536,
+ 48.31435
+ ],
+ [
+ 22.15293,
+ 48.37179
+ ],
+ [
+ 22.61255,
+ 49.08914
+ ],
+ [
+ 22.09997,
+ 49.23814
+ ],
+ [
+ 21.9686,
+ 49.36363
+ ],
+ [
+ 21.6244,
+ 49.46989
+ ],
+ [
+ 21.06873,
+ 49.46402
+ ],
+ [
+ 20.94336,
+ 49.31088
+ ],
+ [
+ 20.73052,
+ 49.44006
+ ],
+ [
+ 20.22804,
+ 49.41714
+ ],
+ [
+ 20.05234,
+ 49.23052
+ ],
+ [
+ 19.83682,
+ 49.25529
+ ]
+ ]
+ ],
+ "terms_url": "http://wiki.freemap.sk/KatasterPortal",
+ "terms_text": "Permisssion by UGKK"
+ },
+ {
+ "name": "Lithuania - ORT10LT",
+ "type": "tms",
+ "template": "http://mapproxy.openmap.lt/ort10lt/g/{z}/{x}/{y}.jpeg",
+ "scaleExtent": [
+ 4,
+ 18
+ ],
+ "polygon": [
+ [
+ [
+ 21,
+ 53.88
+ ],
+ [
+ 21,
+ 56.45
+ ],
+ [
+ 26.85,
+ 56.45
+ ],
+ [
+ 26.85,
+ 53.88
+ ],
+ [
+ 21,
+ 53.88
+ ]
+ ]
+ ]
+ },
+ {
+ "name": "Locator Overlay",
+ "type": "tms",
+ "template": "http://{switch:a,b,c}.tiles.mapbox.com/v3/openstreetmap.map-btyhiati/{zoom}/{x}/{y}.png",
+ "scaleExtent": [
+ 0,
+ 16
+ ],
+ "terms_url": "http://www.mapbox.com/about/maps/",
+ "terms_text": "Terms & Feedback",
+ "default": true,
+ "overlay": true
+ },
+ {
+ "name": "MapBox Satellite",
+ "type": "tms",
+ "description": "Satellite and aerial imagery.",
+ "template": "http://{switch:a,b,c}.tiles.mapbox.com/v3/openstreetmap.map-4wvf9l0l/{zoom}/{x}/{y}.png",
+ "scaleExtent": [
+ 0,
+ 16
+ ],
+ "terms_url": "http://www.mapbox.com/about/maps/",
+ "terms_text": "Terms & Feedback",
+ "default": true
+ },
+ {
+ "name": "MapQuest Open Aerial",
+ "type": "tms",
+ "template": "http://oatile{switch:1,2,3,4}.mqcdn.com/tiles/1.0.0/sat/{zoom}/{x}/{y}.png",
+ "default": true
+ },
+ {
+ "name": "NLS - OS 1-inch 7th Series 1955-61",
+ "type": "tms",
+ "template": "http://geo.nls.uk/mapdata2/os/seventh/{zoom}/{x}/{-y}.png",
+ "scaleExtent": [
+ 5,
+ 16
+ ],
+ "polygon": [
+ [
+ [
+ -6.4585407,
+ 49.9044128
+ ],
+ [
+ -6.3872009,
+ 49.9841116
+ ],
+ [
+ -6.2296827,
+ 49.9896159
+ ],
+ [
+ -6.2171269,
+ 49.8680087
+ ],
+ [
+ -6.4551164,
+ 49.8591793
+ ]
+ ],
+ [
+ [
+ -1.4495137,
+ 60.8634056
+ ],
+ [
+ -0.7167114,
+ 60.8545122
+ ],
+ [
+ -0.7349744,
+ 60.4359756
+ ],
+ [
+ -0.6938826,
+ 60.4168218
+ ],
+ [
+ -0.7258429,
+ 60.3942735
+ ],
+ [
+ -0.7395401,
+ 60.0484714
+ ],
+ [
+ -0.9267357,
+ 60.0461918
+ ],
+ [
+ -0.9381501,
+ 59.8266157
+ ],
+ [
+ -1.4586452,
+ 59.831205
+ ],
+ [
+ -1.4455187,
+ 60.0535999
+ ],
+ [
+ -1.463211,
+ 60.0535999
+ ],
+ [
+ -1.4643524,
+ 60.0630002
+ ],
+ [
+ -1.5716475,
+ 60.0638546
+ ],
+ [
+ -1.5693646,
+ 60.1790005
+ ],
+ [
+ -1.643558,
+ 60.1807033
+ ],
+ [
+ -1.643558,
+ 60.1892162
+ ],
+ [
+ -1.8216221,
+ 60.1894999
+ ],
+ [
+ -1.8204807,
+ 60.3615507
+ ],
+ [
+ -1.8415973,
+ 60.3697345
+ ],
+ [
+ -1.8216221,
+ 60.3832755
+ ],
+ [
+ -1.8179852,
+ 60.5934321
+ ],
+ [
+ -1.453168,
+ 60.5934321
+ ]
+ ],
+ [
+ [
+ -4.9089213,
+ 54.4242078
+ ],
+ [
+ -4.282598,
+ 54.4429861
+ ],
+ [
+ -4.2535417,
+ 54.029769
+ ],
+ [
+ -4.8766366,
+ 54.0221831
+ ]
+ ],
+ [
+ [
+ -5.8667408,
+ 59.1444603
+ ],
+ [
+ -5.7759966,
+ 59.1470945
+ ],
+ [
+ -5.7720016,
+ 59.1014052
+ ],
+ [
+ -5.8621751,
+ 59.0990605
+ ]
+ ],
+ [
+ [
+ -1.7065887,
+ 59.5703599
+ ],
+ [
+ -1.5579165,
+ 59.5693481
+ ],
+ [
+ -1.5564897,
+ 59.4965695
+ ],
+ [
+ -1.7054472,
+ 59.4975834
+ ]
+ ],
+ [
+ [
+ -7.6865827,
+ 58.2940975
+ ],
+ [
+ -7.5330594,
+ 58.3006957
+ ],
+ [
+ -7.5256401,
+ 58.2646905
+ ],
+ [
+ -7.6797341,
+ 58.2577853
+ ]
+ ],
+ [
+ [
+ -4.5338281,
+ 59.0359871
+ ],
+ [
+ -4.481322,
+ 59.0371616
+ ],
+ [
+ -4.4796099,
+ 59.0186583
+ ],
+ [
+ -4.5332574,
+ 59.0180707
+ ]
+ ],
+ [
+ [
+ -8.6710698,
+ 57.8769896
+ ],
+ [
+ -8.4673234,
+ 57.8897332
+ ],
+ [
+ -8.4467775,
+ 57.7907
+ ],
+ [
+ -8.6510947,
+ 57.7779213
+ ]
+ ],
+ [
+ [
+ -5.2395519,
+ 50.3530581
+ ],
+ [
+ -5.7920073,
+ 50.3384899
+ ],
+ [
+ -5.760047,
+ 49.9317027
+ ],
+ [
+ -4.6551363,
+ 49.9581461
+ ],
+ [
+ -4.677965,
+ 50.2860073
+ ],
+ [
+ -4.244219,
+ 50.2801723
+ ],
+ [
+ -4.2487848,
+ 50.2042525
+ ],
+ [
+ -3.3812929,
+ 50.2042525
+ ],
+ [
+ -3.4223846,
+ 50.5188201
+ ],
+ [
+ -3.1164796,
+ 50.5246258
+ ],
+ [
+ -3.1210453,
+ 50.6579592
+ ],
+ [
+ -2.6736357,
+ 50.6619495
+ ],
+ [
+ -2.5953453,
+ 50.6394325
+ ],
+ [
+ -2.5905026,
+ 50.5728419
+ ],
+ [
+ -2.4791203,
+ 50.5733545
+ ],
+ [
+ -2.4758919,
+ 50.5066704
+ ],
+ [
+ -2.3967943,
+ 50.5056438
+ ],
+ [
+ -2.401637,
+ 50.5723293
+ ],
+ [
+ -1.0400296,
+ 50.5718167
+ ],
+ [
+ -1.0335726,
+ 50.7059289
+ ],
+ [
+ -0.549302,
+ 50.7038843
+ ],
+ [
+ -0.5460736,
+ 50.7886618
+ ],
+ [
+ -0.0924734,
+ 50.7856002
+ ],
+ [
+ -0.0876307,
+ 50.7181949
+ ],
+ [
+ 0.4789659,
+ 50.7120623
+ ],
+ [
+ 0.487037,
+ 50.8182467
+ ],
+ [
+ 0.9761503,
+ 50.8049868
+ ],
+ [
+ 0.9922927,
+ 51.0126311
+ ],
+ [
+ 1.4491213,
+ 51.0004424
+ ],
+ [
+ 1.4781775,
+ 51.4090372
+ ],
+ [
+ 1.0229632,
+ 51.4271576
+ ],
+ [
+ 1.035877,
+ 51.7640881
+ ],
+ [
+ 1.6105448,
+ 51.7500992
+ ],
+ [
+ 1.646058,
+ 52.1560003
+ ],
+ [
+ 1.7267698,
+ 52.1540195
+ ],
+ [
+ 1.749369,
+ 52.4481811
+ ],
+ [
+ 1.7870672,
+ 52.4811624
+ ],
+ [
+ 1.759102,
+ 52.522505
+ ],
+ [
+ 1.7933451,
+ 52.9602749
+ ],
+ [
+ 0.3798147,
+ 52.9958468
+ ],
+ [
+ 0.3895238,
+ 53.2511239
+ ],
+ [
+ 0.3478614,
+ 53.2511239
+ ],
+ [
+ 0.3238912,
+ 53.282186
+ ],
+ [
+ 0.3461492,
+ 53.6538501
+ ],
+ [
+ 0.128487,
+ 53.6575466
+ ],
+ [
+ 0.116582,
+ 53.6674703
+ ],
+ [
+ 0.1350586,
+ 54.0655731
+ ],
+ [
+ -0.0609831,
+ 54.065908
+ ],
+ [
+ -0.0414249,
+ 54.4709448
+ ],
+ [
+ -0.5662701,
+ 54.4771794
+ ],
+ [
+ -0.5592078,
+ 54.6565127
+ ],
+ [
+ -1.1665638,
+ 54.6623485
+ ],
+ [
+ -1.1637389,
+ 54.842611
+ ],
+ [
+ -1.3316194,
+ 54.843909
+ ],
+ [
+ -1.3257065,
+ 55.2470842
+ ],
+ [
+ -1.529453,
+ 55.2487108
+ ],
+ [
+ -1.524178,
+ 55.6540122
+ ],
+ [
+ -1.7638798,
+ 55.6540122
+ ],
+ [
+ -1.7733693,
+ 55.9719116
+ ],
+ [
+ -2.1607858,
+ 55.9682981
+ ],
+ [
+ -2.1543289,
+ 56.0621387
+ ],
+ [
+ -2.4578051,
+ 56.0585337
+ ],
+ [
+ -2.4190635,
+ 56.641717
+ ],
+ [
+ -2.0962164,
+ 56.641717
+ ],
+ [
+ -2.0833025,
+ 57.0021322
+ ],
+ [
+ -1.9283359,
+ 57.0126802
+ ],
+ [
+ -1.9180966,
+ 57.3590895
+ ],
+ [
+ -1.7502161,
+ 57.3625721
+ ],
+ [
+ -1.7695869,
+ 57.7608634
+ ],
+ [
+ -3.6937554,
+ 57.7574187
+ ],
+ [
+ -3.7066693,
+ 57.9806386
+ ],
+ [
+ -3.5969013,
+ 57.9772149
+ ],
+ [
+ -3.6033582,
+ 58.1207277
+ ],
+ [
+ -3.0222335,
+ 58.1309566
+ ],
+ [
+ -3.0286905,
+ 58.5410788
+ ],
+ [
+ -2.8478961,
+ 58.530968
+ ],
+ [
+ -2.86081,
+ 58.8430508
+ ],
+ [
+ -2.679624,
+ 58.8414991
+ ],
+ [
+ -2.6841897,
+ 58.885175
+ ],
+ [
+ -2.6339665,
+ 58.9052239
+ ],
+ [
+ -2.679624,
+ 58.9335083
+ ],
+ [
+ -2.6887555,
+ 59.0229231
+ ],
+ [
+ -2.3668703,
+ 59.0229231
+ ],
+ [
+ -2.3702946,
+ 59.2652861
+ ],
+ [
+ -2.3429001,
+ 59.2821989
+ ],
+ [
+ -2.3714361,
+ 59.2996861
+ ],
+ [
+ -2.3737189,
+ 59.3707083
+ ],
+ [
+ -2.3429001,
+ 59.385825
+ ],
+ [
+ -2.3725775,
+ 59.400354
+ ],
+ [
+ -2.3714361,
+ 59.4259098
+ ],
+ [
+ -3.0734196,
+ 59.4230067
+ ],
+ [
+ -3.0711368,
+ 59.3433649
+ ],
+ [
+ -3.103097,
+ 59.3311405
+ ],
+ [
+ -3.0745611,
+ 59.3136695
+ ],
+ [
+ -3.0722782,
+ 59.232603
+ ],
+ [
+ -3.3850319,
+ 59.1484167
+ ],
+ [
+ -3.3747589,
+ 58.9352753
+ ],
+ [
+ -3.5653789,
+ 58.9323303
+ ],
+ [
+ -3.554829,
+ 58.69759
+ ],
+ [
+ -5.2808579,
+ 58.6667732
+ ],
+ [
+ -5.2534159,
+ 58.3514125
+ ],
+ [
+ -5.5068508,
+ 58.3437887
+ ],
+ [
+ -5.4761804,
+ 58.0323557
+ ],
+ [
+ -5.8974958,
+ 58.0212436
+ ],
+ [
+ -5.8522972,
+ 57.6171758
+ ],
+ [
+ -6.1396311,
+ 57.6137174
+ ],
+ [
+ -6.1541592,
+ 57.7423183
+ ],
+ [
+ -6.2913692,
+ 57.7380102
+ ],
+ [
+ -6.3365678,
+ 58.1398784
+ ],
+ [
+ -6.1121891,
+ 58.1466944
+ ],
+ [
+ -6.1473778,
+ 58.5106285
+ ],
+ [
+ -6.2934817,
+ 58.5416182
+ ],
+ [
+ -6.8413713,
+ 58.2977321
+ ],
+ [
+ -7.0057382,
+ 58.2929331
+ ],
+ [
+ -7.1016189,
+ 58.2064403
+ ],
+ [
+ -7.2573132,
+ 58.1793148
+ ],
+ [
+ -7.2531092,
+ 58.1004928
+ ],
+ [
+ -7.4070698,
+ 58.0905566
+ ],
+ [
+ -7.391347,
+ 57.7911354
+ ],
+ [
+ -7.790991,
+ 57.7733151
+ ],
+ [
+ -7.7624215,
+ 57.5444165
+ ],
+ [
+ -7.698501,
+ 57.1453194
+ ],
+ [
+ -7.7943817,
+ 57.1304547
+ ],
+ [
+ -7.716764,
+ 56.7368628
+ ],
+ [
+ -7.0122067,
+ 56.7654359
+ ],
+ [
+ -6.979922,
+ 56.5453858
+ ],
+ [
+ -7.0638622,
+ 56.5453858
+ ],
+ [
+ -7.0444914,
+ 56.3562587
+ ],
+ [
+ -6.500676,
+ 56.3812917
+ ],
+ [
+ -6.4491433,
+ 55.9793649
+ ],
+ [
+ -6.563287,
+ 55.9691456
+ ],
+ [
+ -6.5393742,
+ 55.7030135
+ ],
+ [
+ -6.5595521,
+ 55.6907321
+ ],
+ [
+ -6.5345315,
+ 55.6761713
+ ],
+ [
+ -6.5216176,
+ 55.5704434
+ ],
+ [
+ -5.8912587,
+ 55.5923416
+ ],
+ [
+ -5.8560127,
+ 55.2320733
+ ],
+ [
+ -5.2293639,
+ 55.2515958
+ ],
+ [
+ -5.1837064,
+ 54.6254139
+ ],
+ [
+ -3.6655956,
+ 54.6518373
+ ],
+ [
+ -3.6496155,
+ 54.4320023
+ ],
+ [
+ -3.5400375,
+ 54.4306744
+ ],
+ [
+ -3.530906,
+ 54.0290181
+ ],
+ [
+ -3.0697656,
+ 54.030359
+ ],
+ [
+ -3.0675737,
+ 53.8221388
+ ],
+ [
+ -3.0804876,
+ 53.7739911
+ ],
+ [
+ -3.0619239,
+ 53.7477488
+ ],
+ [
+ -3.0611168,
+ 53.6737049
+ ],
+ [
+ -3.2144691,
+ 53.6708361
+ ],
+ [
+ -3.2057699,
+ 53.4226163
+ ],
+ [
+ -3.2799632,
+ 53.355224
+ ],
+ [
+ -3.2896655,
+ 53.3608441
+ ],
+ [
+ -3.3327547,
+ 53.364931
+ ],
+ [
+ -3.3761293,
+ 53.3540318
+ ],
+ [
+ -4.0888976,
+ 53.3433102
+ ],
+ [
+ -4.0945474,
+ 53.4612036
+ ],
+ [
+ -4.697412,
+ 53.4448624
+ ],
+ [
+ -4.6882805,
+ 53.3318598
+ ],
+ [
+ -4.7202407,
+ 53.2895771
+ ],
+ [
+ -4.6837148,
+ 53.2486184
+ ],
+ [
+ -4.6768661,
+ 53.1542644
+ ],
+ [
+ -4.8480816,
+ 53.1446807
+ ],
+ [
+ -4.8178336,
+ 52.7440299
+ ],
+ [
+ -4.2545751,
+ 52.7558939
+ ],
+ [
+ -4.228876,
+ 52.254876
+ ],
+ [
+ -4.2607571,
+ 52.2536408
+ ],
+ [
+ -4.2724603,
+ 52.2432637
+ ],
+ [
+ -4.8136263,
+ 52.230095
+ ],
+ [
+ -4.8079191,
+ 52.1138892
+ ],
+ [
+ -5.3889104,
+ 52.0991668
+ ],
+ [
+ -5.3717888,
+ 51.9129667
+ ],
+ [
+ -5.4208706,
+ 51.9101502
+ ],
+ [
+ -5.414022,
+ 51.8453218
+ ],
+ [
+ -5.3683645,
+ 51.8474373
+ ],
+ [
+ -5.3466772,
+ 51.5595332
+ ],
+ [
+ -4.773676,
+ 51.5758518
+ ],
+ [
+ -4.7656859,
+ 51.4885146
+ ],
+ [
+ -4.1915432,
+ 51.4970427
+ ],
+ [
+ -4.1869775,
+ 51.4344663
+ ],
+ [
+ -3.6151177,
+ 51.4444274
+ ],
+ [
+ -3.6105519,
+ 51.3746543
+ ],
+ [
+ -3.1494115,
+ 51.3789292
+ ],
+ [
+ -3.1494115,
+ 51.2919281
+ ],
+ [
+ -4.3038735,
+ 51.2745907
+ ],
+ [
+ -4.2861169,
+ 51.0508721
+ ],
+ [
+ -4.8543277,
+ 51.0366633
+ ],
+ [
+ -4.8372201,
+ 50.7212787
+ ],
+ [
+ -5.2618345,
+ 50.7082694
+ ]
+ ],
+ [
+ [
+ -2.1502671,
+ 60.171318
+ ],
+ [
+ -2.0030218,
+ 60.1696146
+ ],
+ [
+ -2.0013096,
+ 60.0997023
+ ],
+ [
+ -2.148555,
+ 60.1011247
+ ]
+ ],
+ [
+ [
+ -6.2086011,
+ 59.1163488
+ ],
+ [
+ -6.1229934,
+ 59.1166418
+ ],
+ [
+ -6.121852,
+ 59.0714985
+ ],
+ [
+ -6.2097426,
+ 59.0714985
+ ]
+ ],
+ [
+ [
+ -4.4159559,
+ 59.0889036
+ ],
+ [
+ -4.4212022,
+ 59.0770848
+ ],
+ [
+ -4.3971904,
+ 59.0779143
+ ],
+ [
+ -4.3913388,
+ 59.0897328
+ ]
+ ]
+ ],
+ "terms_url": "http://geo.nls.uk/maps/",
+ "terms_text": "National Library of Scotland Historic Maps"
+ },
+ {
+ "name": "NLS - OS 1:25k 1st Series 1937-61",
+ "type": "tms",
+ "template": "http://geo.nls.uk/mapdata2/os/25000/{zoom}/{x}/{-y}.png",
+ "scaleExtent": [
+ 5,
+ 16
+ ],
+ "polygon": [
+ [
+ [
+ -4.7157244,
+ 54.6796556
+ ],
+ [
+ -4.6850662,
+ 54.6800268
+ ],
+ [
+ -4.6835779,
+ 54.6623245
+ ],
+ [
+ -4.7148782,
+ 54.6615818
+ ]
+ ],
+ [
+ [
+ -3.7085748,
+ 58.3371151
+ ],
+ [
+ -3.5405937,
+ 58.3380684
+ ],
+ [
+ -3.5315137,
+ 58.1608002
+ ],
+ [
+ -3.3608086,
+ 58.1622372
+ ],
+ [
+ -3.3653486,
+ 58.252173
+ ],
+ [
+ -3.1610473,
+ 58.2536063
+ ],
+ [
+ -3.1610473,
+ 58.3261509
+ ],
+ [
+ -3.0275704,
+ 58.3271045
+ ],
+ [
+ -3.0366505,
+ 58.6139001
+ ],
+ [
+ -3.0021463,
+ 58.614373
+ ],
+ [
+ -3.0030543,
+ 58.7036341
+ ],
+ [
+ -3.4180129,
+ 58.7003322
+ ],
+ [
+ -3.4171049,
+ 58.6290293
+ ],
+ [
+ -3.7240109,
+ 58.6266658
+ ],
+ [
+ -3.7231029,
+ 58.606806
+ ],
+ [
+ -4.2361262,
+ 58.5992374
+ ],
+ [
+ -4.2334022,
+ 58.5092347
+ ],
+ [
+ -3.88836,
+ 58.5144516
+ ],
+ [
+ -3.8829119,
+ 58.4261327
+ ],
+ [
+ -3.7158389,
+ 58.4270836
+ ]
+ ],
+ [
+ [
+ -6.46676,
+ 49.9943621
+ ],
+ [
+ -6.1889102,
+ 50.004868
+ ],
+ [
+ -6.1789222,
+ 49.8967815
+ ],
+ [
+ -6.3169391,
+ 49.8915171
+ ],
+ [
+ -6.312399,
+ 49.8200979
+ ],
+ [
+ -6.4504159,
+ 49.8159968
+ ]
+ ],
+ [
+ [
+ -5.6453263,
+ 50.2029809
+ ],
+ [
+ -5.7801329,
+ 50.2014076
+ ],
+ [
+ -5.7637888,
+ 50.0197267
+ ],
+ [
+ -5.3479221,
+ 50.0290604
+ ],
+ [
+ -5.3388421,
+ 49.9414854
+ ],
+ [
+ -5.024672,
+ 49.9473287
+ ],
+ [
+ -5.0355681,
+ 50.0383923
+ ],
+ [
+ -5.0010639,
+ 50.0453901
+ ],
+ [
+ -4.9974319,
+ 50.1304478
+ ],
+ [
+ -4.855783,
+ 50.13394
+ ],
+ [
+ -4.861231,
+ 50.206057
+ ],
+ [
+ -4.6546085,
+ 50.2140172
+ ],
+ [
+ -4.6558926,
+ 50.3018616
+ ],
+ [
+ -4.5184924,
+ 50.3026818
+ ],
+ [
+ -4.51464,
+ 50.325642
+ ],
+ [
+ -4.2488284,
+ 50.3264618
+ ],
+ [
+ -4.2488284,
+ 50.3100631
+ ],
+ [
+ -4.10886,
+ 50.3141633
+ ],
+ [
+ -4.1062917,
+ 50.2411267
+ ],
+ [
+ -3.9648088,
+ 50.2432047
+ ],
+ [
+ -3.9640778,
+ 50.2254158
+ ],
+ [
+ -3.8522287,
+ 50.2273626
+ ],
+ [
+ -3.8503757,
+ 50.1552563
+ ],
+ [
+ -3.6921809,
+ 50.1572487
+ ],
+ [
+ -3.5414602,
+ 50.1602198
+ ],
+ [
+ -3.5465781,
+ 50.3226814
+ ],
+ [
+ -3.4068012,
+ 50.3241013
+ ],
+ [
+ -3.4165761,
+ 50.5892711
+ ],
+ [
+ -3.2746691,
+ 50.5962721
+ ],
+ [
+ -3.2749172,
+ 50.6106323
+ ],
+ [
+ -2.9971742,
+ 50.613972
+ ],
+ [
+ -2.9896008,
+ 50.688537
+ ],
+ [
+ -2.7120266,
+ 50.690565
+ ],
+ [
+ -2.710908,
+ 50.6195964
+ ],
+ [
+ -2.5695473,
+ 50.6157538
+ ],
+ [
+ -2.5651019,
+ 50.5134083
+ ],
+ [
+ -2.4014463,
+ 50.513379
+ ],
+ [
+ -2.3940583,
+ 50.6160348
+ ],
+ [
+ -2.2894123,
+ 50.6147436
+ ],
+ [
+ -2.2876184,
+ 50.6008549
+ ],
+ [
+ -2.1477855,
+ 50.6048506
+ ],
+ [
+ -2.1451013,
+ 50.5325437
+ ],
+ [
+ -1.9335117,
+ 50.5347477
+ ],
+ [
+ -1.9362139,
+ 50.6170445
+ ],
+ [
+ -1.8573025,
+ 50.6228094
+ ],
+ [
+ -1.8554865,
+ 50.709139
+ ],
+ [
+ -1.6066929,
+ 50.709139
+ ],
+ [
+ -1.6085089,
+ 50.6239615
+ ],
+ [
+ -1.4450678,
+ 50.6228094
+ ],
+ [
+ -1.4432518,
+ 50.5317039
+ ],
+ [
+ -1.1545059,
+ 50.5293951
+ ],
+ [
+ -1.1472419,
+ 50.6170485
+ ],
+ [
+ -1.011041,
+ 50.6205051
+ ],
+ [
+ -1.011041,
+ 50.7056889
+ ],
+ [
+ -0.704135,
+ 50.7045388
+ ],
+ [
+ -0.700503,
+ 50.7769401
+ ],
+ [
+ -0.5860943,
+ 50.7723465
+ ],
+ [
+ -0.5879103,
+ 50.7907181
+ ],
+ [
+ -0.0149586,
+ 50.7798108
+ ],
+ [
+ -0.0185906,
+ 50.7625836
+ ],
+ [
+ 0.0967261,
+ 50.7620093
+ ],
+ [
+ 0.0921861,
+ 50.6913106
+ ],
+ [
+ 0.3046595,
+ 50.6890096
+ ],
+ [
+ 0.3101075,
+ 50.7757917
+ ],
+ [
+ 0.5511831,
+ 50.7726336
+ ],
+ [
+ 0.5529991,
+ 50.8432096
+ ],
+ [
+ 0.695556,
+ 50.8403428
+ ],
+ [
+ 0.696464,
+ 50.8592608
+ ],
+ [
+ 0.9852099,
+ 50.8523824
+ ],
+ [
+ 0.9906579,
+ 50.9417226
+ ],
+ [
+ 1.0160821,
+ 50.9411504
+ ],
+ [
+ 1.0215301,
+ 51.0303204
+ ],
+ [
+ 1.2812198,
+ 51.0240383
+ ],
+ [
+ 1.2848518,
+ 51.0948044
+ ],
+ [
+ 1.4277848,
+ 51.0948044
+ ],
+ [
+ 1.4386809,
+ 51.2882859
+ ],
+ [
+ 1.4713691,
+ 51.2871502
+ ],
+ [
+ 1.4804492,
+ 51.3994534
+ ],
+ [
+ 1.1590151,
+ 51.4073836
+ ],
+ [
+ 1.1590151,
+ 51.3869889
+ ],
+ [
+ 1.0191822,
+ 51.3903886
+ ],
+ [
+ 1.0228142,
+ 51.4798247
+ ],
+ [
+ 0.8793493,
+ 51.4843484
+ ],
+ [
+ 0.8829813,
+ 51.5566675
+ ],
+ [
+ 1.0264462,
+ 51.5544092
+ ],
+ [
+ 1.0373423,
+ 51.7493319
+ ],
+ [
+ 1.2607117,
+ 51.7482076
+ ],
+ [
+ 1.2661598,
+ 51.8279642
+ ],
+ [
+ 1.3351682,
+ 51.8335756
+ ],
+ [
+ 1.3478803,
+ 51.9199021
+ ],
+ [
+ 1.4840812,
+ 51.9199021
+ ],
+ [
+ 1.4986093,
+ 52.0038271
+ ],
+ [
+ 1.6438902,
+ 52.0027092
+ ],
+ [
+ 1.6656823,
+ 52.270221
+ ],
+ [
+ 1.7310588,
+ 52.270221
+ ],
+ [
+ 1.7528509,
+ 52.4465637
+ ],
+ [
+ 1.8254914,
+ 52.4476705
+ ],
+ [
+ 1.8345714,
+ 52.624408
+ ],
+ [
+ 1.7690346,
+ 52.6291402
+ ],
+ [
+ 1.7741711,
+ 52.717904
+ ],
+ [
+ 1.6996925,
+ 52.721793
+ ],
+ [
+ 1.706113,
+ 52.8103687
+ ],
+ [
+ 1.559724,
+ 52.8165777
+ ],
+ [
+ 1.5648605,
+ 52.9034116
+ ],
+ [
+ 1.4184715,
+ 52.9103818
+ ],
+ [
+ 1.4223238,
+ 52.9281894
+ ],
+ [
+ 1.3439928,
+ 52.9289635
+ ],
+ [
+ 1.3491293,
+ 53.0001194
+ ],
+ [
+ 0.4515789,
+ 53.022589
+ ],
+ [
+ 0.4497629,
+ 52.9351139
+ ],
+ [
+ 0.3789384,
+ 52.9351139
+ ],
+ [
+ 0.3716744,
+ 52.846365
+ ],
+ [
+ 0.2227614,
+ 52.8496552
+ ],
+ [
+ 0.2336575,
+ 52.9329248
+ ],
+ [
+ 0.3062979,
+ 52.9351139
+ ],
+ [
+ 0.308114,
+ 53.022589
+ ],
+ [
+ 0.3807544,
+ 53.0236813
+ ],
+ [
+ 0.3993708,
+ 53.2933729
+ ],
+ [
+ 0.3248922,
+ 53.2987454
+ ],
+ [
+ 0.3274604,
+ 53.3853782
+ ],
+ [
+ 0.2504136,
+ 53.38691
+ ],
+ [
+ 0.2581183,
+ 53.4748924
+ ],
+ [
+ 0.1862079,
+ 53.4779494
+ ],
+ [
+ 0.1913443,
+ 53.6548777
+ ],
+ [
+ 0.1502527,
+ 53.6594436
+ ],
+ [
+ 0.1528209,
+ 53.7666003
+ ],
+ [
+ 0.0012954,
+ 53.7734308
+ ],
+ [
+ 0.0025796,
+ 53.8424326
+ ],
+ [
+ -0.0282392,
+ 53.841675
+ ],
+ [
+ -0.0226575,
+ 53.9311501
+ ],
+ [
+ -0.1406983,
+ 53.9322193
+ ],
+ [
+ -0.1416063,
+ 54.0219323
+ ],
+ [
+ -0.1706625,
+ 54.0235326
+ ],
+ [
+ -0.1679384,
+ 54.0949482
+ ],
+ [
+ -0.0126694,
+ 54.0912206
+ ],
+ [
+ -0.0099454,
+ 54.1811226
+ ],
+ [
+ -0.1615824,
+ 54.1837795
+ ],
+ [
+ -0.1606744,
+ 54.2029038
+ ],
+ [
+ -0.2405789,
+ 54.2034349
+ ],
+ [
+ -0.2378549,
+ 54.2936234
+ ],
+ [
+ -0.3894919,
+ 54.2941533
+ ],
+ [
+ -0.3857497,
+ 54.3837321
+ ],
+ [
+ -0.461638,
+ 54.3856364
+ ],
+ [
+ -0.4571122,
+ 54.4939066
+ ],
+ [
+ -0.6105651,
+ 54.4965434
+ ],
+ [
+ -0.6096571,
+ 54.5676704
+ ],
+ [
+ -0.7667421,
+ 54.569776
+ ],
+ [
+ -0.7640181,
+ 54.5887213
+ ],
+ [
+ -0.9192871,
+ 54.5908258
+ ],
+ [
+ -0.9148116,
+ 54.6608348
+ ],
+ [
+ -1.1485204,
+ 54.6634343
+ ],
+ [
+ -1.1472363,
+ 54.7528316
+ ],
+ [
+ -1.2268514,
+ 54.7532021
+ ],
+ [
+ -1.2265398,
+ 54.8429879
+ ],
+ [
+ -1.2991803,
+ 54.8435107
+ ],
+ [
+ -1.2991803,
+ 54.9333391
+ ],
+ [
+ -1.3454886,
+ 54.9354258
+ ],
+ [
+ -1.3436726,
+ 55.0234878
+ ],
+ [
+ -1.3772688,
+ 55.0255698
+ ],
+ [
+ -1.3754528,
+ 55.1310877
+ ],
+ [
+ -1.4997441,
+ 55.1315727
+ ],
+ [
+ -1.4969272,
+ 55.2928323
+ ],
+ [
+ -1.5296721,
+ 55.2942946
+ ],
+ [
+ -1.5258198,
+ 55.6523803
+ ],
+ [
+ -1.7659492,
+ 55.6545537
+ ],
+ [
+ -1.7620968,
+ 55.7435626
+ ],
+ [
+ -1.9688392,
+ 55.7435626
+ ],
+ [
+ -1.9698023,
+ 55.8334505
+ ],
+ [
+ -2.0019051,
+ 55.8336308
+ ],
+ [
+ -2.0015841,
+ 55.9235526
+ ],
+ [
+ -2.1604851,
+ 55.9240613
+ ],
+ [
+ -2.1613931,
+ 55.9413549
+ ],
+ [
+ -2.3202942,
+ 55.9408463
+ ],
+ [
+ -2.3212022,
+ 56.0145126
+ ],
+ [
+ -2.5627317,
+ 56.0124824
+ ],
+ [
+ -2.5645477,
+ 56.1022207
+ ],
+ [
+ -2.9658863,
+ 56.0991822
+ ],
+ [
+ -2.9667943,
+ 56.1710304
+ ],
+ [
+ -2.4828272,
+ 56.1755797
+ ],
+ [
+ -2.4882752,
+ 56.2856078
+ ],
+ [
+ -2.5645477,
+ 56.2835918
+ ],
+ [
+ -2.5681798,
+ 56.3742075
+ ],
+ [
+ -2.7261728,
+ 56.3732019
+ ],
+ [
+ -2.7316208,
+ 56.4425301
+ ],
+ [
+ -2.6190281,
+ 56.4425301
+ ],
+ [
+ -2.6153961,
+ 56.5317671
+ ],
+ [
+ -2.453771,
+ 56.5347715
+ ],
+ [
+ -2.4534686,
+ 56.6420248
+ ],
+ [
+ -2.4062523,
+ 56.6440218
+ ],
+ [
+ -2.3953562,
+ 56.7297964
+ ],
+ [
+ -2.2936596,
+ 56.7337811
+ ],
+ [
+ -2.2972916,
+ 56.807423
+ ],
+ [
+ -2.1629067,
+ 56.8113995
+ ],
+ [
+ -2.1592747,
+ 56.9958425
+ ],
+ [
+ -1.9922016,
+ 57.0017771
+ ],
+ [
+ -2.0067297,
+ 57.2737477
+ ],
+ [
+ -1.9195612,
+ 57.2757112
+ ],
+ [
+ -1.9304572,
+ 57.3482876
+ ],
+ [
+ -1.8106005,
+ 57.3443682
+ ],
+ [
+ -1.7997044,
+ 57.4402728
+ ],
+ [
+ -1.6616875,
+ 57.4285429
+ ],
+ [
+ -1.6689516,
+ 57.5398256
+ ],
+ [
+ -1.7452241,
+ 57.5398256
+ ],
+ [
+ -1.7524881,
+ 57.6313302
+ ],
+ [
+ -1.8287606,
+ 57.6332746
+ ],
+ [
+ -1.8287606,
+ 57.7187255
+ ],
+ [
+ -3.1768526,
+ 57.7171219
+ ],
+ [
+ -3.1794208,
+ 57.734264
+ ],
+ [
+ -3.5134082,
+ 57.7292105
+ ],
+ [
+ -3.5129542,
+ 57.7112683
+ ],
+ [
+ -3.7635638,
+ 57.7076303
+ ],
+ [
+ -3.7598539,
+ 57.635713
+ ],
+ [
+ -3.8420372,
+ 57.6343382
+ ],
+ [
+ -3.8458895,
+ 57.6178365
+ ],
+ [
+ -3.9794374,
+ 57.6157733
+ ],
+ [
+ -3.9794374,
+ 57.686544
+ ],
+ [
+ -3.8150708,
+ 57.689976
+ ],
+ [
+ -3.817639,
+ 57.7968899
+ ],
+ [
+ -3.6853753,
+ 57.7989429
+ ],
+ [
+ -3.6892276,
+ 57.8891567
+ ],
+ [
+ -3.9383458,
+ 57.8877915
+ ],
+ [
+ -3.9421981,
+ 57.9750592
+ ],
+ [
+ -3.6943641,
+ 57.9784638
+ ],
+ [
+ -3.6969323,
+ 58.0695865
+ ],
+ [
+ -4.0372226,
+ 58.0641528
+ ],
+ [
+ -4.0346543,
+ 57.9730163
+ ],
+ [
+ -4.2003051,
+ 57.9702923
+ ],
+ [
+ -4.1832772,
+ 57.7012869
+ ],
+ [
+ -4.518752,
+ 57.6951111
+ ],
+ [
+ -4.5122925,
+ 57.6050682
+ ],
+ [
+ -4.6789116,
+ 57.6016628
+ ],
+ [
+ -4.666022,
+ 57.4218334
+ ],
+ [
+ -3.6677696,
+ 57.4394729
+ ],
+ [
+ -3.671282,
+ 57.5295384
+ ],
+ [
+ -3.3384979,
+ 57.5331943
+ ],
+ [
+ -3.3330498,
+ 57.4438859
+ ],
+ [
+ -2.8336466,
+ 57.4485275
+ ],
+ [
+ -2.8236396,
+ 56.9992706
+ ],
+ [
+ -2.3305398,
+ 57.0006693
+ ],
+ [
+ -2.3298977,
+ 56.9113932
+ ],
+ [
+ -2.6579889,
+ 56.9092901
+ ],
+ [
+ -2.6559637,
+ 56.8198406
+ ],
+ [
+ -2.8216747,
+ 56.8188467
+ ],
+ [
+ -2.8184967,
+ 56.7295397
+ ],
+ [
+ -3.1449248,
+ 56.7265508
+ ],
+ [
+ -3.1435628,
+ 56.6362749
+ ],
+ [
+ -3.4679089,
+ 56.6350265
+ ],
+ [
+ -3.474265,
+ 56.7238108
+ ],
+ [
+ -3.8011471,
+ 56.7188284
+ ],
+ [
+ -3.785711,
+ 56.4493026
+ ],
+ [
+ -3.946428,
+ 56.4457896
+ ],
+ [
+ -3.9428873,
+ 56.2659777
+ ],
+ [
+ -4.423146,
+ 56.2588459
+ ],
+ [
+ -4.4141572,
+ 56.0815506
+ ],
+ [
+ -4.8944159,
+ 56.0708008
+ ],
+ [
+ -4.8791072,
+ 55.8896994
+ ],
+ [
+ -5.1994158,
+ 55.8821374
+ ],
+ [
+ -5.1852906,
+ 55.7023791
+ ],
+ [
+ -5.0273445,
+ 55.7067203
+ ],
+ [
+ -5.0222081,
+ 55.6879046
+ ],
+ [
+ -4.897649,
+ 55.6907999
+ ],
+ [
+ -4.8880181,
+ 55.6002822
+ ],
+ [
+ -4.7339244,
+ 55.6046348
+ ],
+ [
+ -4.7275038,
+ 55.5342082
+ ],
+ [
+ -4.773732,
+ 55.5334815
+ ],
+ [
+ -4.7685955,
+ 55.4447227
+ ],
+ [
+ -4.8494947,
+ 55.4418092
+ ],
+ [
+ -4.8405059,
+ 55.3506535
+ ],
+ [
+ -4.8700405,
+ 55.3513836
+ ],
+ [
+ -4.8649041,
+ 55.2629462
+ ],
+ [
+ -4.9920314,
+ 55.2592875
+ ],
+ [
+ -4.9907473,
+ 55.1691779
+ ],
+ [
+ -5.0600894,
+ 55.1655105
+ ],
+ [
+ -5.0575212,
+ 55.0751884
+ ],
+ [
+ -5.2141831,
+ 55.0722477
+ ],
+ [
+ -5.1991766,
+ 54.8020337
+ ],
+ [
+ -5.0466316,
+ 54.8062205
+ ],
+ [
+ -5.0502636,
+ 54.7244996
+ ],
+ [
+ -4.9703591,
+ 54.7203043
+ ],
+ [
+ -4.9776232,
+ 54.6215905
+ ],
+ [
+ -4.796022,
+ 54.6342056
+ ],
+ [
+ -4.796022,
+ 54.7307917
+ ],
+ [
+ -4.8977186,
+ 54.7265971
+ ],
+ [
+ -4.9086147,
+ 54.8145928
+ ],
+ [
+ -4.8069181,
+ 54.8166856
+ ],
+ [
+ -4.8105501,
+ 54.7915648
+ ],
+ [
+ -4.6943253,
+ 54.7978465
+ ],
+ [
+ -4.6761652,
+ 54.7244996
+ ],
+ [
+ -4.5744686,
+ 54.7244996
+ ],
+ [
+ -4.5599405,
+ 54.6426135
+ ],
+ [
+ -4.3093309,
+ 54.6384098
+ ],
+ [
+ -4.3333262,
+ 54.8229889
+ ],
+ [
+ -4.2626999,
+ 54.8274274
+ ],
+ [
+ -4.2549952,
+ 54.7348587
+ ],
+ [
+ -3.8338058,
+ 54.7400481
+ ],
+ [
+ -3.836374,
+ 54.8141105
+ ],
+ [
+ -3.7118149,
+ 54.8133706
+ ],
+ [
+ -3.7143831,
+ 54.8318654
+ ],
+ [
+ -3.5346072,
+ 54.8355633
+ ],
+ [
+ -3.5271039,
+ 54.9066228
+ ],
+ [
+ -3.4808758,
+ 54.9084684
+ ],
+ [
+ -3.4776655,
+ 54.7457328
+ ],
+ [
+ -3.5874573,
+ 54.744621
+ ],
+ [
+ -3.5836049,
+ 54.6546166
+ ],
+ [
+ -3.7107322,
+ 54.6531308
+ ],
+ [
+ -3.6991752,
+ 54.4550407
+ ],
+ [
+ -3.5746161,
+ 54.4572801
+ ],
+ [
+ -3.5759002,
+ 54.3863042
+ ],
+ [
+ -3.539945,
+ 54.3855564
+ ],
+ [
+ -3.5386609,
+ 54.297224
+ ],
+ [
+ -3.46033,
+ 54.2957252
+ ],
+ [
+ -3.4590458,
+ 54.2079507
+ ],
+ [
+ -3.3807149,
+ 54.2102037
+ ],
+ [
+ -3.381999,
+ 54.1169788
+ ],
+ [
+ -3.302878,
+ 54.1160656
+ ],
+ [
+ -3.300154,
+ 54.0276224
+ ],
+ [
+ -3.1013007,
+ 54.0292224
+ ],
+ [
+ -3.093596,
+ 53.6062158
+ ],
+ [
+ -3.2065981,
+ 53.6016441
+ ],
+ [
+ -3.2091663,
+ 53.4917753
+ ],
+ [
+ -3.2451215,
+ 53.4887193
+ ],
+ [
+ -3.2348486,
+ 53.4045934
+ ],
+ [
+ -3.5276266,
+ 53.3999999
+ ],
+ [
+ -3.5343966,
+ 53.328481
+ ],
+ [
+ -3.6488053,
+ 53.3252272
+ ],
+ [
+ -3.6527308,
+ 53.3057716
+ ],
+ [
+ -3.7271873,
+ 53.3046865
+ ],
+ [
+ -3.7315003,
+ 53.3945257
+ ],
+ [
+ -3.9108315,
+ 53.3912769
+ ],
+ [
+ -3.9071995,
+ 53.3023804
+ ],
+ [
+ -3.9521457,
+ 53.3015665
+ ],
+ [
+ -3.9566724,
+ 53.3912183
+ ],
+ [
+ -4.1081979,
+ 53.3889209
+ ],
+ [
+ -4.1081979,
+ 53.4072967
+ ],
+ [
+ -4.2622916,
+ 53.4065312
+ ],
+ [
+ -4.2635757,
+ 53.4753707
+ ],
+ [
+ -4.638537,
+ 53.4677274
+ ],
+ [
+ -4.6346847,
+ 53.3812621
+ ],
+ [
+ -4.7091633,
+ 53.3774321
+ ],
+ [
+ -4.7001745,
+ 53.1954965
+ ],
+ [
+ -4.5499332,
+ 53.1962658
+ ],
+ [
+ -4.5435126,
+ 53.1092488
+ ],
+ [
+ -4.3919871,
+ 53.1100196
+ ],
+ [
+ -4.3855666,
+ 53.0236002
+ ],
+ [
+ -4.6115707,
+ 53.0205105
+ ],
+ [
+ -4.603866,
+ 52.9284932
+ ],
+ [
+ -4.7566756,
+ 52.9261709
+ ],
+ [
+ -4.7476868,
+ 52.8370555
+ ],
+ [
+ -4.8208813,
+ 52.8331768
+ ],
+ [
+ -4.8208813,
+ 52.7446476
+ ],
+ [
+ -4.3701572,
+ 52.7539749
+ ],
+ [
+ -4.3765778,
+ 52.8401583
+ ],
+ [
+ -4.2314728,
+ 52.8455875
+ ],
+ [
+ -4.2237682,
+ 52.7586379
+ ],
+ [
+ -4.1056297,
+ 52.7570836
+ ],
+ [
+ -4.1015192,
+ 52.6714874
+ ],
+ [
+ -4.1487355,
+ 52.6703862
+ ],
+ [
+ -4.1305754,
+ 52.4008596
+ ],
+ [
+ -4.1995838,
+ 52.3986435
+ ],
+ [
+ -4.2050319,
+ 52.3110195
+ ],
+ [
+ -4.3466808,
+ 52.303247
+ ],
+ [
+ -4.3484968,
+ 52.2365693
+ ],
+ [
+ -4.4901457,
+ 52.2332328
+ ],
+ [
+ -4.4883297,
+ 52.2098702
+ ],
+ [
+ -4.6572188,
+ 52.2098702
+ ],
+ [
+ -4.6590348,
+ 52.1385939
+ ],
+ [
+ -4.7788916,
+ 52.13525
+ ],
+ [
+ -4.7807076,
+ 52.1162967
+ ],
+ [
+ -4.9259885,
+ 52.1140663
+ ],
+ [
+ -4.9187245,
+ 52.0392855
+ ],
+ [
+ -5.2365265,
+ 52.0314653
+ ],
+ [
+ -5.2347105,
+ 51.9442339
+ ],
+ [
+ -5.3473032,
+ 51.9408755
+ ],
+ [
+ -5.3473032,
+ 51.9195995
+ ],
+ [
+ -5.4925842,
+ 51.9162392
+ ],
+ [
+ -5.4853201,
+ 51.8265386
+ ],
+ [
+ -5.1983903,
+ 51.8321501
+ ],
+ [
+ -5.1893102,
+ 51.7625177
+ ],
+ [
+ -5.335825,
+ 51.7589528
+ ],
+ [
+ -5.3281204,
+ 51.6686495
+ ],
+ [
+ -5.1836575,
+ 51.6730296
+ ],
+ [
+ -5.1836575,
+ 51.6539134
+ ],
+ [
+ -5.0674452,
+ 51.6578966
+ ],
+ [
+ -5.0603825,
+ 51.5677905
+ ],
+ [
+ -4.5974594,
+ 51.5809588
+ ],
+ [
+ -4.60388,
+ 51.6726314
+ ],
+ [
+ -4.345773,
+ 51.6726314
+ ],
+ [
+ -4.3355001,
+ 51.4962964
+ ],
+ [
+ -3.9528341,
+ 51.5106841
+ ],
+ [
+ -3.9425611,
+ 51.5905333
+ ],
+ [
+ -3.8809237,
+ 51.5953198
+ ],
+ [
+ -3.8706508,
+ 51.5074872
+ ],
+ [
+ -3.7679216,
+ 51.4978952
+ ],
+ [
+ -3.7550805,
+ 51.4242895
+ ],
+ [
+ -3.5855774,
+ 51.41468
+ ],
+ [
+ -3.5778727,
+ 51.3329177
+ ],
+ [
+ -3.0796364,
+ 51.3329177
+ ],
+ [
+ -3.0770682,
+ 51.2494018
+ ],
+ [
+ -3.7216935,
+ 51.2381477
+ ],
+ [
+ -3.7216935,
+ 51.2558315
+ ],
+ [
+ -3.8706508,
+ 51.2558315
+ ],
+ [
+ -3.8680825,
+ 51.2365398
+ ],
+ [
+ -4.2944084,
+ 51.2252825
+ ],
+ [
+ -4.289272,
+ 51.0496352
+ ],
+ [
+ -4.5692089,
+ 51.0431767
+ ],
+ [
+ -4.5624122,
+ 50.9497388
+ ],
+ [
+ -4.5905604,
+ 50.9520269
+ ],
+ [
+ -4.5896524,
+ 50.8627065
+ ],
+ [
+ -4.6296046,
+ 50.8592677
+ ],
+ [
+ -4.6226411,
+ 50.7691513
+ ],
+ [
+ -4.6952816,
+ 50.7680028
+ ],
+ [
+ -4.6934655,
+ 50.6967379
+ ],
+ [
+ -4.8342064,
+ 50.6938621
+ ],
+ [
+ -4.8296664,
+ 50.6046231
+ ],
+ [
+ -4.9676833,
+ 50.6000126
+ ],
+ [
+ -4.9685913,
+ 50.5821427
+ ],
+ [
+ -5.1084242,
+ 50.5786832
+ ],
+ [
+ -5.1029762,
+ 50.4892254
+ ],
+ [
+ -5.1311244,
+ 50.48807
+ ],
+ [
+ -5.1274923,
+ 50.4163798
+ ],
+ [
+ -5.2664172,
+ 50.4117509
+ ],
+ [
+ -5.2609692,
+ 50.3034214
+ ],
+ [
+ -5.5124868,
+ 50.2976214
+ ],
+ [
+ -5.5061308,
+ 50.2256428
+ ],
+ [
+ -5.6468717,
+ 50.2209953
+ ]
+ ],
+ [
+ [
+ -5.1336607,
+ 55.2630226
+ ],
+ [
+ -5.1021999,
+ 55.2639372
+ ],
+ [
+ -5.0999527,
+ 55.2458239
+ ],
+ [
+ -5.1322161,
+ 55.2446343
+ ]
+ ],
+ [
+ [
+ -5.6431878,
+ 55.5095745
+ ],
+ [
+ -5.4861028,
+ 55.5126594
+ ],
+ [
+ -5.4715747,
+ 55.3348829
+ ],
+ [
+ -5.6277517,
+ 55.3302345
+ ]
+ ],
+ [
+ [
+ -4.7213517,
+ 51.2180246
+ ],
+ [
+ -4.5804201,
+ 51.2212417
+ ],
+ [
+ -4.5746416,
+ 51.1306736
+ ],
+ [
+ -4.7174993,
+ 51.1280545
+ ]
+ ],
+ [
+ [
+ -5.1608796,
+ 55.4153626
+ ],
+ [
+ -5.0045387,
+ 55.4190069
+ ],
+ [
+ -5.0184798,
+ 55.6153521
+ ],
+ [
+ -5.1755648,
+ 55.6138137
+ ]
+ ]
+ ],
+ "terms_url": "http://geo.nls.uk/maps/",
+ "terms_text": "National Library of Scotland Historic Maps"
+ },
+ {
+ "name": "NLS - OS 6-inch Scotland 1842-82",
+ "type": "tms",
+ "template": "http://geo.nls.uk/maps/os/six_inch/{zoom}/{x}/{-y}.png",
+ "scaleExtent": [
+ 5,
+ 16
+ ],
+ "polygon": [
+ [
+ [
+ -5.2112173,
+ 54.8018593
+ ],
+ [
+ -5.0642752,
+ 54.8026508
+ ],
+ [
+ -5.0560354,
+ 54.6305176
+ ],
+ [
+ -4.3158316,
+ 54.6297227
+ ],
+ [
+ -4.3117117,
+ 54.7448258
+ ],
+ [
+ -3.8530325,
+ 54.7464112
+ ],
+ [
+ -3.8530325,
+ 54.8034424
+ ],
+ [
+ -3.5522818,
+ 54.8034424
+ ],
+ [
+ -3.5522818,
+ 54.8374644
+ ],
+ [
+ -3.468511,
+ 54.8406277
+ ],
+ [
+ -3.4657644,
+ 54.8983158
+ ],
+ [
+ -3.3847403,
+ 54.8991055
+ ],
+ [
+ -3.3888601,
+ 54.9559214
+ ],
+ [
+ -3.0920786,
+ 54.9539468
+ ],
+ [
+ -3.0392359,
+ 54.9923274
+ ],
+ [
+ -3.0212713,
+ 55.0493881
+ ],
+ [
+ -2.9591232,
+ 55.0463283
+ ],
+ [
+ -2.9202807,
+ 55.0666294
+ ],
+ [
+ -2.7857081,
+ 55.068652
+ ],
+ [
+ -2.7852225,
+ 55.0914426
+ ],
+ [
+ -2.7337562,
+ 55.0922761
+ ],
+ [
+ -2.737616,
+ 55.151204
+ ],
+ [
+ -2.7648395,
+ 55.1510672
+ ],
+ [
+ -2.7013114,
+ 55.1722505
+ ],
+ [
+ -2.6635459,
+ 55.2192808
+ ],
+ [
+ -2.6460364,
+ 55.2188891
+ ],
+ [
+ -2.629042,
+ 55.2233933
+ ],
+ [
+ -2.6317886,
+ 55.2287781
+ ],
+ [
+ -2.6235488,
+ 55.2446345
+ ],
+ [
+ -2.6197723,
+ 55.2454663
+ ],
+ [
+ -2.6099017,
+ 55.2454174
+ ],
+ [
+ -2.6099876,
+ 55.2486466
+ ],
+ [
+ -2.6408121,
+ 55.2590039
+ ],
+ [
+ -2.6247896,
+ 55.2615631
+ ],
+ [
+ -2.6045186,
+ 55.2823081
+ ],
+ [
+ -2.5693176,
+ 55.296132
+ ],
+ [
+ -2.5479542,
+ 55.3121617
+ ],
+ [
+ -2.5091116,
+ 55.3234891
+ ],
+ [
+ -2.4780376,
+ 55.3494471
+ ],
+ [
+ -2.4421083,
+ 55.3533118
+ ],
+ [
+ -2.4052079,
+ 55.3439256
+ ],
+ [
+ -2.3726772,
+ 55.3447539
+ ],
+ [
+ -2.3221819,
+ 55.3687665
+ ],
+ [
+ -2.3241241,
+ 55.3999337
+ ],
+ [
+ -2.2576062,
+ 55.425015
+ ],
+ [
+ -2.1985547,
+ 55.4273529
+ ],
+ [
+ -2.1484296,
+ 55.4717466
+ ],
+ [
+ -2.1944348,
+ 55.484199
+ ],
+ [
+ -2.2040479,
+ 55.529306
+ ],
+ [
+ -2.2960584,
+ 55.6379722
+ ],
+ [
+ -2.2177808,
+ 55.6379722
+ ],
+ [
+ -2.1059266,
+ 55.7452498
+ ],
+ [
+ -1.9716874,
+ 55.7462161
+ ],
+ [
+ -1.9697453,
+ 55.9190951
+ ],
+ [
+ -2.1201694,
+ 55.9207115
+ ],
+ [
+ -2.1242893,
+ 55.9776133
+ ],
+ [
+ -2.3440159,
+ 55.9783817
+ ],
+ [
+ -2.3440159,
+ 56.0390349
+ ],
+ [
+ -2.5046909,
+ 56.0413363
+ ],
+ [
+ -2.500571,
+ 56.1003588
+ ],
+ [
+ -2.8823459,
+ 56.0957629
+ ],
+ [
+ -2.8823459,
+ 56.1722898
+ ],
+ [
+ -2.4126804,
+ 56.1692316
+ ],
+ [
+ -2.4181736,
+ 56.2334017
+ ],
+ [
+ -2.5857151,
+ 56.2303484
+ ],
+ [
+ -2.5719822,
+ 56.3416356
+ ],
+ [
+ -2.7257908,
+ 56.3462022
+ ],
+ [
+ -2.7312839,
+ 56.4343808
+ ],
+ [
+ -2.6928318,
+ 56.4343808
+ ],
+ [
+ -2.6928318,
+ 56.4859769
+ ],
+ [
+ -2.5307834,
+ 56.4935587
+ ],
+ [
+ -2.5307834,
+ 56.570806
+ ],
+ [
+ -2.5302878,
+ 56.6047947
+ ],
+ [
+ -2.3732428,
+ 56.6044452
+ ],
+ [
+ -2.3684363,
+ 56.7398824
+ ],
+ [
+ -2.3292975,
+ 56.7398824
+ ],
+ [
+ -2.3292975,
+ 56.7888065
+ ],
+ [
+ -2.3145346,
+ 56.7891826
+ ],
+ [
+ -2.3148779,
+ 56.7967036
+ ],
+ [
+ -2.171369,
+ 56.7967036
+ ],
+ [
+ -2.1703979,
+ 56.9710595
+ ],
+ [
+ -2.0101725,
+ 56.9694716
+ ],
+ [
+ -2.0101725,
+ 57.0846832
+ ],
+ [
+ -2.0817687,
+ 57.085349
+ ],
+ [
+ -2.0488097,
+ 57.1259963
+ ],
+ [
+ -2.0409133,
+ 57.126369
+ ],
+ [
+ -2.0383434,
+ 57.2411129
+ ],
+ [
+ -1.878118,
+ 57.2421638
+ ],
+ [
+ -1.8771469,
+ 57.2978175
+ ],
+ [
+ -1.9868771,
+ 57.2983422
+ ],
+ [
+ -1.9082209,
+ 57.3560063
+ ],
+ [
+ -1.8752048,
+ 57.3560063
+ ],
+ [
+ -1.8761758,
+ 57.3769527
+ ],
+ [
+ -1.8120857,
+ 57.4120111
+ ],
+ [
+ -1.7120661,
+ 57.4120111
+ ],
+ [
+ -1.7034646,
+ 57.6441388
+ ],
+ [
+ -1.8666032,
+ 57.6451781
+ ],
+ [
+ -1.8646611,
+ 57.7033351
+ ],
+ [
+ -3.1204292,
+ 57.7064705
+ ],
+ [
+ -3.1218025,
+ 57.7504652
+ ],
+ [
+ -3.4445259,
+ 57.7526635
+ ],
+ [
+ -3.4472724,
+ 57.7138067
+ ],
+ [
+ -3.5145637,
+ 57.7094052
+ ],
+ [
+ -3.5118171,
+ 57.6939956
+ ],
+ [
+ -3.7645027,
+ 57.6917938
+ ],
+ [
+ -3.7672492,
+ 57.6344975
+ ],
+ [
+ -3.842378,
+ 57.6288312
+ ],
+ [
+ -3.8438346,
+ 57.5965825
+ ],
+ [
+ -3.9414265,
+ 57.5916386
+ ],
+ [
+ -3.9404554,
+ 57.6537782
+ ],
+ [
+ -3.8894746,
+ 57.6529989
+ ],
+ [
+ -3.8826772,
+ 57.7676408
+ ],
+ [
+ -3.7224517,
+ 57.766087
+ ],
+ [
+ -3.7195385,
+ 57.8819201
+ ],
+ [
+ -3.9146888,
+ 57.8853352
+ ],
+ [
+ -3.916062,
+ 57.9546243
+ ],
+ [
+ -3.745774,
+ 57.9538956
+ ],
+ [
+ -3.7471473,
+ 58.0688409
+ ],
+ [
+ -3.5837256,
+ 58.0695672
+ ],
+ [
+ -3.5837256,
+ 58.1116689
+ ],
+ [
+ -3.4560096,
+ 58.1138452
+ ],
+ [
+ -3.4544646,
+ 58.228503
+ ],
+ [
+ -3.4379851,
+ 58.2283222
+ ],
+ [
+ -3.4243233,
+ 58.2427725
+ ],
+ [
+ -3.412307,
+ 58.2438567
+ ],
+ [
+ -3.3735115,
+ 58.2695057
+ ],
+ [
+ -3.3063919,
+ 58.2862038
+ ],
+ [
+ -3.1229154,
+ 58.2859395
+ ],
+ [
+ -3.123602,
+ 58.3443661
+ ],
+ [
+ -2.9574338,
+ 58.3447264
+ ],
+ [
+ -2.951254,
+ 58.6422011
+ ],
+ [
+ -2.8812162,
+ 58.6429157
+ ],
+ [
+ -2.8851004,
+ 58.8112825
+ ],
+ [
+ -2.7180775,
+ 58.8142997
+ ],
+ [
+ -2.7161354,
+ 58.8715749
+ ],
+ [
+ -2.556881,
+ 58.8775984
+ ],
+ [
+ -2.5544533,
+ 58.9923453
+ ],
+ [
+ -2.5567617,
+ 59.0483775
+ ],
+ [
+ -2.391893,
+ 59.0485996
+ ],
+ [
+ -2.3918002,
+ 59.1106996
+ ],
+ [
+ -2.4733695,
+ 59.1106996
+ ],
+ [
+ -2.5591563,
+ 59.1783028
+ ],
+ [
+ -2.5630406,
+ 59.2210646
+ ],
+ [
+ -2.3921334,
+ 59.224046
+ ],
+ [
+ -2.3911409,
+ 59.2740075
+ ],
+ [
+ -2.3639512,
+ 59.2745036
+ ],
+ [
+ -2.3658933,
+ 59.285417
+ ],
+ [
+ -2.3911409,
+ 59.284921
+ ],
+ [
+ -2.3911409,
+ 59.3379505
+ ],
+ [
+ -2.2221759,
+ 59.3381981
+ ],
+ [
+ -2.2233897,
+ 59.395965
+ ],
+ [
+ -2.3758467,
+ 59.396583
+ ],
+ [
+ -2.3899271,
+ 59.4026383
+ ],
+ [
+ -2.4008516,
+ 59.3962122
+ ],
+ [
+ -2.5637882,
+ 59.3952604
+ ],
+ [
+ -2.5637882,
+ 59.3385811
+ ],
+ [
+ -2.7320164,
+ 59.3375306
+ ],
+ [
+ -2.7333896,
+ 59.3952604
+ ],
+ [
+ -3.0726511,
+ 59.3931174
+ ],
+ [
+ -3.0703404,
+ 59.3354759
+ ],
+ [
+ -3.0753186,
+ 59.3355634
+ ],
+ [
+ -3.0749753,
+ 59.3292593
+ ],
+ [
+ -3.0698254,
+ 59.3289091
+ ],
+ [
+ -3.069801,
+ 59.2196159
+ ],
+ [
+ -3.2363384,
+ 59.2166341
+ ],
+ [
+ -3.2336751,
+ 59.1606496
+ ],
+ [
+ -3.4032766,
+ 59.1588895
+ ],
+ [
+ -3.394086,
+ 58.9279316
+ ],
+ [
+ -3.5664497,
+ 58.9259268
+ ],
+ [
+ -3.5611089,
+ 58.8679885
+ ],
+ [
+ -3.392508,
+ 58.8699339
+ ],
+ [
+ -3.3894734,
+ 58.8698711
+ ],
+ [
+ -3.3891093,
+ 58.8684905
+ ],
+ [
+ -3.3912942,
+ 58.868616
+ ],
+ [
+ -3.3884161,
+ 58.7543084
+ ],
+ [
+ -3.2238208,
+ 58.7555677
+ ],
+ [
+ -3.2189655,
+ 58.691289
+ ],
+ [
+ -3.4634113,
+ 58.6905753
+ ],
+ [
+ -3.4551716,
+ 58.6341518
+ ],
+ [
+ -3.787508,
+ 58.6341518
+ ],
+ [
+ -3.7861347,
+ 58.5769211
+ ],
+ [
+ -3.9028645,
+ 58.5733411
+ ],
+ [
+ -3.9028645,
+ 58.6477304
+ ],
+ [
+ -4.0690327,
+ 58.6491594
+ ],
+ [
+ -4.0690327,
+ 58.5912376
+ ],
+ [
+ -4.7364521,
+ 58.5933845
+ ],
+ [
+ -4.7364521,
+ 58.6505884
+ ],
+ [
+ -5.0715351,
+ 58.6520173
+ ],
+ [
+ -5.0654779,
+ 58.5325854
+ ],
+ [
+ -5.2332047,
+ 58.5316087
+ ],
+ [
+ -5.2283494,
+ 58.4719947
+ ],
+ [
+ -5.2424298,
+ 58.4719947
+ ],
+ [
+ -5.2366034,
+ 58.4089731
+ ],
+ [
+ -5.2283494,
+ 58.4094818
+ ],
+ [
+ -5.2210664,
+ 58.3005859
+ ],
+ [
+ -5.5657939,
+ 58.2959933
+ ],
+ [
+ -5.5580254,
+ 58.2372573
+ ],
+ [
+ -5.4146722,
+ 58.2401326
+ ],
+ [
+ -5.4141866,
+ 58.2267768
+ ],
+ [
+ -5.3885749,
+ 58.2272242
+ ],
+ [
+ -5.382714,
+ 58.1198615
+ ],
+ [
+ -5.51043,
+ 58.1191362
+ ],
+ [
+ -5.5114011,
+ 58.006214
+ ],
+ [
+ -5.6745397,
+ 58.0041559
+ ],
+ [
+ -5.6716266,
+ 57.9449366
+ ],
+ [
+ -5.6716266,
+ 57.8887166
+ ],
+ [
+ -5.8347652,
+ 57.8856193
+ ],
+ [
+ -5.8277052,
+ 57.5988958
+ ],
+ [
+ -6.0384259,
+ 57.5986357
+ ],
+ [
+ -6.0389115,
+ 57.6459559
+ ],
+ [
+ -6.1981658,
+ 57.6456961
+ ],
+ [
+ -6.2076123,
+ 57.7600132
+ ],
+ [
+ -6.537067,
+ 57.7544033
+ ],
+ [
+ -6.5312406,
+ 57.6402392
+ ],
+ [
+ -6.7002056,
+ 57.6360809
+ ],
+ [
+ -6.6807844,
+ 57.5236293
+ ],
+ [
+ -6.8516915,
+ 57.5152857
+ ],
+ [
+ -6.8361545,
+ 57.3385811
+ ],
+ [
+ -6.6730158,
+ 57.3438213
+ ],
+ [
+ -6.674958,
+ 57.2850883
+ ],
+ [
+ -6.5098772,
+ 57.2850883
+ ],
+ [
+ -6.4982244,
+ 57.1757637
+ ],
+ [
+ -6.3506228,
+ 57.1820797
+ ],
+ [
+ -6.3312015,
+ 57.1251969
+ ],
+ [
+ -6.1797156,
+ 57.1230884
+ ],
+ [
+ -6.1719471,
+ 57.0682265
+ ],
+ [
+ -6.4593819,
+ 57.059779
+ ],
+ [
+ -6.4564687,
+ 57.1093806
+ ],
+ [
+ -6.6671895,
+ 57.1062165
+ ],
+ [
+ -6.6730158,
+ 57.002708
+ ],
+ [
+ -6.5021087,
+ 57.0048233
+ ],
+ [
+ -6.4836097,
+ 56.8917522
+ ],
+ [
+ -6.3266104,
+ 56.8894062
+ ],
+ [
+ -6.3156645,
+ 56.7799312
+ ],
+ [
+ -6.2146739,
+ 56.775675
+ ],
+ [
+ -6.2146739,
+ 56.7234965
+ ],
+ [
+ -6.6866107,
+ 56.7224309
+ ],
+ [
+ -6.6769001,
+ 56.6114413
+ ],
+ [
+ -6.8419809,
+ 56.607166
+ ],
+ [
+ -6.8400387,
+ 56.5483307
+ ],
+ [
+ -7.1546633,
+ 56.5461895
+ ],
+ [
+ -7.1488369,
+ 56.4872592
+ ],
+ [
+ -6.9915246,
+ 56.490476
+ ],
+ [
+ -6.9876404,
+ 56.4325329
+ ],
+ [
+ -6.6827265,
+ 56.4314591
+ ],
+ [
+ -6.6769001,
+ 56.5472601
+ ],
+ [
+ -6.5292985,
+ 56.5504717
+ ],
+ [
+ -6.5234721,
+ 56.4379018
+ ],
+ [
+ -6.3661598,
+ 56.4368281
+ ],
+ [
+ -6.3642177,
+ 56.3766524
+ ],
+ [
+ -6.5273563,
+ 56.3712749
+ ],
+ [
+ -6.5171745,
+ 56.2428427
+ ],
+ [
+ -6.4869621,
+ 56.247421
+ ],
+ [
+ -6.4869621,
+ 56.1893882
+ ],
+ [
+ -6.3001945,
+ 56.1985572
+ ],
+ [
+ -6.3029411,
+ 56.2581017
+ ],
+ [
+ -5.9019401,
+ 56.256576
+ ],
+ [
+ -5.8964469,
+ 56.0960466
+ ],
+ [
+ -6.0282829,
+ 56.0883855
+ ],
+ [
+ -6.0392692,
+ 56.1557502
+ ],
+ [
+ -6.3853385,
+ 56.1542205
+ ],
+ [
+ -6.3606193,
+ 55.96099
+ ],
+ [
+ -6.2123039,
+ 55.9640647
+ ],
+ [
+ -6.2047508,
+ 55.9202269
+ ],
+ [
+ -6.5185478,
+ 55.9129158
+ ],
+ [
+ -6.5061881,
+ 55.7501763
+ ],
+ [
+ -6.6764762,
+ 55.7409005
+ ],
+ [
+ -6.6599967,
+ 55.6263176
+ ],
+ [
+ -6.3551261,
+ 55.6232161
+ ],
+ [
+ -6.3578727,
+ 55.5689002
+ ],
+ [
+ -6.0392692,
+ 55.5720059
+ ],
+ [
+ -6.0310294,
+ 55.6247669
+ ],
+ [
+ -5.7398917,
+ 55.6309694
+ ],
+ [
+ -5.7371452,
+ 55.4569279
+ ],
+ [
+ -5.8964469,
+ 55.4600426
+ ],
+ [
+ -5.8964469,
+ 55.2789864
+ ],
+ [
+ -5.4350211,
+ 55.2821151
+ ],
+ [
+ -5.4405143,
+ 55.4506979
+ ],
+ [
+ -5.2867057,
+ 55.4569279
+ ],
+ [
+ -5.3086784,
+ 55.4070602
+ ],
+ [
+ -4.9735954,
+ 55.4008223
+ ],
+ [
+ -4.9845817,
+ 55.2038242
+ ],
+ [
+ -5.1493766,
+ 55.2038242
+ ],
+ [
+ -5.1411369,
+ 55.037337
+ ],
+ [
+ -5.2152946,
+ 55.0341891
+ ]
+ ],
+ [
+ [
+ -2.1646559,
+ 60.1622059
+ ],
+ [
+ -1.9930299,
+ 60.1609801
+ ],
+ [
+ -1.9946862,
+ 60.1035151
+ ],
+ [
+ -2.1663122,
+ 60.104743
+ ]
+ ],
+ [
+ [
+ -1.5360658,
+ 59.8570831
+ ],
+ [
+ -1.3653566,
+ 59.8559841
+ ],
+ [
+ -1.366847,
+ 59.7975565
+ ],
+ [
+ -1.190628,
+ 59.7964199
+ ],
+ [
+ -1.1862046,
+ 59.9695391
+ ],
+ [
+ -1.0078652,
+ 59.9683948
+ ],
+ [
+ -1.0041233,
+ 60.114145
+ ],
+ [
+ -0.8360832,
+ 60.1130715
+ ],
+ [
+ -0.834574,
+ 60.1716772
+ ],
+ [
+ -1.0074262,
+ 60.1727795
+ ],
+ [
+ -1.0052165,
+ 60.2583924
+ ],
+ [
+ -0.8299659,
+ 60.2572778
+ ],
+ [
+ -0.826979,
+ 60.3726551
+ ],
+ [
+ -0.6507514,
+ 60.3715381
+ ],
+ [
+ -0.6477198,
+ 60.4882292
+ ],
+ [
+ -0.9984896,
+ 60.4904445
+ ],
+ [
+ -0.9970279,
+ 60.546555
+ ],
+ [
+ -0.6425288,
+ 60.5443201
+ ],
+ [
+ -0.6394896,
+ 60.6606792
+ ],
+ [
+ -0.8148133,
+ 60.6617806
+ ],
+ [
+ -0.8132987,
+ 60.7196112
+ ],
+ [
+ -0.6383298,
+ 60.7185141
+ ],
+ [
+ -0.635467,
+ 60.8275393
+ ],
+ [
+ -0.797568,
+ 60.8285523
+ ],
+ [
+ -0.9941426,
+ 60.8297807
+ ],
+ [
+ -0.9954966,
+ 60.7782667
+ ],
+ [
+ -1.1670282,
+ 60.7793403
+ ],
+ [
+ -1.1700357,
+ 60.6646181
+ ],
+ [
+ -1.5222599,
+ 60.6668304
+ ],
+ [
+ -1.5237866,
+ 60.6084426
+ ],
+ [
+ -1.6975673,
+ 60.609536
+ ],
+ [
+ -1.7021271,
+ 60.4345249
+ ],
+ [
+ -1.5260578,
+ 60.4334111
+ ],
+ [
+ -1.5275203,
+ 60.3770719
+ ],
+ [
+ -1.8751127,
+ 60.3792746
+ ],
+ [
+ -1.8781372,
+ 60.2624647
+ ],
+ [
+ -1.7019645,
+ 60.2613443
+ ],
+ [
+ -1.7049134,
+ 60.1470532
+ ],
+ [
+ -1.528659,
+ 60.1459283
+ ]
+ ],
+ [
+ [
+ -0.9847667,
+ 60.8943762
+ ],
+ [
+ -0.9860347,
+ 60.8361105
+ ],
+ [
+ -0.8078362,
+ 60.8351904
+ ],
+ [
+ -0.8065683,
+ 60.8934578
+ ]
+ ],
+ [
+ [
+ -7.7696901,
+ 56.8788231
+ ],
+ [
+ -7.7614504,
+ 56.7608274
+ ],
+ [
+ -7.6009049,
+ 56.7641903
+ ],
+ [
+ -7.5972473,
+ 56.819332
+ ],
+ [
+ -7.4479894,
+ 56.8203948
+ ],
+ [
+ -7.4489319,
+ 56.8794098
+ ],
+ [
+ -7.2841369,
+ 56.8794098
+ ],
+ [
+ -7.2813904,
+ 57.0471152
+ ],
+ [
+ -7.1303283,
+ 57.0515969
+ ],
+ [
+ -7.1330749,
+ 57.511801
+ ],
+ [
+ -6.96828,
+ 57.5147514
+ ],
+ [
+ -6.9765198,
+ 57.6854668
+ ],
+ [
+ -6.8062317,
+ 57.6913392
+ ],
+ [
+ -6.8089782,
+ 57.8041985
+ ],
+ [
+ -6.6496765,
+ 57.8071252
+ ],
+ [
+ -6.6441833,
+ 57.8612267
+ ],
+ [
+ -6.3200866,
+ 57.8626878
+ ],
+ [
+ -6.3200866,
+ 58.1551617
+ ],
+ [
+ -6.1607849,
+ 58.1522633
+ ],
+ [
+ -6.1552917,
+ 58.20874
+ ],
+ [
+ -5.9850036,
+ 58.2101869
+ ],
+ [
+ -5.9904968,
+ 58.2680163
+ ],
+ [
+ -6.1497986,
+ 58.2665717
+ ],
+ [
+ -6.1415588,
+ 58.5557514
+ ],
+ [
+ -6.3173401,
+ 58.5557514
+ ],
+ [
+ -6.3091003,
+ 58.4983923
+ ],
+ [
+ -6.4876282,
+ 58.4955218
+ ],
+ [
+ -6.4876282,
+ 58.4423768
+ ],
+ [
+ -6.6606628,
+ 58.4395018
+ ],
+ [
+ -6.6469299,
+ 58.3819525
+ ],
+ [
+ -6.8117248,
+ 58.3805125
+ ],
+ [
+ -6.8117248,
+ 58.3286357
+ ],
+ [
+ -6.9792663,
+ 58.3286357
+ ],
+ [
+ -6.9710266,
+ 58.2694608
+ ],
+ [
+ -7.1413147,
+ 58.2680163
+ ],
+ [
+ -7.1403816,
+ 58.0358742
+ ],
+ [
+ -7.3020636,
+ 58.0351031
+ ],
+ [
+ -7.3030347,
+ 57.9774797
+ ],
+ [
+ -7.1379539,
+ 57.9777372
+ ],
+ [
+ -7.1413526,
+ 57.9202792
+ ],
+ [
+ -7.1398961,
+ 57.8640206
+ ],
+ [
+ -7.3020636,
+ 57.862471
+ ],
+ [
+ -7.298484,
+ 57.7442293
+ ],
+ [
+ -7.4509193,
+ 57.7456951
+ ],
+ [
+ -7.4550392,
+ 57.6899522
+ ],
+ [
+ -7.6186131,
+ 57.6906048
+ ],
+ [
+ -7.6198341,
+ 57.7456951
+ ],
+ [
+ -7.7901222,
+ 57.7442293
+ ],
+ [
+ -7.7873756,
+ 57.6855477
+ ],
+ [
+ -7.6222332,
+ 57.6853817
+ ],
+ [
+ -7.6173779,
+ 57.5712602
+ ],
+ [
+ -7.788285,
+ 57.5709998
+ ],
+ [
+ -7.7892561,
+ 57.512109
+ ],
+ [
+ -7.7038025,
+ 57.5115874
+ ],
+ [
+ -7.6999183,
+ 57.4546902
+ ],
+ [
+ -7.5367796,
+ 57.4552126
+ ],
+ [
+ -7.5348375,
+ 57.5126306
+ ],
+ [
+ -7.4581235,
+ 57.5131521
+ ],
+ [
+ -7.4552103,
+ 57.2824165
+ ],
+ [
+ -7.6115515,
+ 57.2845158
+ ],
+ [
+ -7.6144647,
+ 57.2272651
+ ],
+ [
+ -7.451326,
+ 57.2256881
+ ],
+ [
+ -7.451326,
+ 57.1103873
+ ],
+ [
+ -7.6164068,
+ 57.1088053
+ ],
+ [
+ -7.603783,
+ 56.8792358
+ ]
+ ],
+ [
+ [
+ -1.7106618,
+ 59.5626284
+ ],
+ [
+ -1.5417509,
+ 59.562215
+ ],
+ [
+ -1.5423082,
+ 59.5037224
+ ],
+ [
+ -1.7112191,
+ 59.5041365
+ ]
+ ]
+ ],
+ "terms_url": "http://geo.nls.uk/maps/",
+ "terms_text": "National Library of Scotland Historic Maps"
+ },
+ {
+ "name": "OS 1:25k historic (OSM)",
+ "type": "tms",
+ "template": "http://ooc.openstreetmap.org/os1/{zoom}/{x}/{y}.jpg",
+ "scaleExtent": [
+ 6,
+ 17
+ ],
+ "polygon": [
+ [
+ [
+ -9,
+ 49.8
+ ],
+ [
+ -9,
+ 61.1
+ ],
+ [
+ 1.9,
+ 61.1
+ ],
+ [
+ 1.9,
+ 49.8
+ ],
+ [
+ -9,
+ 49.8
+ ]
+ ]
+ ]
+ },
+ {
+ "name": "OS New Popular Edition historic",
+ "type": "tms",
+ "template": "http://ooc.openstreetmap.org/npe/{zoom}/{x}/{y}.png",
+ "polygon": [
+ [
+ [
+ -5.8,
+ 49.8
+ ],
+ [
+ -5.8,
+ 55.8
+ ],
+ [
+ 1.9,
+ 55.8
+ ],
+ [
+ 1.9,
+ 49.8
+ ],
+ [
+ -5.8,
+ 49.8
+ ]
+ ]
+ ]
+ },
+ {
+ "name": "OS OpenData Locator",
+ "type": "tms",
+ "template": "http://tiles.itoworld.com/os_locator/{zoom}/{x}/{y}.png",
+ "polygon": [
+ [
+ [
+ -9,
+ 49.8
+ ],
+ [
+ -9,
+ 61.1
+ ],
+ [
+ 1.9,
+ 61.1
+ ],
+ [
+ 1.9,
+ 49.8
+ ],
+ [
+ -9,
+ 49.8
+ ]
+ ]
+ ],
+ "overlay": true
+ },
+ {
+ "name": "OS OpenData StreetView",
+ "type": "tms",
+ "template": "http://os.openstreetmap.org/sv/{zoom}/{x}/{y}.png",
+ "scaleExtent": [
+ 1,
+ 18
+ ],
+ "polygon": [
+ [
+ [
+ -5.8292886,
+ 50.0229734
+ ],
+ [
+ -5.8292886,
+ 50.254819
+ ],
+ [
+ -5.373356,
+ 50.254819
+ ],
+ [
+ -5.373356,
+ 50.3530588
+ ],
+ [
+ -5.1756021,
+ 50.3530588
+ ],
+ [
+ -5.1756021,
+ 50.5925406
+ ],
+ [
+ -4.9970743,
+ 50.5925406
+ ],
+ [
+ -4.9970743,
+ 50.6935617
+ ],
+ [
+ -4.7965738,
+ 50.6935617
+ ],
+ [
+ -4.7965738,
+ 50.7822112
+ ],
+ [
+ -4.6949503,
+ 50.7822112
+ ],
+ [
+ -4.6949503,
+ 50.9607371
+ ],
+ [
+ -4.6043131,
+ 50.9607371
+ ],
+ [
+ -4.6043131,
+ 51.0692066
+ ],
+ [
+ -4.3792215,
+ 51.0692066
+ ],
+ [
+ -4.3792215,
+ 51.2521782
+ ],
+ [
+ -3.9039346,
+ 51.2521782
+ ],
+ [
+ -3.9039346,
+ 51.2916998
+ ],
+ [
+ -3.7171671,
+ 51.2916998
+ ],
+ [
+ -3.7171671,
+ 51.2453014
+ ],
+ [
+ -3.1486246,
+ 51.2453014
+ ],
+ [
+ -3.1486246,
+ 51.362067
+ ],
+ [
+ -3.7446329,
+ 51.362067
+ ],
+ [
+ -3.7446329,
+ 51.4340386
+ ],
+ [
+ -3.8297769,
+ 51.4340386
+ ],
+ [
+ -3.8297769,
+ 51.5298246
+ ],
+ [
+ -4.0852091,
+ 51.5298246
+ ],
+ [
+ -4.0852091,
+ 51.4939284
+ ],
+ [
+ -4.3792215,
+ 51.4939284
+ ],
+ [
+ -4.3792215,
+ 51.5427168
+ ],
+ [
+ -5.1444195,
+ 51.5427168
+ ],
+ [
+ -5.1444195,
+ 51.6296003
+ ],
+ [
+ -5.7387103,
+ 51.6296003
+ ],
+ [
+ -5.7387103,
+ 51.774037
+ ],
+ [
+ -5.5095393,
+ 51.774037
+ ],
+ [
+ -5.5095393,
+ 51.9802596
+ ],
+ [
+ -5.198799,
+ 51.9802596
+ ],
+ [
+ -5.198799,
+ 52.0973358
+ ],
+ [
+ -4.8880588,
+ 52.0973358
+ ],
+ [
+ -4.8880588,
+ 52.1831557
+ ],
+ [
+ -4.4957492,
+ 52.1831557
+ ],
+ [
+ -4.4957492,
+ 52.2925739
+ ],
+ [
+ -4.3015365,
+ 52.2925739
+ ],
+ [
+ -4.3015365,
+ 52.3685318
+ ],
+ [
+ -4.1811246,
+ 52.3685318
+ ],
+ [
+ -4.1811246,
+ 52.7933685
+ ],
+ [
+ -4.4413696,
+ 52.7933685
+ ],
+ [
+ -4.4413696,
+ 52.7369614
+ ],
+ [
+ -4.8569847,
+ 52.7369614
+ ],
+ [
+ -4.8569847,
+ 52.9317255
+ ],
+ [
+ -4.7288044,
+ 52.9317255
+ ],
+ [
+ -4.7288044,
+ 53.5038599
+ ],
+ [
+ -4.1578191,
+ 53.5038599
+ ],
+ [
+ -4.1578191,
+ 53.4113498
+ ],
+ [
+ -3.3110518,
+ 53.4113498
+ ],
+ [
+ -3.3110518,
+ 53.5038599
+ ],
+ [
+ -3.2333667,
+ 53.5038599
+ ],
+ [
+ -3.2333667,
+ 54.0159169
+ ],
+ [
+ -3.3926211,
+ 54.0159169
+ ],
+ [
+ -3.3926211,
+ 54.1980953
+ ],
+ [
+ -3.559644,
+ 54.1980953
+ ],
+ [
+ -3.559644,
+ 54.433732
+ ],
+ [
+ -3.7188984,
+ 54.433732
+ ],
+ [
+ -3.7188984,
+ 54.721897
+ ],
+ [
+ -4.3015365,
+ 54.721897
+ ],
+ [
+ -4.3015365,
+ 54.6140739
+ ],
+ [
+ -5.0473132,
+ 54.6140739
+ ],
+ [
+ -5.0473132,
+ 54.7532915
+ ],
+ [
+ -5.2298731,
+ 54.7532915
+ ],
+ [
+ -5.2298731,
+ 55.2190799
+ ],
+ [
+ -5.6532567,
+ 55.2190799
+ ],
+ [
+ -5.6532567,
+ 55.250088
+ ],
+ [
+ -5.8979647,
+ 55.250088
+ ],
+ [
+ -5.8979647,
+ 55.4822462
+ ],
+ [
+ -6.5933212,
+ 55.4822462
+ ],
+ [
+ -6.5933212,
+ 56.3013441
+ ],
+ [
+ -7.1727691,
+ 56.3013441
+ ],
+ [
+ -7.1727691,
+ 56.5601822
+ ],
+ [
+ -6.8171722,
+ 56.5601822
+ ],
+ [
+ -6.8171722,
+ 56.6991713
+ ],
+ [
+ -6.5315276,
+ 56.6991713
+ ],
+ [
+ -6.5315276,
+ 56.9066964
+ ],
+ [
+ -6.811679,
+ 56.9066964
+ ],
+ [
+ -6.811679,
+ 57.3716613
+ ],
+ [
+ -6.8721038,
+ 57.3716613
+ ],
+ [
+ -6.8721038,
+ 57.5518893
+ ],
+ [
+ -7.0973235,
+ 57.5518893
+ ],
+ [
+ -7.0973235,
+ 57.2411085
+ ],
+ [
+ -7.1742278,
+ 57.2411085
+ ],
+ [
+ -7.1742278,
+ 56.9066964
+ ],
+ [
+ -7.3719817,
+ 56.9066964
+ ],
+ [
+ -7.3719817,
+ 56.8075885
+ ],
+ [
+ -7.5202972,
+ 56.8075885
+ ],
+ [
+ -7.5202972,
+ 56.7142479
+ ],
+ [
+ -7.8306806,
+ 56.7142479
+ ],
+ [
+ -7.8306806,
+ 56.8994605
+ ],
+ [
+ -7.6494061,
+ 56.8994605
+ ],
+ [
+ -7.6494061,
+ 57.4739617
+ ],
+ [
+ -7.8306806,
+ 57.4739617
+ ],
+ [
+ -7.8306806,
+ 57.7915584
+ ],
+ [
+ -7.4736249,
+ 57.7915584
+ ],
+ [
+ -7.4736249,
+ 58.086063
+ ],
+ [
+ -7.1879804,
+ 58.086063
+ ],
+ [
+ -7.1879804,
+ 58.367197
+ ],
+ [
+ -6.8034589,
+ 58.367197
+ ],
+ [
+ -6.8034589,
+ 58.4155786
+ ],
+ [
+ -6.638664,
+ 58.4155786
+ ],
+ [
+ -6.638664,
+ 58.4673277
+ ],
+ [
+ -6.5178143,
+ 58.4673277
+ ],
+ [
+ -6.5178143,
+ 58.5625632
+ ],
+ [
+ -6.0536224,
+ 58.5625632
+ ],
+ [
+ -6.0536224,
+ 58.1568843
+ ],
+ [
+ -6.1470062,
+ 58.1568843
+ ],
+ [
+ -6.1470062,
+ 58.1105865
+ ],
+ [
+ -6.2799798,
+ 58.1105865
+ ],
+ [
+ -6.2799798,
+ 57.7122664
+ ],
+ [
+ -6.1591302,
+ 57.7122664
+ ],
+ [
+ -6.1591302,
+ 57.6667563
+ ],
+ [
+ -5.9339104,
+ 57.6667563
+ ],
+ [
+ -5.9339104,
+ 57.8892524
+ ],
+ [
+ -5.80643,
+ 57.8892524
+ ],
+ [
+ -5.80643,
+ 57.9621767
+ ],
+ [
+ -5.6141692,
+ 57.9621767
+ ],
+ [
+ -5.6141692,
+ 58.0911236
+ ],
+ [
+ -5.490819,
+ 58.0911236
+ ],
+ [
+ -5.490819,
+ 58.3733281
+ ],
+ [
+ -5.3199118,
+ 58.3733281
+ ],
+ [
+ -5.3199118,
+ 58.75015
+ ],
+ [
+ -3.5719977,
+ 58.75015
+ ],
+ [
+ -3.5719977,
+ 59.2091788
+ ],
+ [
+ -3.1944501,
+ 59.2091788
+ ],
+ [
+ -3.1944501,
+ 59.4759216
+ ],
+ [
+ -2.243583,
+ 59.4759216
+ ],
+ [
+ -2.243583,
+ 59.1388749
+ ],
+ [
+ -2.4611012,
+ 59.1388749
+ ],
+ [
+ -2.4611012,
+ 58.8185938
+ ],
+ [
+ -2.7407675,
+ 58.8185938
+ ],
+ [
+ -2.7407675,
+ 58.5804743
+ ],
+ [
+ -2.9116746,
+ 58.5804743
+ ],
+ [
+ -2.9116746,
+ 58.1157523
+ ],
+ [
+ -3.4865441,
+ 58.1157523
+ ],
+ [
+ -3.4865441,
+ 57.740386
+ ],
+ [
+ -1.7153245,
+ 57.740386
+ ],
+ [
+ -1.7153245,
+ 57.2225558
+ ],
+ [
+ -1.9794538,
+ 57.2225558
+ ],
+ [
+ -1.9794538,
+ 56.8760742
+ ],
+ [
+ -2.1658979,
+ 56.8760742
+ ],
+ [
+ -2.1658979,
+ 56.6333186
+ ],
+ [
+ -2.3601106,
+ 56.6333186
+ ],
+ [
+ -2.3601106,
+ 56.0477521
+ ],
+ [
+ -1.9794538,
+ 56.0477521
+ ],
+ [
+ -1.9794538,
+ 55.8650949
+ ],
+ [
+ -1.4745008,
+ 55.8650949
+ ],
+ [
+ -1.4745008,
+ 55.2499926
+ ],
+ [
+ -1.3221997,
+ 55.2499926
+ ],
+ [
+ -1.3221997,
+ 54.8221737
+ ],
+ [
+ -1.0550014,
+ 54.8221737
+ ],
+ [
+ -1.0550014,
+ 54.6746628
+ ],
+ [
+ -0.6618765,
+ 54.6746628
+ ],
+ [
+ -0.6618765,
+ 54.5527463
+ ],
+ [
+ -0.3247617,
+ 54.5527463
+ ],
+ [
+ -0.3247617,
+ 54.2865195
+ ],
+ [
+ 0.0092841,
+ 54.2865195
+ ],
+ [
+ 0.0092841,
+ 53.7938518
+ ],
+ [
+ 0.2081962,
+ 53.7938518
+ ],
+ [
+ 0.2081962,
+ 53.5217726
+ ],
+ [
+ 0.4163548,
+ 53.5217726
+ ],
+ [
+ 0.4163548,
+ 53.0298851
+ ],
+ [
+ 1.4273388,
+ 53.0298851
+ ],
+ [
+ 1.4273388,
+ 52.92021
+ ],
+ [
+ 1.8333912,
+ 52.92021
+ ],
+ [
+ 1.8333912,
+ 52.042488
+ ],
+ [
+ 1.5235504,
+ 52.042488
+ ],
+ [
+ 1.5235504,
+ 51.8261335
+ ],
+ [
+ 1.2697049,
+ 51.8261335
+ ],
+ [
+ 1.2697049,
+ 51.6967453
+ ],
+ [
+ 1.116651,
+ 51.6967453
+ ],
+ [
+ 1.116651,
+ 51.440346
+ ],
+ [
+ 1.5235504,
+ 51.440346
+ ],
+ [
+ 1.5235504,
+ 51.3331831
+ ],
+ [
+ 1.4507565,
+ 51.3331831
+ ],
+ [
+ 1.4507565,
+ 51.0207553
+ ],
+ [
+ 1.0699883,
+ 51.0207553
+ ],
+ [
+ 1.0699883,
+ 50.9008416
+ ],
+ [
+ 0.7788126,
+ 50.9008416
+ ],
+ [
+ 0.7788126,
+ 50.729843
+ ],
+ [
+ -0.7255952,
+ 50.729843
+ ],
+ [
+ -0.7255952,
+ 50.7038437
+ ],
+ [
+ -1.0074383,
+ 50.7038437
+ ],
+ [
+ -1.0074383,
+ 50.5736307
+ ],
+ [
+ -2.3625252,
+ 50.5736307
+ ],
+ [
+ -2.3625252,
+ 50.4846421
+ ],
+ [
+ -2.4987805,
+ 50.4846421
+ ],
+ [
+ -2.4987805,
+ 50.5736307
+ ],
+ [
+ -3.4096378,
+ 50.5736307
+ ],
+ [
+ -3.4096378,
+ 50.2057837
+ ],
+ [
+ -3.6922446,
+ 50.2057837
+ ],
+ [
+ -3.6922446,
+ 50.1347737
+ ],
+ [
+ -5.005468,
+ 50.1347737
+ ],
+ [
+ -5.005468,
+ 49.9474456
+ ],
+ [
+ -5.2839506,
+ 49.9474456
+ ],
+ [
+ -5.2839506,
+ 50.0229734
+ ]
+ ],
+ [
+ [
+ -6.4580707,
+ 49.8673563
+ ],
+ [
+ -6.4580707,
+ 49.9499935
+ ],
+ [
+ -6.3978807,
+ 49.9499935
+ ],
+ [
+ -6.3978807,
+ 50.0053797
+ ],
+ [
+ -6.1799606,
+ 50.0053797
+ ],
+ [
+ -6.1799606,
+ 49.9168614
+ ],
+ [
+ -6.2540201,
+ 49.9168614
+ ],
+ [
+ -6.2540201,
+ 49.8673563
+ ]
+ ],
+ [
+ [
+ -5.8343165,
+ 49.932156
+ ],
+ [
+ -5.8343165,
+ 49.9754641
+ ],
+ [
+ -5.7683254,
+ 49.9754641
+ ],
+ [
+ -5.7683254,
+ 49.932156
+ ]
+ ],
+ [
+ [
+ -1.9483797,
+ 60.6885737
+ ],
+ [
+ -1.9483797,
+ 60.3058841
+ ],
+ [
+ -1.7543149,
+ 60.3058841
+ ],
+ [
+ -1.7543149,
+ 60.1284428
+ ],
+ [
+ -1.5754914,
+ 60.1284428
+ ],
+ [
+ -1.5754914,
+ 59.797917
+ ],
+ [
+ -1.0316959,
+ 59.797917
+ ],
+ [
+ -1.0316959,
+ 60.0354518
+ ],
+ [
+ -0.6626918,
+ 60.0354518
+ ],
+ [
+ -0.6626918,
+ 60.9103862
+ ],
+ [
+ -1.1034395,
+ 60.9103862
+ ],
+ [
+ -1.1034395,
+ 60.8040022
+ ],
+ [
+ -1.3506319,
+ 60.8040022
+ ],
+ [
+ -1.3506319,
+ 60.6885737
+ ]
+ ],
+ [
+ [
+ -2.203381,
+ 60.1968568
+ ],
+ [
+ -2.203381,
+ 60.0929443
+ ],
+ [
+ -1.9864011,
+ 60.0929443
+ ],
+ [
+ -1.9864011,
+ 60.1968568
+ ]
+ ],
+ [
+ [
+ -1.7543149,
+ 59.5698289
+ ],
+ [
+ -1.7543149,
+ 59.4639383
+ ],
+ [
+ -1.5373349,
+ 59.4639383
+ ],
+ [
+ -1.5373349,
+ 59.5698289
+ ]
+ ],
+ [
+ [
+ -4.5585981,
+ 59.1370518
+ ],
+ [
+ -4.5585981,
+ 58.9569099
+ ],
+ [
+ -4.2867004,
+ 58.9569099
+ ],
+ [
+ -4.2867004,
+ 59.1370518
+ ]
+ ],
+ [
+ [
+ -6.2787732,
+ 59.2025744
+ ],
+ [
+ -6.2787732,
+ 59.0227769
+ ],
+ [
+ -5.6650612,
+ 59.0227769
+ ],
+ [
+ -5.6650612,
+ 59.2025744
+ ]
+ ],
+ [
+ [
+ -8.7163482,
+ 57.9440556
+ ],
+ [
+ -8.7163482,
+ 57.7305936
+ ],
+ [
+ -8.3592926,
+ 57.7305936
+ ],
+ [
+ -8.3592926,
+ 57.9440556
+ ]
+ ],
+ [
+ [
+ -7.6077005,
+ 50.4021026
+ ],
+ [
+ -7.6077005,
+ 50.2688657
+ ],
+ [
+ -7.3907205,
+ 50.2688657
+ ],
+ [
+ -7.3907205,
+ 50.4021026
+ ]
+ ],
+ [
+ [
+ -7.7304303,
+ 58.3579902
+ ],
+ [
+ -7.7304303,
+ 58.248313
+ ],
+ [
+ -7.5134503,
+ 58.248313
+ ],
+ [
+ -7.5134503,
+ 58.3579902
+ ]
+ ]
+ ]
+ },
+ {
+ "name": "OS Scottish Popular historic",
+ "type": "tms",
+ "template": "http://ooc.openstreetmap.org/npescotland/tiles/{zoom}/{x}/{y}.jpg",
+ "scaleExtent": [
+ 6,
+ 15
+ ],
+ "polygon": [
+ [
+ [
+ -7.8,
+ 54.5
+ ],
+ [
+ -7.8,
+ 61.1
+ ],
+ [
+ -1.1,
+ 61.1
+ ],
+ [
+ -1.1,
+ 54.5
+ ],
+ [
+ -7.8,
+ 54.5
+ ]
+ ]
+ ]
+ },
+ {
+ "name": "OpenPT Map (overlay)",
+ "type": "tms",
+ "template": "http://openptmap.de/tiles/{zoom}/{x}/{y}.png",
+ "scaleExtent": [
+ 5,
+ 16
+ ],
+ "polygon": [
+ [
+ [
+ 6.4901072,
+ 53.665658
+ ],
+ [
+ 8.5665347,
+ 53.9848257
+ ],
+ [
+ 8.1339457,
+ 54.709715
+ ],
+ [
+ 8.317796,
+ 55.0952362
+ ],
+ [
+ 10.1887438,
+ 54.7783834
+ ],
+ [
+ 10.6321475,
+ 54.4778841
+ ],
+ [
+ 11.2702164,
+ 54.6221504
+ ],
+ [
+ 11.681176,
+ 54.3709243
+ ],
+ [
+ 12.0272473,
+ 54.3898199
+ ],
+ [
+ 13.3250145,
+ 54.8531617
+ ],
+ [
+ 13.9198245,
+ 54.6972173
+ ],
+ [
+ 14.2118221,
+ 54.1308273
+ ],
+ [
+ 14.493005,
+ 53.2665063
+ ],
+ [
+ 14.1577485,
+ 52.8766495
+ ],
+ [
+ 14.7525584,
+ 52.5819369
+ ],
+ [
+ 15.0986297,
+ 51.0171541
+ ],
+ [
+ 14.9364088,
+ 50.8399279
+ ],
+ [
+ 14.730929,
+ 50.7920977
+ ],
+ [
+ 14.4389313,
+ 50.8808862
+ ],
+ [
+ 12.9573138,
+ 50.3939044
+ ],
+ [
+ 12.51391,
+ 50.3939044
+ ],
+ [
+ 12.3084302,
+ 50.1173237
+ ],
+ [
+ 12.6112425,
+ 49.9088337
+ ],
+ [
+ 12.394948,
+ 49.7344006
+ ],
+ [
+ 12.7734634,
+ 49.4047626
+ ],
+ [
+ 14.1469337,
+ 48.6031036
+ ],
+ [
+ 14.6768553,
+ 48.6531391
+ ],
+ [
+ 15.0661855,
+ 49.0445497
+ ],
+ [
+ 16.2666202,
+ 48.7459305
+ ],
+ [
+ 16.4937294,
+ 48.8741286
+ ],
+ [
+ 16.904689,
+ 48.7173975
+ ],
+ [
+ 16.9371332,
+ 48.5315383
+ ],
+ [
+ 16.8384693,
+ 48.3823161
+ ],
+ [
+ 17.2017097,
+ 48.010204
+ ],
+ [
+ 17.1214145,
+ 47.6997605
+ ],
+ [
+ 16.777292,
+ 47.6585709
+ ],
+ [
+ 16.6090543,
+ 47.7460598
+ ],
+ [
+ 16.410228,
+ 47.6637214
+ ],
+ [
+ 16.7352326,
+ 47.6147714
+ ],
+ [
+ 16.5555242,
+ 47.3589738
+ ],
+ [
+ 16.4790525,
+ 46.9768539
+ ],
+ [
+ 16.0355168,
+ 46.8096295
+ ],
+ [
+ 16.0508112,
+ 46.6366332
+ ],
+ [
+ 14.9572663,
+ 46.6313822
+ ],
+ [
+ 14.574908,
+ 46.3892866
+ ],
+ [
+ 12.3954655,
+ 46.6891149
+ ],
+ [
+ 12.1507562,
+ 47.0550608
+ ],
+ [
+ 11.1183887,
+ 46.9142058
+ ],
+ [
+ 11.0342699,
+ 46.7729797
+ ],
+ [
+ 10.4836739,
+ 46.8462544
+ ],
+ [
+ 10.4607324,
+ 46.5472973
+ ],
+ [
+ 10.1013156,
+ 46.5735879
+ ],
+ [
+ 10.2007287,
+ 46.1831867
+ ],
+ [
+ 9.8948421,
+ 46.3629068
+ ],
+ [
+ 9.5966026,
+ 46.2889758
+ ],
+ [
+ 9.2983631,
+ 46.505206
+ ],
+ [
+ 9.2830687,
+ 46.2572605
+ ],
+ [
+ 9.0536537,
+ 45.7953255
+ ],
+ [
+ 8.4265861,
+ 46.2466846
+ ],
+ [
+ 8.4418804,
+ 46.4736161
+ ],
+ [
+ 7.8759901,
+ 45.9284607
+ ],
+ [
+ 7.0959791,
+ 45.8645956
+ ],
+ [
+ 6.7747981,
+ 46.1620044
+ ],
+ [
+ 6.8206811,
+ 46.4051083
+ ],
+ [
+ 6.5453831,
+ 46.4578142
+ ],
+ [
+ 6.3312624,
+ 46.3840116
+ ],
+ [
+ 6.3847926,
+ 46.2466846
+ ],
+ [
+ 5.8953739,
+ 46.0878021
+ ],
+ [
+ 6.1171418,
+ 46.3681838
+ ],
+ [
+ 6.0942003,
+ 46.5998657
+ ],
+ [
+ 6.4383228,
+ 46.7782169
+ ],
+ [
+ 6.4306756,
+ 46.9298747
+ ],
+ [
+ 7.0806847,
+ 47.3460216
+ ],
+ [
+ 6.8436226,
+ 47.3719227
+ ],
+ [
+ 6.9965659,
+ 47.5012373
+ ],
+ [
+ 7.1800979,
+ 47.5064033
+ ],
+ [
+ 7.2336281,
+ 47.439206
+ ],
+ [
+ 7.4553959,
+ 47.4805683
+ ],
+ [
+ 7.7842241,
+ 48.645735
+ ],
+ [
+ 8.1971711,
+ 49.0282701
+ ],
+ [
+ 7.6006921,
+ 49.0382974
+ ],
+ [
+ 7.4477487,
+ 49.1634679
+ ],
+ [
+ 7.2030394,
+ 49.1034255
+ ],
+ [
+ 6.6677378,
+ 49.1634679
+ ],
+ [
+ 6.6371491,
+ 49.3331933
+ ],
+ [
+ 6.3542039,
+ 49.4576194
+ ],
+ [
+ 6.5453831,
+ 49.8043366
+ ],
+ [
+ 6.2471436,
+ 49.873384
+ ],
+ [
+ 6.0789059,
+ 50.1534883
+ ],
+ [
+ 6.3618511,
+ 50.3685934
+ ],
+ [
+ 6.0865531,
+ 50.7039632
+ ],
+ [
+ 5.8800796,
+ 51.0513752
+ ],
+ [
+ 6.1247889,
+ 51.1618085
+ ],
+ [
+ 6.1936134,
+ 51.491527
+ ],
+ [
+ 5.9641984,
+ 51.7526501
+ ],
+ [
+ 6.0253758,
+ 51.8897286
+ ],
+ [
+ 6.4536171,
+ 51.8661241
+ ],
+ [
+ 6.8436226,
+ 51.9557552
+ ],
+ [
+ 6.6906793,
+ 52.0499105
+ ],
+ [
+ 7.0042131,
+ 52.2282603
+ ],
+ [
+ 7.0195074,
+ 52.4525245
+ ],
+ [
+ 6.6983264,
+ 52.4665032
+ ],
+ [
+ 6.6906793,
+ 52.6524628
+ ],
+ [
+ 7.0348017,
+ 52.6385432
+ ],
+ [
+ 7.0730376,
+ 52.8330151
+ ],
+ [
+ 7.2183337,
+ 52.9852064
+ ],
+ [
+ 7.1953922,
+ 53.3428087
+ ],
+ [
+ 7.0042131,
+ 53.3291098
+ ]
+ ]
+ ],
+ "terms_url": "http://openstreetmap.org/",
+ "terms_text": "© OpenStreetMap contributors, CC-BY-SA"
+ },
+ {
+ "name": "OpenStreetMap (Mapnik)",
+ "type": "tms",
+ "description": "The default OpenStreetMap layer.",
+ "template": "http://tile.openstreetmap.org/{zoom}/{x}/{y}.png",
+ "scaleExtent": [
+ 0,
+ 18
+ ],
+ "terms_url": "http://openstreetmap.org/",
+ "terms_text": "© OpenStreetMap contributors, CC-BY-SA",
+ "default": true
+ },
+ {
+ "name": "Pangasinán/Bulacan (Phillipines HiRes)",
+ "type": "tms",
+ "template": "http://gravitystorm.dev.openstreetmap.org/imagery/philippines/{zoom}/{x}/{y}.png",
+ "scaleExtent": [
+ 12,
+ 19
+ ],
+ "polygon": [
+ [
+ [
+ 120.336593,
+ 15.985768
+ ],
+ [
+ 120.445995,
+ 15.984
+ ],
+ [
+ 120.446134,
+ 15.974459
+ ],
+ [
+ 120.476464,
+ 15.974592
+ ],
+ [
+ 120.594247,
+ 15.946832
+ ],
+ [
+ 120.598064,
+ 16.090795
+ ],
+ [
+ 120.596537,
+ 16.197999
+ ],
+ [
+ 120.368537,
+ 16.218527
+ ],
+ [
+ 120.347576,
+ 16.042308
+ ],
+ [
+ 120.336593,
+ 15.985768
+ ]
+ ],
+ [
+ [
+ 120.8268,
+ 15.3658
+ ],
+ [
+ 121.2684,
+ 15.2602
+ ],
+ [
+ 121.2699,
+ 14.7025
+ ],
+ [
+ 120.695,
+ 14.8423
+ ]
+ ]
+ ]
+ },
+ {
+ "name": "Slovakia EEA CORINE 2006",
+ "type": "tms",
+ "template": "http://www.freemap.sk/tms/clc/{zoom}/{x}/{y}.png",
+ "polygon": [
+ [
+ [
+ 19.83682,
+ 49.25529
+ ],
+ [
+ 19.80075,
+ 49.42385
+ ],
+ [
+ 19.60437,
+ 49.48058
+ ],
+ [
+ 19.49179,
+ 49.63961
+ ],
+ [
+ 19.21831,
+ 49.52604
+ ],
+ [
+ 19.16778,
+ 49.42521
+ ],
+ [
+ 19.00308,
+ 49.42236
+ ],
+ [
+ 18.97611,
+ 49.5308
+ ],
+ [
+ 18.54685,
+ 49.51425
+ ],
+ [
+ 18.31432,
+ 49.33818
+ ],
+ [
+ 18.15913,
+ 49.2961
+ ],
+ [
+ 18.05564,
+ 49.11134
+ ],
+ [
+ 17.56396,
+ 48.84938
+ ],
+ [
+ 17.17929,
+ 48.88816
+ ],
+ [
+ 17.058,
+ 48.81105
+ ],
+ [
+ 16.90426,
+ 48.61947
+ ],
+ [
+ 16.79685,
+ 48.38561
+ ],
+ [
+ 17.06762,
+ 48.01116
+ ],
+ [
+ 17.32787,
+ 47.97749
+ ],
+ [
+ 17.51699,
+ 47.82535
+ ],
+ [
+ 17.74776,
+ 47.73093
+ ],
+ [
+ 18.29515,
+ 47.72075
+ ],
+ [
+ 18.67959,
+ 47.75541
+ ],
+ [
+ 18.89755,
+ 47.81203
+ ],
+ [
+ 18.79463,
+ 47.88245
+ ],
+ [
+ 18.84318,
+ 48.04046
+ ],
+ [
+ 19.46212,
+ 48.05333
+ ],
+ [
+ 19.62064,
+ 48.22938
+ ],
+ [
+ 19.89585,
+ 48.09387
+ ],
+ [
+ 20.33766,
+ 48.2643
+ ],
+ [
+ 20.55395,
+ 48.52358
+ ],
+ [
+ 20.82335,
+ 48.55714
+ ],
+ [
+ 21.10271,
+ 48.47096
+ ],
+ [
+ 21.45863,
+ 48.55513
+ ],
+ [
+ 21.74536,
+ 48.31435
+ ],
+ [
+ 22.15293,
+ 48.37179
+ ],
+ [
+ 22.61255,
+ 49.08914
+ ],
+ [
+ 22.09997,
+ 49.23814
+ ],
+ [
+ 21.9686,
+ 49.36363
+ ],
+ [
+ 21.6244,
+ 49.46989
+ ],
+ [
+ 21.06873,
+ 49.46402
+ ],
+ [
+ 20.94336,
+ 49.31088
+ ],
+ [
+ 20.73052,
+ 49.44006
+ ],
+ [
+ 20.22804,
+ 49.41714
+ ],
+ [
+ 20.05234,
+ 49.23052
+ ],
+ [
+ 19.83682,
+ 49.25529
+ ]
+ ]
+ ],
+ "terms_url": "http://www.eea.europa.eu/data-and-maps/data/clc-2006-vector-data-version-1",
+ "terms_text": "EEA Corine 2006"
+ },
+ {
+ "name": "Slovakia EEA GMES Urban Atlas",
+ "type": "tms",
+ "template": "http://www.freemap.sk/tms/urbanatlas/{zoom}/{x}/{y}.png",
+ "polygon": [
+ [
+ [
+ 19.83682,
+ 49.25529
+ ],
+ [
+ 19.80075,
+ 49.42385
+ ],
+ [
+ 19.60437,
+ 49.48058
+ ],
+ [
+ 19.49179,
+ 49.63961
+ ],
+ [
+ 19.21831,
+ 49.52604
+ ],
+ [
+ 19.16778,
+ 49.42521
+ ],
+ [
+ 19.00308,
+ 49.42236
+ ],
+ [
+ 18.97611,
+ 49.5308
+ ],
+ [
+ 18.54685,
+ 49.51425
+ ],
+ [
+ 18.31432,
+ 49.33818
+ ],
+ [
+ 18.15913,
+ 49.2961
+ ],
+ [
+ 18.05564,
+ 49.11134
+ ],
+ [
+ 17.56396,
+ 48.84938
+ ],
+ [
+ 17.17929,
+ 48.88816
+ ],
+ [
+ 17.058,
+ 48.81105
+ ],
+ [
+ 16.90426,
+ 48.61947
+ ],
+ [
+ 16.79685,
+ 48.38561
+ ],
+ [
+ 17.06762,
+ 48.01116
+ ],
+ [
+ 17.32787,
+ 47.97749
+ ],
+ [
+ 17.51699,
+ 47.82535
+ ],
+ [
+ 17.74776,
+ 47.73093
+ ],
+ [
+ 18.29515,
+ 47.72075
+ ],
+ [
+ 18.67959,
+ 47.75541
+ ],
+ [
+ 18.89755,
+ 47.81203
+ ],
+ [
+ 18.79463,
+ 47.88245
+ ],
+ [
+ 18.84318,
+ 48.04046
+ ],
+ [
+ 19.46212,
+ 48.05333
+ ],
+ [
+ 19.62064,
+ 48.22938
+ ],
+ [
+ 19.89585,
+ 48.09387
+ ],
+ [
+ 20.33766,
+ 48.2643
+ ],
+ [
+ 20.55395,
+ 48.52358
+ ],
+ [
+ 20.82335,
+ 48.55714
+ ],
+ [
+ 21.10271,
+ 48.47096
+ ],
+ [
+ 21.45863,
+ 48.55513
+ ],
+ [
+ 21.74536,
+ 48.31435
+ ],
+ [
+ 22.15293,
+ 48.37179
+ ],
+ [
+ 22.61255,
+ 49.08914
+ ],
+ [
+ 22.09997,
+ 49.23814
+ ],
+ [
+ 21.9686,
+ 49.36363
+ ],
+ [
+ 21.6244,
+ 49.46989
+ ],
+ [
+ 21.06873,
+ 49.46402
+ ],
+ [
+ 20.94336,
+ 49.31088
+ ],
+ [
+ 20.73052,
+ 49.44006
+ ],
+ [
+ 20.22804,
+ 49.41714
+ ],
+ [
+ 20.05234,
+ 49.23052
+ ],
+ [
+ 19.83682,
+ 49.25529
+ ]
+ ]
+ ],
+ "terms_url": "http://www.eea.europa.eu/data-and-maps/data/urban-atlas",
+ "terms_text": "EEA GMES Urban Atlas"
+ },
+ {
+ "name": "Slovakia Historic Maps",
+ "type": "tms",
+ "template": "http://tms.freemap.sk/historicke/{zoom}/{x}/{y}.png",
+ "scaleExtent": [
+ 0,
+ 12
+ ],
+ "polygon": [
+ [
+ [
+ 16.8196949,
+ 47.4927236
+ ],
+ [
+ 16.8196949,
+ 49.5030322
+ ],
+ [
+ 22.8388318,
+ 49.5030322
+ ],
+ [
+ 22.8388318,
+ 47.4927236
+ ],
+ [
+ 16.8196949,
+ 47.4927236
+ ]
+ ]
+ ]
+ },
+ {
+ "name": "South Africa CD:NGI Aerial",
+ "type": "tms",
+ "template": "http://{switch:a,b,c}.aerial.openstreetmap.org.za/ngi-aerial/{zoom}/{x}/{y}.jpg",
+ "scaleExtent": [
+ 1,
+ 22
+ ],
+ "polygon": [
+ [
+ [
+ 17.8396817,
+ -32.7983384
+ ],
+ [
+ 17.8893509,
+ -32.6972835
+ ],
+ [
+ 18.00364,
+ -32.6982187
+ ],
+ [
+ 18.0991679,
+ -32.7485251
+ ],
+ [
+ 18.2898747,
+ -32.5526645
+ ],
+ [
+ 18.2930182,
+ -32.0487089
+ ],
+ [
+ 18.105455,
+ -31.6454966
+ ],
+ [
+ 17.8529257,
+ -31.3443951
+ ],
+ [
+ 17.5480046,
+ -30.902171
+ ],
+ [
+ 17.4044506,
+ -30.6374731
+ ],
+ [
+ 17.2493704,
+ -30.3991663
+ ],
+ [
+ 16.9936977,
+ -29.6543552
+ ],
+ [
+ 16.7987996,
+ -29.19437
+ ],
+ [
+ 16.5494139,
+ -28.8415949
+ ],
+ [
+ 16.4498691,
+ -28.691876
+ ],
+ [
+ 16.4491046,
+ -28.5515766
+ ],
+ [
+ 16.6002551,
+ -28.4825663
+ ],
+ [
+ 16.7514057,
+ -28.4486958
+ ],
+ [
+ 16.7462192,
+ -28.2458973
+ ],
+ [
+ 16.8855148,
+ -28.04729
+ ],
+ [
+ 16.9929502,
+ -28.0244005
+ ],
+ [
+ 17.0529659,
+ -28.0257086
+ ],
+ [
+ 17.1007562,
+ -28.0338839
+ ],
+ [
+ 17.2011527,
+ -28.0930546
+ ],
+ [
+ 17.2026346,
+ -28.2328424
+ ],
+ [
+ 17.2474611,
+ -28.2338215
+ ],
+ [
+ 17.2507953,
+ -28.198892
+ ],
+ [
+ 17.3511919,
+ -28.1975861
+ ],
+ [
+ 17.3515624,
+ -28.2442655
+ ],
+ [
+ 17.4015754,
+ -28.2452446
+ ],
+ [
+ 17.4149122,
+ -28.3489751
+ ],
+ [
+ 17.4008345,
+ -28.547997
+ ],
+ [
+ 17.4526999,
+ -28.5489733
+ ],
+ [
+ 17.4512071,
+ -28.6495106
+ ],
+ [
+ 17.4983599,
+ -28.6872054
+ ],
+ [
+ 17.6028204,
+ -28.6830048
+ ],
+ [
+ 17.6499732,
+ -28.6967928
+ ],
+ [
+ 17.6525928,
+ -28.7381457
+ ],
+ [
+ 17.801386,
+ -28.7381457
+ ],
+ [
+ 17.9994276,
+ -28.7560602
+ ],
+ [
+ 18.0002748,
+ -28.7956172
+ ],
+ [
+ 18.1574507,
+ -28.8718055
+ ],
+ [
+ 18.5063811,
+ -28.8718055
+ ],
+ [
+ 18.6153564,
+ -28.8295875
+ ],
+ [
+ 18.9087513,
+ -28.8277516
+ ],
+ [
+ 19.1046973,
+ -28.9488548
+ ],
+ [
+ 19.1969071,
+ -28.9378513
+ ],
+ [
+ 19.243012,
+ -28.8516164
+ ],
+ [
+ 19.2314858,
+ -28.802963
+ ],
+ [
+ 19.2587296,
+ -28.7009928
+ ],
+ [
+ 19.4431493,
+ -28.6973163
+ ],
+ [
+ 19.5500289,
+ -28.4958332
+ ],
+ [
+ 19.6967264,
+ -28.4939914
+ ],
+ [
+ 19.698822,
+ -28.4479358
+ ],
+ [
+ 19.8507587,
+ -28.4433291
+ ],
+ [
+ 19.8497109,
+ -28.4027818
+ ],
+ [
+ 19.9953605,
+ -28.399095
+ ],
+ [
+ 19.9893671,
+ -24.7497859
+ ],
+ [
+ 20.2916682,
+ -24.9192346
+ ],
+ [
+ 20.4724562,
+ -25.1501701
+ ],
+ [
+ 20.6532441,
+ -25.4529449
+ ],
+ [
+ 20.733265,
+ -25.6801957
+ ],
+ [
+ 20.8281046,
+ -25.8963498
+ ],
+ [
+ 20.8429232,
+ -26.215851
+ ],
+ [
+ 20.6502804,
+ -26.4840868
+ ],
+ [
+ 20.6532441,
+ -26.8204869
+ ],
+ [
+ 21.0889134,
+ -26.846933
+ ],
+ [
+ 21.6727695,
+ -26.8389998
+ ],
+ [
+ 21.7765003,
+ -26.6696268
+ ],
+ [
+ 21.9721069,
+ -26.6431395
+ ],
+ [
+ 22.2803355,
+ -26.3274702
+ ],
+ [
+ 22.5707817,
+ -26.1333967
+ ],
+ [
+ 22.7752795,
+ -25.6775246
+ ],
+ [
+ 23.0005235,
+ -25.2761948
+ ],
+ [
+ 23.4658301,
+ -25.2735148
+ ],
+ [
+ 23.883717,
+ -25.597366
+ ],
+ [
+ 24.2364017,
+ -25.613402
+ ],
+ [
+ 24.603905,
+ -25.7896563
+ ],
+ [
+ 25.110704,
+ -25.7389432
+ ],
+ [
+ 25.5078447,
+ -25.6855376
+ ],
+ [
+ 25.6441766,
+ -25.4823781
+ ],
+ [
+ 25.8419267,
+ -24.7805437
+ ],
+ [
+ 25.846641,
+ -24.7538456
+ ],
+ [
+ 26.3928487,
+ -24.6332894
+ ],
+ [
+ 26.4739066,
+ -24.5653312
+ ],
+ [
+ 26.5089966,
+ -24.4842437
+ ],
+ [
+ 26.5861946,
+ -24.4075775
+ ],
+ [
+ 26.7300635,
+ -24.3014458
+ ],
+ [
+ 26.8567384,
+ -24.2499463
+ ],
+ [
+ 26.8574402,
+ -24.1026901
+ ],
+ [
+ 26.9215471,
+ -23.8990957
+ ],
+ [
+ 26.931831,
+ -23.8461891
+ ],
+ [
+ 26.9714827,
+ -23.6994344
+ ],
+ [
+ 27.0006074,
+ -23.6367644
+ ],
+ [
+ 27.0578041,
+ -23.6052574
+ ],
+ [
+ 27.1360547,
+ -23.5203437
+ ],
+ [
+ 27.3339623,
+ -23.3973792
+ ],
+ [
+ 27.5144057,
+ -23.3593929
+ ],
+ [
+ 27.5958145,
+ -23.2085465
+ ],
+ [
+ 27.8098634,
+ -23.0994957
+ ],
+ [
+ 27.8828506,
+ -23.0620496
+ ],
+ [
+ 27.9382928,
+ -22.9496487
+ ],
+ [
+ 28.0407556,
+ -22.8255118
+ ],
+ [
+ 28.2056786,
+ -22.6552861
+ ],
+ [
+ 28.3397223,
+ -22.5639374
+ ],
+ [
+ 28.4906093,
+ -22.560697
+ ],
+ [
+ 28.6108769,
+ -22.5400248
+ ],
+ [
+ 28.828175,
+ -22.4550173
+ ],
+ [
+ 28.9285324,
+ -22.4232328
+ ],
+ [
+ 28.9594116,
+ -22.3090081
+ ],
+ [
+ 29.0162574,
+ -22.208335
+ ],
+ [
+ 29.2324117,
+ -22.1693453
+ ],
+ [
+ 29.3531213,
+ -22.1842926
+ ],
+ [
+ 29.6548952,
+ -22.1186426
+ ],
+ [
+ 29.7777102,
+ -22.1361956
+ ],
+ [
+ 29.9292989,
+ -22.1849425
+ ],
+ [
+ 30.1166795,
+ -22.2830348
+ ],
+ [
+ 30.2563377,
+ -22.2914767
+ ],
+ [
+ 30.3033582,
+ -22.3395204
+ ],
+ [
+ 30.5061784,
+ -22.3057617
+ ],
+ [
+ 30.8374279,
+ -22.284983
+ ],
+ [
+ 31.0058599,
+ -22.3077095
+ ],
+ [
+ 31.1834152,
+ -22.3232913
+ ],
+ [
+ 31.2930586,
+ -22.3674647
+ ],
+ [
+ 31.5680579,
+ -23.1903385
+ ],
+ [
+ 31.5568311,
+ -23.4430809
+ ],
+ [
+ 31.6931122,
+ -23.6175209
+ ],
+ [
+ 31.7119696,
+ -23.741136
+ ],
+ [
+ 31.7774743,
+ -23.8800628
+ ],
+ [
+ 31.8886337,
+ -23.9481098
+ ],
+ [
+ 31.9144386,
+ -24.1746736
+ ],
+ [
+ 31.9948307,
+ -24.3040878
+ ],
+ [
+ 32.0166656,
+ -24.4405988
+ ],
+ [
+ 32.0077331,
+ -24.6536578
+ ],
+ [
+ 32.019643,
+ -24.9140701
+ ],
+ [
+ 32.035523,
+ -25.0849767
+ ],
+ [
+ 32.019643,
+ -25.3821442
+ ],
+ [
+ 31.9928457,
+ -25.4493771
+ ],
+ [
+ 31.9997931,
+ -25.5165725
+ ],
+ [
+ 32.0057481,
+ -25.6078978
+ ],
+ [
+ 32.0057481,
+ -25.6624806
+ ],
+ [
+ 31.9362735,
+ -25.8403721
+ ],
+ [
+ 31.9809357,
+ -25.9546537
+ ],
+ [
+ 31.8687838,
+ -26.0037251
+ ],
+ [
+ 31.4162062,
+ -25.7277683
+ ],
+ [
+ 31.3229117,
+ -25.7438611
+ ],
+ [
+ 31.2504595,
+ -25.8296526
+ ],
+ [
+ 31.1393001,
+ -25.9162746
+ ],
+ [
+ 31.1164727,
+ -25.9912361
+ ],
+ [
+ 30.9656135,
+ -26.2665756
+ ],
+ [
+ 30.8921689,
+ -26.3279703
+ ],
+ [
+ 30.8534616,
+ -26.4035568
+ ],
+ [
+ 30.8226943,
+ -26.4488849
+ ],
+ [
+ 30.8022583,
+ -26.5240694
+ ],
+ [
+ 30.8038369,
+ -26.8082089
+ ],
+ [
+ 30.9020939,
+ -26.7807451
+ ],
+ [
+ 30.9100338,
+ -26.8489495
+ ],
+ [
+ 30.9824859,
+ -26.9082627
+ ],
+ [
+ 30.976531,
+ -27.0029222
+ ],
+ [
+ 31.0034434,
+ -27.0441587
+ ],
+ [
+ 31.1543322,
+ -27.1980416
+ ],
+ [
+ 31.5015607,
+ -27.311117
+ ],
+ [
+ 31.9700183,
+ -27.311117
+ ],
+ [
+ 31.9700183,
+ -27.120472
+ ],
+ [
+ 31.9769658,
+ -27.050664
+ ],
+ [
+ 32.0002464,
+ -26.7983892
+ ],
+ [
+ 32.1069826,
+ -26.7984645
+ ],
+ [
+ 32.3114546,
+ -26.8479493
+ ],
+ [
+ 32.899986,
+ -26.8516059
+ ],
+ [
+ 32.886091,
+ -26.9816971
+ ],
+ [
+ 32.709427,
+ -27.4785436
+ ],
+ [
+ 32.6240724,
+ -27.7775144
+ ],
+ [
+ 32.5813951,
+ -28.07479
+ ],
+ [
+ 32.5387178,
+ -28.2288046
+ ],
+ [
+ 32.4275584,
+ -28.5021568
+ ],
+ [
+ 32.3640388,
+ -28.5945699
+ ],
+ [
+ 32.0702603,
+ -28.8469827
+ ],
+ [
+ 31.9878832,
+ -28.9069497
+ ],
+ [
+ 31.7764818,
+ -28.969487
+ ],
+ [
+ 31.4638459,
+ -29.2859343
+ ],
+ [
+ 31.359634,
+ -29.3854348
+ ],
+ [
+ 31.1680825,
+ -29.6307408
+ ],
+ [
+ 31.064863,
+ -29.7893535
+ ],
+ [
+ 31.0534493,
+ -29.8470469
+ ],
+ [
+ 31.0669933,
+ -29.8640319
+ ],
+ [
+ 31.0455459,
+ -29.9502017
+ ],
+ [
+ 30.9518556,
+ -30.0033946
+ ],
+ [
+ 30.8651833,
+ -30.1024093
+ ],
+ [
+ 30.7244725,
+ -30.392502
+ ],
+ [
+ 30.3556256,
+ -30.9308873
+ ],
+ [
+ 30.0972364,
+ -31.2458274
+ ],
+ [
+ 29.8673136,
+ -31.4304296
+ ],
+ [
+ 29.7409393,
+ -31.5014699
+ ],
+ [
+ 29.481312,
+ -31.6978686
+ ],
+ [
+ 28.8943171,
+ -32.2898903
+ ],
+ [
+ 28.5497137,
+ -32.5894641
+ ],
+ [
+ 28.1436499,
+ -32.8320732
+ ],
+ [
+ 28.0748735,
+ -32.941689
+ ],
+ [
+ 27.8450942,
+ -33.082869
+ ],
+ [
+ 27.3757956,
+ -33.3860685
+ ],
+ [
+ 26.8805407,
+ -33.6458951
+ ],
+ [
+ 26.5916871,
+ -33.7480756
+ ],
+ [
+ 26.4527308,
+ -33.7935795
+ ],
+ [
+ 26.206754,
+ -33.7548943
+ ],
+ [
+ 26.0077897,
+ -33.7223961
+ ],
+ [
+ 25.8055494,
+ -33.7524272
+ ],
+ [
+ 25.7511073,
+ -33.8006512
+ ],
+ [
+ 25.6529079,
+ -33.8543597
+ ],
+ [
+ 25.6529079,
+ -33.9469768
+ ],
+ [
+ 25.7195789,
+ -34.0040115
+ ],
+ [
+ 25.7202807,
+ -34.0511235
+ ],
+ [
+ 25.5508915,
+ -34.063151
+ ],
+ [
+ 25.3504571,
+ -34.0502627
+ ],
+ [
+ 25.2810609,
+ -34.0020322
+ ],
+ [
+ 25.0476316,
+ -33.9994588
+ ],
+ [
+ 24.954724,
+ -34.0043594
+ ],
+ [
+ 24.9496586,
+ -34.1010363
+ ],
+ [
+ 24.8770358,
+ -34.1506456
+ ],
+ [
+ 24.8762914,
+ -34.2005281
+ ],
+ [
+ 24.8532574,
+ -34.2189562
+ ],
+ [
+ 24.7645287,
+ -34.2017946
+ ],
+ [
+ 24.5001356,
+ -34.2003254
+ ],
+ [
+ 24.3486733,
+ -34.1163824
+ ],
+ [
+ 24.1988819,
+ -34.1019039
+ ],
+ [
+ 23.9963377,
+ -34.0514443
+ ],
+ [
+ 23.8017509,
+ -34.0524332
+ ],
+ [
+ 23.7493589,
+ -34.0111855
+ ],
+ [
+ 23.4973536,
+ -34.009014
+ ],
+ [
+ 23.4155191,
+ -34.0434586
+ ],
+ [
+ 23.4154284,
+ -34.1140433
+ ],
+ [
+ 22.9000853,
+ -34.0993009
+ ],
+ [
+ 22.8412418,
+ -34.0547911
+ ],
+ [
+ 22.6470321,
+ -34.0502627
+ ],
+ [
+ 22.6459843,
+ -34.0072768
+ ],
+ [
+ 22.570016,
+ -34.0064081
+ ],
+ [
+ 22.5050499,
+ -34.0645866
+ ],
+ [
+ 22.2519968,
+ -34.0645866
+ ],
+ [
+ 22.2221334,
+ -34.1014701
+ ],
+ [
+ 22.1621197,
+ -34.1057019
+ ],
+ [
+ 22.1712431,
+ -34.1521766
+ ],
+ [
+ 22.1576913,
+ -34.2180897
+ ],
+ [
+ 22.0015632,
+ -34.2172232
+ ],
+ [
+ 21.9496952,
+ -34.3220009
+ ],
+ [
+ 21.8611528,
+ -34.4007145
+ ],
+ [
+ 21.5614708,
+ -34.4020114
+ ],
+ [
+ 21.5468011,
+ -34.3661242
+ ],
+ [
+ 21.501744,
+ -34.3669892
+ ],
+ [
+ 21.5006961,
+ -34.4020114
+ ],
+ [
+ 21.4194886,
+ -34.4465247
+ ],
+ [
+ 21.1978706,
+ -34.4478208
+ ],
+ [
+ 21.0988193,
+ -34.3991325
+ ],
+ [
+ 21.0033746,
+ -34.3753872
+ ],
+ [
+ 20.893192,
+ -34.3997115
+ ],
+ [
+ 20.8976647,
+ -34.4854003
+ ],
+ [
+ 20.7446802,
+ -34.4828092
+ ],
+ [
+ 20.5042011,
+ -34.486264
+ ],
+ [
+ 20.2527197,
+ -34.701477
+ ],
+ [
+ 20.0803502,
+ -34.8361855
+ ],
+ [
+ 19.9923317,
+ -34.8379056
+ ],
+ [
+ 19.899074,
+ -34.8275845
+ ],
+ [
+ 19.8938348,
+ -34.7936018
+ ],
+ [
+ 19.5972963,
+ -34.7961833
+ ],
+ [
+ 19.3929677,
+ -34.642015
+ ],
+ [
+ 19.2877095,
+ -34.6404784
+ ],
+ [
+ 19.2861377,
+ -34.5986563
+ ],
+ [
+ 19.3474363,
+ -34.5244458
+ ],
+ [
+ 19.3285256,
+ -34.4534372
+ ],
+ [
+ 19.098001,
+ -34.449981
+ ],
+ [
+ 19.0725583,
+ -34.3802371
+ ],
+ [
+ 19.0023531,
+ -34.3525593
+ ],
+ [
+ 18.9520568,
+ -34.3949373
+ ],
+ [
+ 18.7975006,
+ -34.3936403
+ ],
+ [
+ 18.7984174,
+ -34.1016376
+ ],
+ [
+ 18.501748,
+ -34.1015292
+ ],
+ [
+ 18.4999545,
+ -34.3616945
+ ],
+ [
+ 18.4477325,
+ -34.3620007
+ ],
+ [
+ 18.4479944,
+ -34.3522691
+ ],
+ [
+ 18.3974362,
+ -34.3514041
+ ],
+ [
+ 18.3971742,
+ -34.3022959
+ ],
+ [
+ 18.3565705,
+ -34.3005647
+ ],
+ [
+ 18.3479258,
+ -34.2020436
+ ],
+ [
+ 18.2972095,
+ -34.1950274
+ ],
+ [
+ 18.2951139,
+ -33.9937138
+ ],
+ [
+ 18.3374474,
+ -33.9914079
+ ],
+ [
+ 18.3476638,
+ -33.8492427
+ ],
+ [
+ 18.3479258,
+ -33.781555
+ ],
+ [
+ 18.4124718,
+ -33.7448849
+ ],
+ [
+ 18.3615477,
+ -33.6501624
+ ],
+ [
+ 18.2992013,
+ -33.585591
+ ],
+ [
+ 18.2166839,
+ -33.448872
+ ],
+ [
+ 18.1389858,
+ -33.3974083
+ ],
+ [
+ 17.9473472,
+ -33.1602647
+ ],
+ [
+ 17.8855247,
+ -33.0575732
+ ],
+ [
+ 17.8485884,
+ -32.9668505
+ ],
+ [
+ 17.8396817,
+ -32.8507302
+ ]
+ ]
+ ]
+ },
+ {
+ "name": "Stadt Uster Orthophoto 2008 10cm",
+ "type": "tms",
+ "template": "http://mapproxy.sosm.ch:8080/tiles/uster/EPSG900913/{zoom}/{x}/{y}.png?origin=nw",
+ "polygon": [
+ [
+ [
+ 8.6,
+ 47.31
+ ],
+ [
+ 8.6,
+ 47.39
+ ],
+ [
+ 8.77,
+ 47.39
+ ],
+ [
+ 8.77,
+ 47.31
+ ],
+ [
+ 8.6,
+ 47.31
+ ]
+ ]
+ ],
+ "terms_text": "Stadt Uster Vermessung Orthophoto 2008"
+ },
+ {
+ "name": "Stevns (Denmark)",
+ "type": "tms",
+ "template": "http://{switch:a,b,c}.tile.openstreetmap.dk/stevns/2009/{zoom}/{x}/{y}.png",
+ "scaleExtent": [
+ 0,
+ 20
+ ],
+ "polygon": [
+ [
+ [
+ 12.0913942,
+ 55.3491574
+ ],
+ [
+ 12.0943104,
+ 55.3842256
+ ],
+ [
+ 12.1573875,
+ 55.3833103
+ ],
+ [
+ 12.1587287,
+ 55.4013326
+ ],
+ [
+ 12.1903468,
+ 55.400558
+ ],
+ [
+ 12.1931411,
+ 55.4364665
+ ],
+ [
+ 12.2564251,
+ 55.4347995
+ ],
+ [
+ 12.2547073,
+ 55.4168882
+ ],
+ [
+ 12.3822489,
+ 55.4134349
+ ],
+ [
+ 12.3795942,
+ 55.3954143
+ ],
+ [
+ 12.4109213,
+ 55.3946958
+ ],
+ [
+ 12.409403,
+ 55.3766417
+ ],
+ [
+ 12.4407807,
+ 55.375779
+ ],
+ [
+ 12.4394142,
+ 55.3578314
+ ],
+ [
+ 12.4707413,
+ 55.3569971
+ ],
+ [
+ 12.4629475,
+ 55.2672214
+ ],
+ [
+ 12.4315633,
+ 55.2681491
+ ],
+ [
+ 12.430045,
+ 55.2502103
+ ],
+ [
+ 12.3672011,
+ 55.2519673
+ ],
+ [
+ 12.3656858,
+ 55.2340267
+ ],
+ [
+ 12.2714604,
+ 55.2366031
+ ],
+ [
+ 12.2744467,
+ 55.272476
+ ],
+ [
+ 12.2115654,
+ 55.2741475
+ ],
+ [
+ 12.2130078,
+ 55.2920322
+ ],
+ [
+ 12.1815665,
+ 55.2928638
+ ],
+ [
+ 12.183141,
+ 55.3107091
+ ],
+ [
+ 12.2144897,
+ 55.3100981
+ ],
+ [
+ 12.2159927,
+ 55.3279764
+ ],
+ [
+ 12.1214458,
+ 55.3303379
+ ],
+ [
+ 12.1229489,
+ 55.3483291
+ ]
+ ]
+ ],
+ "terms_text": "Stevns Kommune"
+ },
+ {
+ "name": "Surrey Air Survey",
+ "type": "tms",
+ "template": "http://gravitystorm.dev.openstreetmap.org/surrey/{zoom}/{x}/{y}.png",
+ "polygon": [
+ [
+ [
+ -0.856,
+ 51.071
+ ],
+ [
+ -0.856,
+ 51.473
+ ],
+ [
+ 0.062,
+ 51.473
+ ],
+ [
+ 0.062,
+ 51.071
+ ],
+ [
+ -0.856,
+ 51.071
+ ]
+ ]
+ ]
+ },
+ {
+ "name": "TIGER 2012 Roads Overlay",
+ "type": "tms",
+ "description": "Public domain road data from the US Government.",
+ "template": "http://{switch:a,b,c}.tile.openstreetmap.us/tiger2012_roads_expanded/{zoom}/{x}/{y}.png",
+ "scaleExtent": [
+ 16,
+ 19
+ ],
+ "polygon": [
+ [
+ [
+ -124.7617886,
+ 48.4130148
+ ],
+ [
+ -124.6059492,
+ 45.90245
+ ],
+ [
+ -124.9934269,
+ 40.0557614
+ ],
+ [
+ -122.5369737,
+ 36.8566086
+ ],
+ [
+ -119.9775867,
+ 33.0064099
+ ],
+ [
+ -117.675935,
+ 32.4630223
+ ],
+ [
+ -114.8612307,
+ 32.4799891
+ ],
+ [
+ -111.0089311,
+ 31.336015
+ ],
+ [
+ -108.1992687,
+ 31.3260016
+ ],
+ [
+ -108.1871123,
+ 31.7755116
+ ],
+ [
+ -106.5307225,
+ 31.7820947
+ ],
+ [
+ -106.4842052,
+ 31.7464455
+ ],
+ [
+ -106.429317,
+ 31.7520583
+ ],
+ [
+ -106.2868855,
+ 31.5613291
+ ],
+ [
+ -106.205248,
+ 31.446704
+ ],
+ [
+ -105.0205259,
+ 30.5360988
+ ],
+ [
+ -104.5881916,
+ 29.6997856
+ ],
+ [
+ -103.2518856,
+ 28.8908685
+ ],
+ [
+ -102.7173632,
+ 29.3920567
+ ],
+ [
+ -102.1513983,
+ 29.7475702
+ ],
+ [
+ -101.2552871,
+ 29.4810523
+ ],
+ [
+ -100.0062436,
+ 28.0082173
+ ],
+ [
+ -99.2351068,
+ 26.4475962
+ ],
+ [
+ -98.0109067,
+ 25.9928035
+ ],
+ [
+ -97.435024,
+ 25.8266009
+ ],
+ [
+ -96.9555259,
+ 25.9821589
+ ],
+ [
+ -96.8061741,
+ 27.7978168
+ ],
+ [
+ -95.5563349,
+ 28.5876066
+ ],
+ [
+ -93.7405308,
+ 29.4742093
+ ],
+ [
+ -90.9028456,
+ 28.8564513
+ ],
+ [
+ -88.0156706,
+ 28.9944338
+ ],
+ [
+ -88.0162494,
+ 30.0038862
+ ],
+ [
+ -86.0277506,
+ 30.0047454
+ ],
+ [
+ -84.0187909,
+ 28.9961781
+ ],
+ [
+ -81.9971976,
+ 25.9826768
+ ],
+ [
+ -81.9966618,
+ 25.0134917
+ ],
+ [
+ -84.0165592,
+ 25.0125783
+ ],
+ [
+ -84.0160068,
+ 24.0052745
+ ],
+ [
+ -80.0199985,
+ 24.007096
+ ],
+ [
+ -79.8901116,
+ 26.8550713
+ ],
+ [
+ -80.0245309,
+ 32.0161282
+ ],
+ [
+ -75.4147385,
+ 35.0531894
+ ],
+ [
+ -74.0211163,
+ 39.5727927
+ ],
+ [
+ -72.002019,
+ 40.9912464
+ ],
+ [
+ -69.8797398,
+ 40.9920457
+ ],
+ [
+ -69.8489304,
+ 43.2619916
+ ],
+ [
+ -66.9452845,
+ 44.7104937
+ ],
+ [
+ -67.7596632,
+ 47.0990024
+ ],
+ [
+ -69.2505131,
+ 47.5122328
+ ],
+ [
+ -70.4614886,
+ 46.2176574
+ ],
+ [
+ -71.412273,
+ 45.254878
+ ],
+ [
+ -72.0222508,
+ 45.0059846
+ ],
+ [
+ -75.0798841,
+ 44.9802854
+ ],
+ [
+ -76.9023061,
+ 43.8024568
+ ],
+ [
+ -78.7623935,
+ 43.6249578
+ ],
+ [
+ -79.15798,
+ 43.4462589
+ ],
+ [
+ -79.0060087,
+ 42.8005317
+ ],
+ [
+ -82.662475,
+ 41.6889458
+ ],
+ [
+ -82.1761642,
+ 43.588535
+ ],
+ [
+ -83.2813977,
+ 46.138853
+ ],
+ [
+ -87.5064535,
+ 48.0142702
+ ],
+ [
+ -88.3492194,
+ 48.2963271
+ ],
+ [
+ -89.4353148,
+ 47.9837822
+ ],
+ [
+ -93.9981078,
+ 49.0067142
+ ],
+ [
+ -95.1105379,
+ 49.412004
+ ],
+ [
+ -96.0131199,
+ 49.0060547
+ ],
+ [
+ -123.3228926,
+ 49.0042878
+ ],
+ [
+ -123.2275233,
+ 48.1849927
+ ]
+ ],
+ [
+ [
+ -160.5787616,
+ 22.5062947
+ ],
+ [
+ -160.5782192,
+ 21.4984647
+ ],
+ [
+ -158.7470604,
+ 21.2439843
+ ],
+ [
+ -157.5083185,
+ 20.995803
+ ],
+ [
+ -155.9961942,
+ 18.7790194
+ ],
+ [
+ -154.6217803,
+ 18.7586966
+ ],
+ [
+ -154.6890176,
+ 19.8805722
+ ],
+ [
+ -156.2927622,
+ 21.2225888
+ ],
+ [
+ -157.5047384,
+ 21.9984962
+ ],
+ [
+ -159.0093692,
+ 22.5070181
+ ]
+ ],
+ [
+ [
+ -167.1571546,
+ 68.721974
+ ],
+ [
+ -164.8553982,
+ 67.0255078
+ ],
+ [
+ -168.002195,
+ 66.0017503
+ ],
+ [
+ -169.0087448,
+ 66.001546
+ ],
+ [
+ -169.0075381,
+ 64.9987675
+ ],
+ [
+ -172.5143281,
+ 63.8767267
+ ],
+ [
+ -173.8197023,
+ 59.74014
+ ],
+ [
+ -162.5018149,
+ 58.0005815
+ ],
+ [
+ -160.0159024,
+ 58.0012389
+ ],
+ [
+ -160.0149725,
+ 57.000035
+ ],
+ [
+ -160.5054788,
+ 56.9999017
+ ],
+ [
+ -165.8092575,
+ 54.824847
+ ],
+ [
+ -178.000097,
+ 52.2446469
+ ],
+ [
+ -177.9992996,
+ 51.2554252
+ ],
+ [
+ -171.4689067,
+ 51.8215329
+ ],
+ [
+ -162.40251,
+ 53.956664
+ ],
+ [
+ -159.0075717,
+ 55.002502
+ ],
+ [
+ -158.0190709,
+ 55.0027849
+ ],
+ [
+ -151.9963213,
+ 55.9991902
+ ],
+ [
+ -151.500341,
+ 57.9987853
+ ],
+ [
+ -151.5012894,
+ 58.9919816
+ ],
+ [
+ -138.5159989,
+ 58.9953194
+ ],
+ [
+ -138.5150471,
+ 57.9986434
+ ],
+ [
+ -133.9948193,
+ 54.0031685
+ ],
+ [
+ -130.0044418,
+ 54.0043387
+ ],
+ [
+ -130.0070826,
+ 57.0000507
+ ],
+ [
+ -131.975877,
+ 56.9995156
+ ],
+ [
+ -135.1229873,
+ 59.756601
+ ],
+ [
+ -138.0071813,
+ 59.991805
+ ],
+ [
+ -139.1715881,
+ 60.4127229
+ ],
+ [
+ -140.9874011,
+ 61.0118551
+ ],
+ [
+ -140.9683975,
+ 69.9535069
+ ],
+ [
+ -156.176891,
+ 71.5633329
+ ],
+ [
+ -160.413634,
+ 70.7397728
+ ],
+ [
+ -163.0218273,
+ 69.9707435
+ ],
+ [
+ -164.9717003,
+ 68.994689
+ ]
+ ]
+ ],
+ "overlay": true
+ },
+ {
+ "name": "Toulouse - Orthophotoplan 2007",
+ "type": "tms",
+ "template": "http://wms.openstreetmap.fr/tms/1.0.0/toulouse_ortho2007/{zoom}/{x}/{y}",
+ "scaleExtent": [
+ 0,
+ 22
+ ],
+ "polygon": [
+ [
+ [
+ 1.1919978,
+ 43.6328791
+ ],
+ [
+ 1.2015377,
+ 43.6329729
+ ],
+ [
+ 1.2011107,
+ 43.6554932
+ ],
+ [
+ 1.2227985,
+ 43.6557029
+ ],
+ [
+ 1.2226231,
+ 43.6653353
+ ],
+ [
+ 1.2275341,
+ 43.6653849
+ ],
+ [
+ 1.2275417,
+ 43.6656387
+ ],
+ [
+ 1.2337568,
+ 43.6656883
+ ],
+ [
+ 1.2337644,
+ 43.6650153
+ ],
+ [
+ 1.2351218,
+ 43.6650319
+ ],
+ [
+ 1.2350913,
+ 43.6670729
+ ],
+ [
+ 1.2443566,
+ 43.6671556
+ ],
+ [
+ 1.2441584,
+ 43.6743925
+ ],
+ [
+ 1.2493973,
+ 43.6744256
+ ],
+ [
+ 1.2493973,
+ 43.6746628
+ ],
+ [
+ 1.2555666,
+ 43.6747234
+ ],
+ [
+ 1.2555742,
+ 43.6744532
+ ],
+ [
+ 1.2569545,
+ 43.6744697
+ ],
+ [
+ 1.2568782,
+ 43.678529
+ ],
+ [
+ 1.2874873,
+ 43.6788257
+ ],
+ [
+ 1.2870803,
+ 43.7013229
+ ],
+ [
+ 1.3088219,
+ 43.7014632
+ ],
+ [
+ 1.3086493,
+ 43.7127673
+ ],
+ [
+ 1.3303262,
+ 43.7129544
+ ],
+ [
+ 1.3300242,
+ 43.7305221
+ ],
+ [
+ 1.3367106,
+ 43.7305845
+ ],
+ [
+ 1.3367322,
+ 43.7312235
+ ],
+ [
+ 1.3734338,
+ 43.7310456
+ ],
+ [
+ 1.3735848,
+ 43.7245772
+ ],
+ [
+ 1.4604504,
+ 43.7252947
+ ],
+ [
+ 1.4607783,
+ 43.7028034
+ ],
+ [
+ 1.4824875,
+ 43.7029516
+ ],
+ [
+ 1.4829828,
+ 43.6692071
+ ],
+ [
+ 1.5046832,
+ 43.6693616
+ ],
+ [
+ 1.5048383,
+ 43.6581174
+ ],
+ [
+ 1.5265475,
+ 43.6582656
+ ],
+ [
+ 1.5266945,
+ 43.6470298
+ ],
+ [
+ 1.548368,
+ 43.6471633
+ ],
+ [
+ 1.5485357,
+ 43.6359385
+ ],
+ [
+ 1.5702172,
+ 43.636082
+ ],
+ [
+ 1.5705123,
+ 43.6135777
+ ],
+ [
+ 1.5488166,
+ 43.6134276
+ ],
+ [
+ 1.549097,
+ 43.5909479
+ ],
+ [
+ 1.5707695,
+ 43.5910694
+ ],
+ [
+ 1.5709373,
+ 43.5798341
+ ],
+ [
+ 1.5793714,
+ 43.5798894
+ ],
+ [
+ 1.5794782,
+ 43.5737682
+ ],
+ [
+ 1.5809119,
+ 43.5737792
+ ],
+ [
+ 1.5810859,
+ 43.5573794
+ ],
+ [
+ 1.5712334,
+ 43.5573131
+ ],
+ [
+ 1.5716504,
+ 43.5235497
+ ],
+ [
+ 1.3984804,
+ 43.5222618
+ ],
+ [
+ 1.3986509,
+ 43.5110113
+ ],
+ [
+ 1.3120959,
+ 43.5102543
+ ],
+ [
+ 1.3118968,
+ 43.5215192
+ ],
+ [
+ 1.2902569,
+ 43.5213126
+ ],
+ [
+ 1.2898637,
+ 43.5438168
+ ],
+ [
+ 1.311517,
+ 43.5440133
+ ],
+ [
+ 1.3113271,
+ 43.5552596
+ ],
+ [
+ 1.3036924,
+ 43.5551924
+ ],
+ [
+ 1.3036117,
+ 43.5595099
+ ],
+ [
+ 1.2955449,
+ 43.5594317
+ ],
+ [
+ 1.2955449,
+ 43.5595489
+ ],
+ [
+ 1.2895595,
+ 43.5594473
+ ],
+ [
+ 1.2892899,
+ 43.5775366
+ ],
+ [
+ 1.2675698,
+ 43.5773647
+ ],
+ [
+ 1.2673973,
+ 43.5886141
+ ],
+ [
+ 1.25355,
+ 43.5885047
+ ],
+ [
+ 1.2533774,
+ 43.5956282
+ ],
+ [
+ 1.2518029,
+ 43.5956282
+ ],
+ [
+ 1.2518029,
+ 43.5949409
+ ],
+ [
+ 1.2350437,
+ 43.5947847
+ ],
+ [
+ 1.2350437,
+ 43.5945972
+ ],
+ [
+ 1.2239572,
+ 43.5945972
+ ],
+ [
+ 1.2239357,
+ 43.5994708
+ ],
+ [
+ 1.2139708,
+ 43.599299
+ ],
+ [
+ 1.2138845,
+ 43.6046408
+ ],
+ [
+ 1.2020647,
+ 43.6044846
+ ],
+ [
+ 1.2019464,
+ 43.61048
+ ],
+ [
+ 1.1924294,
+ 43.6103695
+ ]
+ ]
+ ],
+ "terms_url": "https://wiki.openstreetmap.org/wiki/Toulouse/ToulouseMetropoleData",
+ "terms_text": "ToulouseMetropole"
+ },
+ {
+ "name": "Toulouse - Orthophotoplan 2011",
+ "type": "tms",
+ "template": "http://wms.openstreetmap.fr/tms/1.0.0/toulouse_ortho2011/{zoom}/{x}/{y}",
+ "scaleExtent": [
+ 0,
+ 22
+ ],
+ "polygon": [
+ [
+ [
+ 1.1135067,
+ 43.6867566
+ ],
+ [
+ 1.1351836,
+ 43.6870842
+ ],
+ [
+ 1.1348907,
+ 43.6983471
+ ],
+ [
+ 1.1782867,
+ 43.6990338
+ ],
+ [
+ 1.1779903,
+ 43.7102786
+ ],
+ [
+ 1.1996591,
+ 43.7106144
+ ],
+ [
+ 1.1993387,
+ 43.7218722
+ ],
+ [
+ 1.2427356,
+ 43.7225269
+ ],
+ [
+ 1.2424336,
+ 43.7337491
+ ],
+ [
+ 1.2641536,
+ 43.734092
+ ],
+ [
+ 1.2638301,
+ 43.7453588
+ ],
+ [
+ 1.2855285,
+ 43.7456548
+ ],
+ [
+ 1.2852481,
+ 43.756935
+ ],
+ [
+ 1.306925,
+ 43.757231
+ ],
+ [
+ 1.3066446,
+ 43.7684779
+ ],
+ [
+ 1.3283431,
+ 43.7687894
+ ],
+ [
+ 1.3280842,
+ 43.780034
+ ],
+ [
+ 1.4367275,
+ 43.7815757
+ ],
+ [
+ 1.4373098,
+ 43.7591004
+ ],
+ [
+ 1.4590083,
+ 43.7593653
+ ],
+ [
+ 1.4593318,
+ 43.7481479
+ ],
+ [
+ 1.4810303,
+ 43.7483972
+ ],
+ [
+ 1.4813322,
+ 43.7371777
+ ],
+ [
+ 1.5030307,
+ 43.7374115
+ ],
+ [
+ 1.5035915,
+ 43.7149664
+ ],
+ [
+ 1.5253115,
+ 43.7151846
+ ],
+ [
+ 1.5256135,
+ 43.7040057
+ ],
+ [
+ 1.5472688,
+ 43.7042552
+ ],
+ [
+ 1.5475708,
+ 43.6930431
+ ],
+ [
+ 1.5692045,
+ 43.6932926
+ ],
+ [
+ 1.5695712,
+ 43.6820316
+ ],
+ [
+ 1.5912049,
+ 43.6822656
+ ],
+ [
+ 1.5917441,
+ 43.6597998
+ ],
+ [
+ 1.613421,
+ 43.6600339
+ ],
+ [
+ 1.613723,
+ 43.6488291
+ ],
+ [
+ 1.6353783,
+ 43.6490788
+ ],
+ [
+ 1.6384146,
+ 43.5140731
+ ],
+ [
+ 1.2921649,
+ 43.5094658
+ ],
+ [
+ 1.2918629,
+ 43.5206966
+ ],
+ [
+ 1.2702076,
+ 43.5203994
+ ],
+ [
+ 1.2698841,
+ 43.5316437
+ ],
+ [
+ 1.2482288,
+ 43.531331
+ ],
+ [
+ 1.2476048,
+ 43.5537788
+ ],
+ [
+ 1.2259628,
+ 43.5534914
+ ],
+ [
+ 1.2256819,
+ 43.564716
+ ],
+ [
+ 1.2039835,
+ 43.564419
+ ],
+ [
+ 1.2033148,
+ 43.5869049
+ ],
+ [
+ 1.1816164,
+ 43.5865611
+ ],
+ [
+ 1.1810237,
+ 43.6090368
+ ],
+ [
+ 1.1592821,
+ 43.6086932
+ ],
+ [
+ 1.1589585,
+ 43.6199523
+ ],
+ [
+ 1.1372601,
+ 43.6196244
+ ],
+ [
+ 1.1365933,
+ 43.642094
+ ],
+ [
+ 1.1149055,
+ 43.6417629
+ ]
+ ]
+ ],
+ "terms_url": "https://wiki.openstreetmap.org/wiki/Toulouse/ToulouseMetropoleData",
+ "terms_text": "ToulouseMetropole"
+ },
+ {
+ "name": "Tours - Orthophotos 2008",
+ "type": "tms",
+ "template": "http://tms.mapspot.ge/tms/2/nonstandard/{zoom}/{x}/{y}.jpeg",
+ "polygon": [
+ [
+ [
+ 0.5457462,
+ 47.465264
+ ],
+ [
+ 0.54585,
+ 47.4608163
+ ],
+ [
+ 0.5392188,
+ 47.4606983
+ ],
+ [
+ 0.5393484,
+ 47.456243
+ ],
+ [
+ 0.5327959,
+ 47.4561003
+ ],
+ [
+ 0.5329011,
+ 47.451565
+ ],
+ [
+ 0.52619,
+ 47.4514013
+ ],
+ [
+ 0.5265854,
+ 47.4424884
+ ],
+ [
+ 0.5000941,
+ 47.4420739
+ ],
+ [
+ 0.5002357,
+ 47.4375835
+ ],
+ [
+ 0.4936014,
+ 47.4374324
+ ],
+ [
+ 0.4937,
+ 47.4329285
+ ],
+ [
+ 0.4606141,
+ 47.4324593
+ ],
+ [
+ 0.4607248,
+ 47.4279827
+ ],
+ [
+ 0.4541016,
+ 47.4278125
+ ],
+ [
+ 0.454932,
+ 47.4053921
+ ],
+ [
+ 0.4615431,
+ 47.4054476
+ ],
+ [
+ 0.4619097,
+ 47.3964924
+ ],
+ [
+ 0.4684346,
+ 47.3966005
+ ],
+ [
+ 0.4691319,
+ 47.3786415
+ ],
+ [
+ 0.4757125,
+ 47.3787609
+ ],
+ [
+ 0.4762116,
+ 47.3652018
+ ],
+ [
+ 0.4828297,
+ 47.3653499
+ ],
+ [
+ 0.4832223,
+ 47.3518574
+ ],
+ [
+ 0.5097927,
+ 47.3522592
+ ],
+ [
+ 0.5095688,
+ 47.3567713
+ ],
+ [
+ 0.5227698,
+ 47.3569785
+ ],
+ [
+ 0.5226429,
+ 47.3614867
+ ],
+ [
+ 0.5490721,
+ 47.3618878
+ ],
+ [
+ 0.5489087,
+ 47.3663307
+ ],
+ [
+ 0.5555159,
+ 47.3664985
+ ],
+ [
+ 0.5559105,
+ 47.3575522
+ ],
+ [
+ 0.6152789,
+ 47.358407
+ ],
+ [
+ 0.6152963,
+ 47.362893
+ ],
+ [
+ 0.6285093,
+ 47.3630936
+ ],
+ [
+ 0.6288256,
+ 47.353987
+ ],
+ [
+ 0.6155012,
+ 47.3538823
+ ],
+ [
+ 0.6157682,
+ 47.3493424
+ ],
+ [
+ 0.6090956,
+ 47.3492991
+ ],
+ [
+ 0.6094735,
+ 47.3402962
+ ],
+ [
+ 0.6160477,
+ 47.3404448
+ ],
+ [
+ 0.616083,
+ 47.3369074
+ ],
+ [
+ 0.77497,
+ 47.3388218
+ ],
+ [
+ 0.7745786,
+ 47.351628
+ ],
+ [
+ 0.7680363,
+ 47.3515901
+ ],
+ [
+ 0.767589,
+ 47.3605298
+ ],
+ [
+ 0.7742443,
+ 47.3606238
+ ],
+ [
+ 0.7733465,
+ 47.3921266
+ ],
+ [
+ 0.7667434,
+ 47.3920195
+ ],
+ [
+ 0.7664411,
+ 47.4010837
+ ],
+ [
+ 0.7730647,
+ 47.4011115
+ ],
+ [
+ 0.7728868,
+ 47.4101297
+ ],
+ [
+ 0.7661849,
+ 47.4100226
+ ],
+ [
+ 0.7660267,
+ 47.4145044
+ ],
+ [
+ 0.7527613,
+ 47.4143038
+ ],
+ [
+ 0.7529788,
+ 47.4098086
+ ],
+ [
+ 0.7462373,
+ 47.4097016
+ ],
+ [
+ 0.7459424,
+ 47.4232208
+ ],
+ [
+ 0.7392324,
+ 47.4231451
+ ],
+ [
+ 0.738869,
+ 47.4366116
+ ],
+ [
+ 0.7323267,
+ 47.4365171
+ ],
+ [
+ 0.7321869,
+ 47.4410556
+ ],
+ [
+ 0.7255048,
+ 47.44098
+ ],
+ [
+ 0.7254209,
+ 47.4453479
+ ],
+ [
+ 0.7318793,
+ 47.4454803
+ ],
+ [
+ 0.7318514,
+ 47.4501126
+ ],
+ [
+ 0.7384496,
+ 47.450226
+ ],
+ [
+ 0.7383098,
+ 47.454631
+ ],
+ [
+ 0.7449359,
+ 47.4547444
+ ],
+ [
+ 0.7443209,
+ 47.4771985
+ ],
+ [
+ 0.7310685,
+ 47.4769717
+ ],
+ [
+ 0.7309008,
+ 47.4815445
+ ],
+ [
+ 0.7176205,
+ 47.4812611
+ ],
+ [
+ 0.7177883,
+ 47.4768394
+ ],
+ [
+ 0.69777,
+ 47.4764993
+ ],
+ [
+ 0.6980496,
+ 47.4719827
+ ],
+ [
+ 0.6914514,
+ 47.4718882
+ ],
+ [
+ 0.6917309,
+ 47.4630241
+ ],
+ [
+ 0.6851048,
+ 47.4629295
+ ],
+ [
+ 0.684937,
+ 47.4673524
+ ],
+ [
+ 0.678255,
+ 47.4673335
+ ],
+ [
+ 0.6779754,
+ 47.4762158
+ ],
+ [
+ 0.6714051,
+ 47.4761592
+ ],
+ [
+ 0.6710417,
+ 47.4881952
+ ],
+ [
+ 0.6577334,
+ 47.4879685
+ ],
+ [
+ 0.6578173,
+ 47.48504
+ ],
+ [
+ 0.6511911,
+ 47.4848322
+ ],
+ [
+ 0.6514707,
+ 47.4758568
+ ],
+ [
+ 0.6448166,
+ 47.4757245
+ ],
+ [
+ 0.6449284,
+ 47.4712646
+ ],
+ [
+ 0.6117976,
+ 47.4707543
+ ],
+ [
+ 0.6118815,
+ 47.4663129
+ ],
+ [
+ 0.6052833,
+ 47.4661239
+ ],
+ [
+ 0.6054231,
+ 47.4616631
+ ],
+ [
+ 0.5988808,
+ 47.4615497
+ ],
+ [
+ 0.5990206,
+ 47.4570886
+ ],
+ [
+ 0.572488,
+ 47.4566916
+ ],
+ [
+ 0.5721805,
+ 47.4656513
+ ]
+ ]
+ ],
+ "terms_url": "http://wiki.openstreetmap.org/wiki/Tours/Orthophoto",
+ "terms_text": "Orthophoto Tour(s) Plus 2008"
+ },
+ {
+ "name": "Tours - Orthophotos 2008-2010",
+ "type": "tms",
+ "template": "http://wms.openstreetmap.fr/tms/1.0.0/tours/{zoom}/{x}/{y}",
+ "scaleExtent": [
+ 0,
+ 20
+ ],
+ "polygon": [
+ [
+ [
+ 0.5457462,
+ 47.465264
+ ],
+ [
+ 0.54585,
+ 47.4608163
+ ],
+ [
+ 0.5392188,
+ 47.4606983
+ ],
+ [
+ 0.5393484,
+ 47.456243
+ ],
+ [
+ 0.5327959,
+ 47.4561003
+ ],
+ [
+ 0.5329011,
+ 47.451565
+ ],
+ [
+ 0.52619,
+ 47.4514013
+ ],
+ [
+ 0.5265854,
+ 47.4424884
+ ],
+ [
+ 0.5000941,
+ 47.4420739
+ ],
+ [
+ 0.5002357,
+ 47.4375835
+ ],
+ [
+ 0.4936014,
+ 47.4374324
+ ],
+ [
+ 0.4937,
+ 47.4329285
+ ],
+ [
+ 0.4606141,
+ 47.4324593
+ ],
+ [
+ 0.4607248,
+ 47.4279827
+ ],
+ [
+ 0.4541016,
+ 47.4278125
+ ],
+ [
+ 0.454932,
+ 47.4053921
+ ],
+ [
+ 0.4615431,
+ 47.4054476
+ ],
+ [
+ 0.4619097,
+ 47.3964924
+ ],
+ [
+ 0.4684346,
+ 47.3966005
+ ],
+ [
+ 0.4691319,
+ 47.3786415
+ ],
+ [
+ 0.4757125,
+ 47.3787609
+ ],
+ [
+ 0.4762116,
+ 47.3652018
+ ],
+ [
+ 0.4828297,
+ 47.3653499
+ ],
+ [
+ 0.4829611,
+ 47.3608321
+ ],
+ [
+ 0.4763543,
+ 47.360743
+ ],
+ [
+ 0.476654,
+ 47.3517263
+ ],
+ [
+ 0.4700497,
+ 47.3516186
+ ],
+ [
+ 0.4701971,
+ 47.3471313
+ ],
+ [
+ 0.4637503,
+ 47.3470104
+ ],
+ [
+ 0.4571425,
+ 47.3424146
+ ],
+ [
+ 0.4572922,
+ 47.3379061
+ ],
+ [
+ 0.4506741,
+ 47.3378081
+ ],
+ [
+ 0.4508379,
+ 47.3333051
+ ],
+ [
+ 0.4442212,
+ 47.3332032
+ ],
+ [
+ 0.4443809,
+ 47.328711
+ ],
+ [
+ 0.4311392,
+ 47.3284977
+ ],
+ [
+ 0.4316262,
+ 47.3150004
+ ],
+ [
+ 0.4382432,
+ 47.3151136
+ ],
+ [
+ 0.4383815,
+ 47.3106174
+ ],
+ [
+ 0.4714487,
+ 47.3111374
+ ],
+ [
+ 0.4713096,
+ 47.3156565
+ ],
+ [
+ 0.477888,
+ 47.3157542
+ ],
+ [
+ 0.4780733,
+ 47.3112802
+ ],
+ [
+ 0.4846826,
+ 47.3113639
+ ],
+ [
+ 0.4848576,
+ 47.3068686
+ ],
+ [
+ 0.4914359,
+ 47.3069803
+ ],
+ [
+ 0.491745,
+ 47.2979733
+ ],
+ [
+ 0.4851578,
+ 47.2978722
+ ],
+ [
+ 0.4854269,
+ 47.2888744
+ ],
+ [
+ 0.4788485,
+ 47.2887697
+ ],
+ [
+ 0.4791574,
+ 47.2797818
+ ],
+ [
+ 0.4857769,
+ 47.2799005
+ ],
+ [
+ 0.4859107,
+ 47.2753885
+ ],
+ [
+ 0.492539,
+ 47.2755029
+ ],
+ [
+ 0.4926669,
+ 47.2710127
+ ],
+ [
+ 0.4992986,
+ 47.2711066
+ ],
+ [
+ 0.4994296,
+ 47.2666116
+ ],
+ [
+ 0.5192658,
+ 47.2669245
+ ],
+ [
+ 0.5194225,
+ 47.2624231
+ ],
+ [
+ 0.5260186,
+ 47.2625205
+ ],
+ [
+ 0.5258735,
+ 47.2670183
+ ],
+ [
+ 0.5456972,
+ 47.2673383
+ ],
+ [
+ 0.5455537,
+ 47.2718283
+ ],
+ [
+ 0.5587737,
+ 47.2720366
+ ],
+ [
+ 0.5586259,
+ 47.2765185
+ ],
+ [
+ 0.5652252,
+ 47.2766278
+ ],
+ [
+ 0.5650848,
+ 47.2811206
+ ],
+ [
+ 0.5716753,
+ 47.2812285
+ ],
+ [
+ 0.5715223,
+ 47.2857217
+ ],
+ [
+ 0.5781436,
+ 47.2858299
+ ],
+ [
+ 0.5779914,
+ 47.2903294
+ ],
+ [
+ 0.5846023,
+ 47.2904263
+ ],
+ [
+ 0.5843076,
+ 47.2994231
+ ],
+ [
+ 0.597499,
+ 47.2996094
+ ],
+ [
+ 0.5976637,
+ 47.2951375
+ ],
+ [
+ 0.6571596,
+ 47.2960036
+ ],
+ [
+ 0.6572988,
+ 47.2915091
+ ],
+ [
+ 0.6705019,
+ 47.2917186
+ ],
+ [
+ 0.6703475,
+ 47.2962082
+ ],
+ [
+ 0.6836175,
+ 47.2963688
+ ],
+ [
+ 0.6834322,
+ 47.3008929
+ ],
+ [
+ 0.690062,
+ 47.3009558
+ ],
+ [
+ 0.6899241,
+ 47.3054703
+ ],
+ [
+ 0.7362019,
+ 47.3061157
+ ],
+ [
+ 0.7360848,
+ 47.3106063
+ ],
+ [
+ 0.7559022,
+ 47.3108935
+ ],
+ [
+ 0.7557718,
+ 47.315392
+ ],
+ [
+ 0.7623755,
+ 47.3154716
+ ],
+ [
+ 0.7622314,
+ 47.3199941
+ ],
+ [
+ 0.7754911,
+ 47.3201546
+ ],
+ [
+ 0.77497,
+ 47.3388218
+ ],
+ [
+ 0.7745786,
+ 47.351628
+ ],
+ [
+ 0.7680363,
+ 47.3515901
+ ],
+ [
+ 0.767589,
+ 47.3605298
+ ],
+ [
+ 0.7742443,
+ 47.3606238
+ ],
+ [
+ 0.7733465,
+ 47.3921266
+ ],
+ [
+ 0.7667434,
+ 47.3920195
+ ],
+ [
+ 0.7664411,
+ 47.4010837
+ ],
+ [
+ 0.7730647,
+ 47.4011115
+ ],
+ [
+ 0.7728868,
+ 47.4101297
+ ],
+ [
+ 0.7661849,
+ 47.4100226
+ ],
+ [
+ 0.7660267,
+ 47.4145044
+ ],
+ [
+ 0.7527613,
+ 47.4143038
+ ],
+ [
+ 0.7529788,
+ 47.4098086
+ ],
+ [
+ 0.7462373,
+ 47.4097016
+ ],
+ [
+ 0.7459424,
+ 47.4232208
+ ],
+ [
+ 0.7392324,
+ 47.4231451
+ ],
+ [
+ 0.738869,
+ 47.4366116
+ ],
+ [
+ 0.7323267,
+ 47.4365171
+ ],
+ [
+ 0.7321869,
+ 47.4410556
+ ],
+ [
+ 0.7255048,
+ 47.44098
+ ],
+ [
+ 0.7254209,
+ 47.4453479
+ ],
+ [
+ 0.7318793,
+ 47.4454803
+ ],
+ [
+ 0.7318514,
+ 47.4501126
+ ],
+ [
+ 0.7384496,
+ 47.450226
+ ],
+ [
+ 0.7383098,
+ 47.454631
+ ],
+ [
+ 0.7449359,
+ 47.4547444
+ ],
+ [
+ 0.7443209,
+ 47.4771985
+ ],
+ [
+ 0.7310685,
+ 47.4769717
+ ],
+ [
+ 0.7309008,
+ 47.4815445
+ ],
+ [
+ 0.7176205,
+ 47.4812611
+ ],
+ [
+ 0.7177883,
+ 47.4768394
+ ],
+ [
+ 0.69777,
+ 47.4764993
+ ],
+ [
+ 0.6980496,
+ 47.4719827
+ ],
+ [
+ 0.6914514,
+ 47.4718882
+ ],
+ [
+ 0.6917309,
+ 47.4630241
+ ],
+ [
+ 0.6851048,
+ 47.4629295
+ ],
+ [
+ 0.684937,
+ 47.4673524
+ ],
+ [
+ 0.678255,
+ 47.4673335
+ ],
+ [
+ 0.6779754,
+ 47.4762158
+ ],
+ [
+ 0.6714051,
+ 47.4761592
+ ],
+ [
+ 0.6710417,
+ 47.4881952
+ ],
+ [
+ 0.6577334,
+ 47.4879685
+ ],
+ [
+ 0.6578173,
+ 47.48504
+ ],
+ [
+ 0.6511911,
+ 47.4848322
+ ],
+ [
+ 0.6514707,
+ 47.4758568
+ ],
+ [
+ 0.6448166,
+ 47.4757245
+ ],
+ [
+ 0.6449284,
+ 47.4712646
+ ],
+ [
+ 0.6117976,
+ 47.4707543
+ ],
+ [
+ 0.6118815,
+ 47.4663129
+ ],
+ [
+ 0.6052833,
+ 47.4661239
+ ],
+ [
+ 0.6054231,
+ 47.4616631
+ ],
+ [
+ 0.5988808,
+ 47.4615497
+ ],
+ [
+ 0.5990206,
+ 47.4570886
+ ],
+ [
+ 0.572488,
+ 47.4566916
+ ],
+ [
+ 0.5721805,
+ 47.4656513
+ ]
+ ]
+ ],
+ "terms_url": "http://wiki.openstreetmap.org/wiki/Tours/Orthophoto",
+ "terms_text": "Orthophoto Tour(s) Plus 2008"
+ },
+ {
+ "name": "USGS Large Scale Imagery",
+ "type": "tms",
+ "template": "http://{switch:a,b,c}.tile.openstreetmap.us/usgs_large_scale/{zoom}/{x}/{y}.jpg",
+ "scaleExtent": [
+ 12,
+ 20
+ ],
+ "polygon": [
+ [
+ [
+ -123.2549305,
+ 48.7529029
+ ],
+ [
+ -123.2549305,
+ 48.5592263
+ ],
+ [
+ -123.192224,
+ 48.5592263
+ ],
+ [
+ -123.192224,
+ 48.4348366
+ ],
+ [
+ -122.9419646,
+ 48.4348366
+ ],
+ [
+ -122.9419646,
+ 48.3720812
+ ],
+ [
+ -122.8806229,
+ 48.3720812
+ ],
+ [
+ -122.8806229,
+ 48.3094763
+ ],
+ [
+ -122.8167566,
+ 48.3094763
+ ],
+ [
+ -122.8167566,
+ 48.1904587
+ ],
+ [
+ -123.0041133,
+ 48.1904587
+ ],
+ [
+ -123.0041133,
+ 48.1275918
+ ],
+ [
+ -123.058416,
+ 48.1275918
+ ],
+ [
+ -123.058416,
+ 48.190514
+ ],
+ [
+ -123.254113,
+ 48.190514
+ ],
+ [
+ -123.254113,
+ 48.1274982
+ ],
+ [
+ -123.3706593,
+ 48.1274982
+ ],
+ [
+ -123.3706593,
+ 48.1908403
+ ],
+ [
+ -124.0582632,
+ 48.1908403
+ ],
+ [
+ -124.0582632,
+ 48.253442
+ ],
+ [
+ -124.1815163,
+ 48.253442
+ ],
+ [
+ -124.1815163,
+ 48.3164666
+ ],
+ [
+ -124.4319117,
+ 48.3164666
+ ],
+ [
+ -124.4319117,
+ 48.3782613
+ ],
+ [
+ -124.5564618,
+ 48.3782613
+ ],
+ [
+ -124.5564618,
+ 48.4408305
+ ],
+ [
+ -124.7555107,
+ 48.4408305
+ ],
+ [
+ -124.7555107,
+ 48.1914986
+ ],
+ [
+ -124.8185282,
+ 48.1914986
+ ],
+ [
+ -124.8185282,
+ 48.1228381
+ ],
+ [
+ -124.7552951,
+ 48.1228381
+ ],
+ [
+ -124.7552951,
+ 47.5535253
+ ],
+ [
+ -124.3812108,
+ 47.5535253
+ ],
+ [
+ -124.3812108,
+ 47.1218696
+ ],
+ [
+ -124.1928897,
+ 47.1218696
+ ],
+ [
+ -124.1928897,
+ 43.7569431
+ ],
+ [
+ -124.4443382,
+ 43.7569431
+ ],
+ [
+ -124.4443382,
+ 43.1425556
+ ],
+ [
+ -124.6398855,
+ 43.1425556
+ ],
+ [
+ -124.6398855,
+ 42.6194503
+ ],
+ [
+ -124.4438525,
+ 42.6194503
+ ],
+ [
+ -124.4438525,
+ 39.8080662
+ ],
+ [
+ -123.8815685,
+ 39.8080662
+ ],
+ [
+ -123.8815685,
+ 39.1102825
+ ],
+ [
+ -123.75805,
+ 39.1102825
+ ],
+ [
+ -123.75805,
+ 38.4968799
+ ],
+ [
+ -123.2702803,
+ 38.4968799
+ ],
+ [
+ -123.2702803,
+ 37.9331905
+ ],
+ [
+ -122.8148084,
+ 37.9331905
+ ],
+ [
+ -122.8148084,
+ 37.8019606
+ ],
+ [
+ -122.5664316,
+ 37.8019606
+ ],
+ [
+ -122.5664316,
+ 36.9319611
+ ],
+ [
+ -121.8784026,
+ 36.9319611
+ ],
+ [
+ -121.8784026,
+ 36.6897596
+ ],
+ [
+ -122.0034748,
+ 36.6897596
+ ],
+ [
+ -122.0034748,
+ 36.4341056
+ ],
+ [
+ -121.9414159,
+ 36.4341056
+ ],
+ [
+ -121.9414159,
+ 35.9297636
+ ],
+ [
+ -121.5040977,
+ 35.9297636
+ ],
+ [
+ -121.5040977,
+ 35.8100273
+ ],
+ [
+ -121.3790276,
+ 35.8100273
+ ],
+ [
+ -121.3790276,
+ 35.4239164
+ ],
+ [
+ -120.9426515,
+ 35.4239164
+ ],
+ [
+ -120.9426515,
+ 35.1849683
+ ],
+ [
+ -120.8171978,
+ 35.1849683
+ ],
+ [
+ -120.8171978,
+ 35.1219894
+ ],
+ [
+ -120.6918447,
+ 35.1219894
+ ],
+ [
+ -120.6918447,
+ 34.4966794
+ ],
+ [
+ -120.5045898,
+ 34.4966794
+ ],
+ [
+ -120.5045898,
+ 34.4339651
+ ],
+ [
+ -120.0078775,
+ 34.4339651
+ ],
+ [
+ -120.0078775,
+ 34.3682626
+ ],
+ [
+ -119.5283517,
+ 34.3682626
+ ],
+ [
+ -119.5283517,
+ 34.0576434
+ ],
+ [
+ -119.0060985,
+ 34.0576434
+ ],
+ [
+ -119.0060985,
+ 33.9975267
+ ],
+ [
+ -118.5046259,
+ 33.9975267
+ ],
+ [
+ -118.5046259,
+ 33.8694631
+ ],
+ [
+ -118.4413209,
+ 33.8694631
+ ],
+ [
+ -118.4413209,
+ 33.6865253
+ ],
+ [
+ -118.066912,
+ 33.6865253
+ ],
+ [
+ -118.066912,
+ 33.3063832
+ ],
+ [
+ -117.5030045,
+ 33.3063832
+ ],
+ [
+ -117.5030045,
+ 33.0500337
+ ],
+ [
+ -117.3188195,
+ 33.0500337
+ ],
+ [
+ -117.3188195,
+ 32.6205888
+ ],
+ [
+ -117.1917023,
+ 32.6205888
+ ],
+ [
+ -117.1917023,
+ 32.4974566
+ ],
+ [
+ -116.746496,
+ 32.4974566
+ ],
+ [
+ -116.746496,
+ 32.5609161
+ ],
+ [
+ -115.9970138,
+ 32.5609161
+ ],
+ [
+ -115.9970138,
+ 32.6264942
+ ],
+ [
+ -114.8808125,
+ 32.6264942
+ ],
+ [
+ -114.8808125,
+ 32.4340796
+ ],
+ [
+ -114.6294474,
+ 32.4340796
+ ],
+ [
+ -114.6294474,
+ 32.3731636
+ ],
+ [
+ -114.4447437,
+ 32.3731636
+ ],
+ [
+ -114.4447437,
+ 32.3075418
+ ],
+ [
+ -114.2557628,
+ 32.3075418
+ ],
+ [
+ -114.2557628,
+ 32.2444561
+ ],
+ [
+ -114.0680274,
+ 32.2444561
+ ],
+ [
+ -114.0680274,
+ 32.1829113
+ ],
+ [
+ -113.8166499,
+ 32.1829113
+ ],
+ [
+ -113.8166499,
+ 32.1207622
+ ],
+ [
+ -113.6307421,
+ 32.1207622
+ ],
+ [
+ -113.6307421,
+ 32.0565099
+ ],
+ [
+ -113.4417495,
+ 32.0565099
+ ],
+ [
+ -113.4417495,
+ 31.9984372
+ ],
+ [
+ -113.2546027,
+ 31.9984372
+ ],
+ [
+ -113.2546027,
+ 31.9325434
+ ],
+ [
+ -113.068072,
+ 31.9325434
+ ],
+ [
+ -113.068072,
+ 31.8718062
+ ],
+ [
+ -112.8161105,
+ 31.8718062
+ ],
+ [
+ -112.8161105,
+ 31.8104171
+ ],
+ [
+ -112.6308756,
+ 31.8104171
+ ],
+ [
+ -112.6308756,
+ 31.7464723
+ ],
+ [
+ -112.4418918,
+ 31.7464723
+ ],
+ [
+ -112.4418918,
+ 31.6856001
+ ],
+ [
+ -112.257192,
+ 31.6856001
+ ],
+ [
+ -112.257192,
+ 31.6210352
+ ],
+ [
+ -112.0033787,
+ 31.6210352
+ ],
+ [
+ -112.0033787,
+ 31.559584
+ ],
+ [
+ -111.815619,
+ 31.559584
+ ],
+ [
+ -111.815619,
+ 31.4970238
+ ],
+ [
+ -111.6278586,
+ 31.4970238
+ ],
+ [
+ -111.6278586,
+ 31.4339867
+ ],
+ [
+ -111.4418978,
+ 31.4339867
+ ],
+ [
+ -111.4418978,
+ 31.3733859
+ ],
+ [
+ -111.2559708,
+ 31.3733859
+ ],
+ [
+ -111.2559708,
+ 31.3113225
+ ],
+ [
+ -108.1845822,
+ 31.3113225
+ ],
+ [
+ -108.1845822,
+ 31.7459502
+ ],
+ [
+ -106.5065055,
+ 31.7459502
+ ],
+ [
+ -106.5065055,
+ 31.6842308
+ ],
+ [
+ -106.3797265,
+ 31.6842308
+ ],
+ [
+ -106.3797265,
+ 31.621752
+ ],
+ [
+ -106.317434,
+ 31.621752
+ ],
+ [
+ -106.317434,
+ 31.4968167
+ ],
+ [
+ -106.2551769,
+ 31.4968167
+ ],
+ [
+ -106.2551769,
+ 31.4344889
+ ],
+ [
+ -106.1924698,
+ 31.4344889
+ ],
+ [
+ -106.1924698,
+ 31.3721296
+ ],
+ [
+ -106.0039212,
+ 31.3721296
+ ],
+ [
+ -106.0039212,
+ 31.309328
+ ],
+ [
+ -105.9416582,
+ 31.309328
+ ],
+ [
+ -105.9416582,
+ 31.2457547
+ ],
+ [
+ -105.8798174,
+ 31.2457547
+ ],
+ [
+ -105.8798174,
+ 31.1836194
+ ],
+ [
+ -105.8162349,
+ 31.1836194
+ ],
+ [
+ -105.8162349,
+ 31.1207155
+ ],
+ [
+ -105.6921198,
+ 31.1207155
+ ],
+ [
+ -105.6921198,
+ 31.0584835
+ ],
+ [
+ -105.6302881,
+ 31.0584835
+ ],
+ [
+ -105.6302881,
+ 30.9328271
+ ],
+ [
+ -105.5044418,
+ 30.9328271
+ ],
+ [
+ -105.5044418,
+ 30.8715864
+ ],
+ [
+ -105.4412973,
+ 30.8715864
+ ],
+ [
+ -105.4412973,
+ 30.808463
+ ],
+ [
+ -105.3781497,
+ 30.808463
+ ],
+ [
+ -105.3781497,
+ 30.7471828
+ ],
+ [
+ -105.1904658,
+ 30.7471828
+ ],
+ [
+ -105.1904658,
+ 30.6843231
+ ],
+ [
+ -105.1286244,
+ 30.6843231
+ ],
+ [
+ -105.1286244,
+ 30.6199737
+ ],
+ [
+ -105.0036504,
+ 30.6199737
+ ],
+ [
+ -105.0036504,
+ 30.5589058
+ ],
+ [
+ -104.9417962,
+ 30.5589058
+ ],
+ [
+ -104.9417962,
+ 30.4963236
+ ],
+ [
+ -104.8782018,
+ 30.4963236
+ ],
+ [
+ -104.8782018,
+ 30.3098261
+ ],
+ [
+ -104.8155257,
+ 30.3098261
+ ],
+ [
+ -104.8155257,
+ 30.2478305
+ ],
+ [
+ -104.7536079,
+ 30.2478305
+ ],
+ [
+ -104.7536079,
+ 29.9353916
+ ],
+ [
+ -104.690949,
+ 29.9353916
+ ],
+ [
+ -104.690949,
+ 29.8090156
+ ],
+ [
+ -104.6291301,
+ 29.8090156
+ ],
+ [
+ -104.6291301,
+ 29.6843577
+ ],
+ [
+ -104.5659869,
+ 29.6843577
+ ],
+ [
+ -104.5659869,
+ 29.6223459
+ ],
+ [
+ -104.5037188,
+ 29.6223459
+ ],
+ [
+ -104.5037188,
+ 29.5595436
+ ],
+ [
+ -104.4410072,
+ 29.5595436
+ ],
+ [
+ -104.4410072,
+ 29.4974832
+ ],
+ [
+ -104.2537551,
+ 29.4974832
+ ],
+ [
+ -104.2537551,
+ 29.3716718
+ ],
+ [
+ -104.1291984,
+ 29.3716718
+ ],
+ [
+ -104.1291984,
+ 29.3091621
+ ],
+ [
+ -104.0688737,
+ 29.3091621
+ ],
+ [
+ -104.0688737,
+ 29.2467276
+ ],
+ [
+ -103.8187309,
+ 29.2467276
+ ],
+ [
+ -103.8187309,
+ 29.1843076
+ ],
+ [
+ -103.755736,
+ 29.1843076
+ ],
+ [
+ -103.755736,
+ 29.1223174
+ ],
+ [
+ -103.5667542,
+ 29.1223174
+ ],
+ [
+ -103.5667542,
+ 29.0598119
+ ],
+ [
+ -103.5049819,
+ 29.0598119
+ ],
+ [
+ -103.5049819,
+ 28.9967506
+ ],
+ [
+ -103.3165753,
+ 28.9967506
+ ],
+ [
+ -103.3165753,
+ 28.9346923
+ ],
+ [
+ -103.0597572,
+ 28.9346923
+ ],
+ [
+ -103.0597572,
+ 29.0592965
+ ],
+ [
+ -102.9979694,
+ 29.0592965
+ ],
+ [
+ -102.9979694,
+ 29.1212855
+ ],
+ [
+ -102.9331397,
+ 29.1212855
+ ],
+ [
+ -102.9331397,
+ 29.1848575
+ ],
+ [
+ -102.8095989,
+ 29.1848575
+ ],
+ [
+ -102.8095989,
+ 29.2526154
+ ],
+ [
+ -102.8701345,
+ 29.2526154
+ ],
+ [
+ -102.8701345,
+ 29.308096
+ ],
+ [
+ -102.8096681,
+ 29.308096
+ ],
+ [
+ -102.8096681,
+ 29.3715484
+ ],
+ [
+ -102.7475655,
+ 29.3715484
+ ],
+ [
+ -102.7475655,
+ 29.5581899
+ ],
+ [
+ -102.684554,
+ 29.5581899
+ ],
+ [
+ -102.684554,
+ 29.6847655
+ ],
+ [
+ -102.4967764,
+ 29.6847655
+ ],
+ [
+ -102.4967764,
+ 29.7457694
+ ],
+ [
+ -102.3086647,
+ 29.7457694
+ ],
+ [
+ -102.3086647,
+ 29.8086627
+ ],
+ [
+ -102.1909323,
+ 29.8086627
+ ],
+ [
+ -102.1909323,
+ 29.7460097
+ ],
+ [
+ -101.5049914,
+ 29.7460097
+ ],
+ [
+ -101.5049914,
+ 29.6846777
+ ],
+ [
+ -101.3805796,
+ 29.6846777
+ ],
+ [
+ -101.3805796,
+ 29.5594459
+ ],
+ [
+ -101.3175057,
+ 29.5594459
+ ],
+ [
+ -101.3175057,
+ 29.4958934
+ ],
+ [
+ -101.1910075,
+ 29.4958934
+ ],
+ [
+ -101.1910075,
+ 29.4326115
+ ],
+ [
+ -101.067501,
+ 29.4326115
+ ],
+ [
+ -101.067501,
+ 29.308808
+ ],
+ [
+ -100.9418897,
+ 29.308808
+ ],
+ [
+ -100.9418897,
+ 29.2456231
+ ],
+ [
+ -100.8167271,
+ 29.2456231
+ ],
+ [
+ -100.8167271,
+ 29.1190449
+ ],
+ [
+ -100.7522672,
+ 29.1190449
+ ],
+ [
+ -100.7522672,
+ 29.0578214
+ ],
+ [
+ -100.6925358,
+ 29.0578214
+ ],
+ [
+ -100.6925358,
+ 28.8720431
+ ],
+ [
+ -100.6290158,
+ 28.8720431
+ ],
+ [
+ -100.6290158,
+ 28.8095363
+ ],
+ [
+ -100.5679901,
+ 28.8095363
+ ],
+ [
+ -100.5679901,
+ 28.622554
+ ],
+ [
+ -100.5040411,
+ 28.622554
+ ],
+ [
+ -100.5040411,
+ 28.5583804
+ ],
+ [
+ -100.4421832,
+ 28.5583804
+ ],
+ [
+ -100.4421832,
+ 28.4968266
+ ],
+ [
+ -100.379434,
+ 28.4968266
+ ],
+ [
+ -100.379434,
+ 28.3092865
+ ],
+ [
+ -100.3171942,
+ 28.3092865
+ ],
+ [
+ -100.3171942,
+ 28.1835681
+ ],
+ [
+ -100.254483,
+ 28.1835681
+ ],
+ [
+ -100.254483,
+ 28.1213885
+ ],
+ [
+ -100.1282282,
+ 28.1213885
+ ],
+ [
+ -100.1282282,
+ 28.059215
+ ],
+ [
+ -100.0659537,
+ 28.059215
+ ],
+ [
+ -100.0659537,
+ 27.9966087
+ ],
+ [
+ -100.0023855,
+ 27.9966087
+ ],
+ [
+ -100.0023855,
+ 27.9332152
+ ],
+ [
+ -99.9426497,
+ 27.9332152
+ ],
+ [
+ -99.9426497,
+ 27.7454658
+ ],
+ [
+ -99.816851,
+ 27.7454658
+ ],
+ [
+ -99.816851,
+ 27.6834301
+ ],
+ [
+ -99.7541346,
+ 27.6834301
+ ],
+ [
+ -99.7541346,
+ 27.6221543
+ ],
+ [
+ -99.6291629,
+ 27.6221543
+ ],
+ [
+ -99.6291629,
+ 27.5588977
+ ],
+ [
+ -99.5672838,
+ 27.5588977
+ ],
+ [
+ -99.5672838,
+ 27.4353752
+ ],
+ [
+ -99.5041798,
+ 27.4353752
+ ],
+ [
+ -99.5041798,
+ 27.3774021
+ ],
+ [
+ -99.5671796,
+ 27.3774021
+ ],
+ [
+ -99.5671796,
+ 27.2463726
+ ],
+ [
+ -99.504975,
+ 27.2463726
+ ],
+ [
+ -99.504975,
+ 26.9965649
+ ],
+ [
+ -99.4427427,
+ 26.9965649
+ ],
+ [
+ -99.4427427,
+ 26.872803
+ ],
+ [
+ -99.3800633,
+ 26.872803
+ ],
+ [
+ -99.3800633,
+ 26.8068179
+ ],
+ [
+ -99.3190684,
+ 26.8068179
+ ],
+ [
+ -99.3190684,
+ 26.7473614
+ ],
+ [
+ -99.2537541,
+ 26.7473614
+ ],
+ [
+ -99.2537541,
+ 26.6210068
+ ],
+ [
+ -99.1910617,
+ 26.6210068
+ ],
+ [
+ -99.1910617,
+ 26.4956737
+ ],
+ [
+ -99.1300639,
+ 26.4956737
+ ],
+ [
+ -99.1300639,
+ 26.3713808
+ ],
+ [
+ -99.0029473,
+ 26.3713808
+ ],
+ [
+ -99.0029473,
+ 26.3093836
+ ],
+ [
+ -98.816572,
+ 26.3093836
+ ],
+ [
+ -98.816572,
+ 26.2457762
+ ],
+ [
+ -98.6920082,
+ 26.2457762
+ ],
+ [
+ -98.6920082,
+ 26.1837096
+ ],
+ [
+ -98.4440896,
+ 26.1837096
+ ],
+ [
+ -98.4440896,
+ 26.1217217
+ ],
+ [
+ -98.3823181,
+ 26.1217217
+ ],
+ [
+ -98.3823181,
+ 26.0596488
+ ],
+ [
+ -98.2532707,
+ 26.0596488
+ ],
+ [
+ -98.2532707,
+ 25.9986871
+ ],
+ [
+ -98.0109084,
+ 25.9986871
+ ],
+ [
+ -98.0109084,
+ 25.9932255
+ ],
+ [
+ -97.6932319,
+ 25.9932255
+ ],
+ [
+ -97.6932319,
+ 25.9334103
+ ],
+ [
+ -97.6313904,
+ 25.9334103
+ ],
+ [
+ -97.6313904,
+ 25.8695893
+ ],
+ [
+ -97.5046779,
+ 25.8695893
+ ],
+ [
+ -97.5046779,
+ 25.8073488
+ ],
+ [
+ -97.3083401,
+ 25.8073488
+ ],
+ [
+ -97.3083401,
+ 25.8731159
+ ],
+ [
+ -97.2456326,
+ 25.8731159
+ ],
+ [
+ -97.2456326,
+ 25.9353731
+ ],
+ [
+ -97.1138939,
+ 25.9353731
+ ],
+ [
+ -97.1138939,
+ 27.6809179
+ ],
+ [
+ -97.0571035,
+ 27.6809179
+ ],
+ [
+ -97.0571035,
+ 27.8108242
+ ],
+ [
+ -95.5810766,
+ 27.8108242
+ ],
+ [
+ -95.5810766,
+ 28.7468827
+ ],
+ [
+ -94.271041,
+ 28.7468827
+ ],
+ [
+ -94.271041,
+ 29.5594076
+ ],
+ [
+ -92.5029947,
+ 29.5594076
+ ],
+ [
+ -92.5029947,
+ 29.4974754
+ ],
+ [
+ -91.8776216,
+ 29.4974754
+ ],
+ [
+ -91.8776216,
+ 29.3727013
+ ],
+ [
+ -91.378418,
+ 29.3727013
+ ],
+ [
+ -91.378418,
+ 29.2468326
+ ],
+ [
+ -91.3153953,
+ 29.2468326
+ ],
+ [
+ -91.3153953,
+ 29.1844301
+ ],
+ [
+ -91.1294702,
+ 29.1844301
+ ],
+ [
+ -91.1294702,
+ 29.1232559
+ ],
+ [
+ -91.0052632,
+ 29.1232559
+ ],
+ [
+ -91.0052632,
+ 28.9968437
+ ],
+ [
+ -89.4500159,
+ 28.9968437
+ ],
+ [
+ -89.4500159,
+ 28.8677422
+ ],
+ [
+ -88.8104309,
+ 28.8677422
+ ],
+ [
+ -88.8104309,
+ 30.1841864
+ ],
+ [
+ -85.8791527,
+ 30.1841864
+ ],
+ [
+ -85.8791527,
+ 29.5455038
+ ],
+ [
+ -84.8368083,
+ 29.5455038
+ ],
+ [
+ -84.8368083,
+ 29.6225158
+ ],
+ [
+ -84.7482786,
+ 29.6225158
+ ],
+ [
+ -84.7482786,
+ 29.683624
+ ],
+ [
+ -84.685894,
+ 29.683624
+ ],
+ [
+ -84.685894,
+ 29.7468386
+ ],
+ [
+ -83.6296975,
+ 29.7468386
+ ],
+ [
+ -83.6296975,
+ 29.4324361
+ ],
+ [
+ -83.3174937,
+ 29.4324361
+ ],
+ [
+ -83.3174937,
+ 29.0579442
+ ],
+ [
+ -82.879659,
+ 29.0579442
+ ],
+ [
+ -82.879659,
+ 27.7453529
+ ],
+ [
+ -82.8182822,
+ 27.7453529
+ ],
+ [
+ -82.8182822,
+ 26.9290868
+ ],
+ [
+ -82.3796782,
+ 26.9290868
+ ],
+ [
+ -82.3796782,
+ 26.3694183
+ ],
+ [
+ -81.8777106,
+ 26.3694183
+ ],
+ [
+ -81.8777106,
+ 25.805971
+ ],
+ [
+ -81.5036862,
+ 25.805971
+ ],
+ [
+ -81.5036862,
+ 25.7474753
+ ],
+ [
+ -81.4405462,
+ 25.7474753
+ ],
+ [
+ -81.4405462,
+ 25.6851489
+ ],
+ [
+ -81.3155883,
+ 25.6851489
+ ],
+ [
+ -81.3155883,
+ 25.5600985
+ ],
+ [
+ -81.2538534,
+ 25.5600985
+ ],
+ [
+ -81.2538534,
+ 25.4342361
+ ],
+ [
+ -81.1902012,
+ 25.4342361
+ ],
+ [
+ -81.1902012,
+ 25.1234341
+ ],
+ [
+ -81.1288133,
+ 25.1234341
+ ],
+ [
+ -81.1288133,
+ 25.0619389
+ ],
+ [
+ -81.0649231,
+ 25.0619389
+ ],
+ [
+ -81.0649231,
+ 24.8157807
+ ],
+ [
+ -81.6289469,
+ 24.8157807
+ ],
+ [
+ -81.6289469,
+ 24.7538367
+ ],
+ [
+ -81.6907173,
+ 24.7538367
+ ],
+ [
+ -81.6907173,
+ 24.6899374
+ ],
+ [
+ -81.8173189,
+ 24.6899374
+ ],
+ [
+ -81.8173189,
+ 24.6279161
+ ],
+ [
+ -82.1910041,
+ 24.6279161
+ ],
+ [
+ -82.1910041,
+ 24.496294
+ ],
+ [
+ -81.6216596,
+ 24.496294
+ ],
+ [
+ -81.6216596,
+ 24.559484
+ ],
+ [
+ -81.372006,
+ 24.559484
+ ],
+ [
+ -81.372006,
+ 24.6220687
+ ],
+ [
+ -81.0593278,
+ 24.6220687
+ ],
+ [
+ -81.0593278,
+ 24.684826
+ ],
+ [
+ -80.9347147,
+ 24.684826
+ ],
+ [
+ -80.9347147,
+ 24.7474828
+ ],
+ [
+ -80.7471081,
+ 24.7474828
+ ],
+ [
+ -80.7471081,
+ 24.8100618
+ ],
+ [
+ -80.3629898,
+ 24.8100618
+ ],
+ [
+ -80.3629898,
+ 25.1175858
+ ],
+ [
+ -80.122344,
+ 25.1175858
+ ],
+ [
+ -80.122344,
+ 25.7472357
+ ],
+ [
+ -80.0588458,
+ 25.7472357
+ ],
+ [
+ -80.0588458,
+ 26.3708251
+ ],
+ [
+ -79.995837,
+ 26.3708251
+ ],
+ [
+ -79.995837,
+ 26.9398003
+ ],
+ [
+ -80.0587265,
+ 26.9398003
+ ],
+ [
+ -80.0587265,
+ 27.1277466
+ ],
+ [
+ -80.1226251,
+ 27.1277466
+ ],
+ [
+ -80.1226251,
+ 27.2534279
+ ],
+ [
+ -80.1846956,
+ 27.2534279
+ ],
+ [
+ -80.1846956,
+ 27.3781229
+ ],
+ [
+ -80.246175,
+ 27.3781229
+ ],
+ [
+ -80.246175,
+ 27.5658729
+ ],
+ [
+ -80.3094768,
+ 27.5658729
+ ],
+ [
+ -80.3094768,
+ 27.7530311
+ ],
+ [
+ -80.3721485,
+ 27.7530311
+ ],
+ [
+ -80.3721485,
+ 27.8774451
+ ],
+ [
+ -80.4351457,
+ 27.8774451
+ ],
+ [
+ -80.4351457,
+ 28.0033366
+ ],
+ [
+ -80.4966078,
+ 28.0033366
+ ],
+ [
+ -80.4966078,
+ 28.1277326
+ ],
+ [
+ -80.5587159,
+ 28.1277326
+ ],
+ [
+ -80.5587159,
+ 28.3723509
+ ],
+ [
+ -80.4966335,
+ 28.3723509
+ ],
+ [
+ -80.4966335,
+ 29.5160326
+ ],
+ [
+ -81.1213644,
+ 29.5160326
+ ],
+ [
+ -81.1213644,
+ 31.6846966
+ ],
+ [
+ -80.6018723,
+ 31.6846966
+ ],
+ [
+ -80.6018723,
+ 32.2475309
+ ],
+ [
+ -79.4921024,
+ 32.2475309
+ ],
+ [
+ -79.4921024,
+ 32.9970261
+ ],
+ [
+ -79.1116488,
+ 32.9970261
+ ],
+ [
+ -79.1116488,
+ 33.3729457
+ ],
+ [
+ -78.6153621,
+ 33.3729457
+ ],
+ [
+ -78.6153621,
+ 33.8097638
+ ],
+ [
+ -77.9316963,
+ 33.8097638
+ ],
+ [
+ -77.9316963,
+ 33.8718243
+ ],
+ [
+ -77.8692252,
+ 33.8718243
+ ],
+ [
+ -77.8692252,
+ 34.0552454
+ ],
+ [
+ -77.6826392,
+ 34.0552454
+ ],
+ [
+ -77.6826392,
+ 34.2974598
+ ],
+ [
+ -77.2453509,
+ 34.2974598
+ ],
+ [
+ -77.2453509,
+ 34.5598585
+ ],
+ [
+ -76.4973277,
+ 34.5598585
+ ],
+ [
+ -76.4973277,
+ 34.622796
+ ],
+ [
+ -76.4337602,
+ 34.622796
+ ],
+ [
+ -76.4337602,
+ 34.6849285
+ ],
+ [
+ -76.373212,
+ 34.6849285
+ ],
+ [
+ -76.373212,
+ 34.7467674
+ ],
+ [
+ -76.3059364,
+ 34.7467674
+ ],
+ [
+ -76.3059364,
+ 34.808551
+ ],
+ [
+ -76.2468017,
+ 34.808551
+ ],
+ [
+ -76.2468017,
+ 34.8728418
+ ],
+ [
+ -76.1825922,
+ 34.8728418
+ ],
+ [
+ -76.1825922,
+ 34.9335332
+ ],
+ [
+ -76.120814,
+ 34.9335332
+ ],
+ [
+ -76.120814,
+ 34.9952359
+ ],
+ [
+ -75.9979015,
+ 34.9952359
+ ],
+ [
+ -75.9979015,
+ 35.0578182
+ ],
+ [
+ -75.870338,
+ 35.0578182
+ ],
+ [
+ -75.870338,
+ 35.1219097
+ ],
+ [
+ -75.7462194,
+ 35.1219097
+ ],
+ [
+ -75.7462194,
+ 35.1818911
+ ],
+ [
+ -75.4929694,
+ 35.1818911
+ ],
+ [
+ -75.4929694,
+ 35.3082988
+ ],
+ [
+ -75.4325662,
+ 35.3082988
+ ],
+ [
+ -75.4325662,
+ 35.7542495
+ ],
+ [
+ -75.4969907,
+ 35.7542495
+ ],
+ [
+ -75.4969907,
+ 37.8105602
+ ],
+ [
+ -75.3082972,
+ 37.8105602
+ ],
+ [
+ -75.3082972,
+ 37.8720088
+ ],
+ [
+ -75.245601,
+ 37.8720088
+ ],
+ [
+ -75.245601,
+ 37.9954849
+ ],
+ [
+ -75.1828751,
+ 37.9954849
+ ],
+ [
+ -75.1828751,
+ 38.0585079
+ ],
+ [
+ -75.1184793,
+ 38.0585079
+ ],
+ [
+ -75.1184793,
+ 38.2469091
+ ],
+ [
+ -75.0592098,
+ 38.2469091
+ ],
+ [
+ -75.0592098,
+ 38.3704316
+ ],
+ [
+ -74.9948111,
+ 38.3704316
+ ],
+ [
+ -74.9948111,
+ 38.8718417
+ ],
+ [
+ -74.4878252,
+ 38.8718417
+ ],
+ [
+ -74.4878252,
+ 39.3089428
+ ],
+ [
+ -74.1766317,
+ 39.3089428
+ ],
+ [
+ -74.1766317,
+ 39.6224653
+ ],
+ [
+ -74.0567045,
+ 39.6224653
+ ],
+ [
+ -74.0567045,
+ 39.933178
+ ],
+ [
+ -73.9959035,
+ 39.933178
+ ],
+ [
+ -73.9959035,
+ 40.1854852
+ ],
+ [
+ -73.9341593,
+ 40.1854852
+ ],
+ [
+ -73.9341593,
+ 40.4959486
+ ],
+ [
+ -73.8723024,
+ 40.4959486
+ ],
+ [
+ -73.8723024,
+ 40.5527135
+ ],
+ [
+ -71.8074506,
+ 40.5527135
+ ],
+ [
+ -71.8074506,
+ 41.3088005
+ ],
+ [
+ -70.882512,
+ 41.3088005
+ ],
+ [
+ -70.882512,
+ 41.184978
+ ],
+ [
+ -70.7461947,
+ 41.184978
+ ],
+ [
+ -70.7461947,
+ 41.3091865
+ ],
+ [
+ -70.4337553,
+ 41.3091865
+ ],
+ [
+ -70.4337553,
+ 41.4963885
+ ],
+ [
+ -69.9334281,
+ 41.4963885
+ ],
+ [
+ -69.9334281,
+ 41.6230802
+ ],
+ [
+ -69.869857,
+ 41.6230802
+ ],
+ [
+ -69.869857,
+ 41.8776895
+ ],
+ [
+ -69.935791,
+ 41.8776895
+ ],
+ [
+ -69.935791,
+ 42.0032342
+ ],
+ [
+ -69.9975823,
+ 42.0032342
+ ],
+ [
+ -69.9975823,
+ 42.0650191
+ ],
+ [
+ -70.0606103,
+ 42.0650191
+ ],
+ [
+ -70.0606103,
+ 42.1294348
+ ],
+ [
+ -70.5572884,
+ 42.1294348
+ ],
+ [
+ -70.5572884,
+ 43.2487079
+ ],
+ [
+ -70.4974097,
+ 43.2487079
+ ],
+ [
+ -70.4974097,
+ 43.3092194
+ ],
+ [
+ -70.3704249,
+ 43.3092194
+ ],
+ [
+ -70.3704249,
+ 43.371963
+ ],
+ [
+ -70.3085701,
+ 43.371963
+ ],
+ [
+ -70.3085701,
+ 43.4969879
+ ],
+ [
+ -70.183921,
+ 43.4969879
+ ],
+ [
+ -70.183921,
+ 43.6223531
+ ],
+ [
+ -70.057583,
+ 43.6223531
+ ],
+ [
+ -70.057583,
+ 43.6850173
+ ],
+ [
+ -69.7455247,
+ 43.6850173
+ ],
+ [
+ -69.7455247,
+ 43.7476571
+ ],
+ [
+ -69.2472845,
+ 43.7476571
+ ],
+ [
+ -69.2472845,
+ 43.8107035
+ ],
+ [
+ -69.0560701,
+ 43.8107035
+ ],
+ [
+ -69.0560701,
+ 43.8717247
+ ],
+ [
+ -68.9950522,
+ 43.8717247
+ ],
+ [
+ -68.9950522,
+ 43.9982022
+ ],
+ [
+ -68.4963672,
+ 43.9982022
+ ],
+ [
+ -68.4963672,
+ 44.0597368
+ ],
+ [
+ -68.3081038,
+ 44.0597368
+ ],
+ [
+ -68.3081038,
+ 44.122137
+ ],
+ [
+ -68.1851802,
+ 44.122137
+ ],
+ [
+ -68.1851802,
+ 44.3081382
+ ],
+ [
+ -67.9956019,
+ 44.3081382
+ ],
+ [
+ -67.9956019,
+ 44.3727489
+ ],
+ [
+ -67.8103041,
+ 44.3727489
+ ],
+ [
+ -67.8103041,
+ 44.435178
+ ],
+ [
+ -67.4965289,
+ 44.435178
+ ],
+ [
+ -67.4965289,
+ 44.4968776
+ ],
+ [
+ -67.37102,
+ 44.4968776
+ ],
+ [
+ -67.37102,
+ 44.5600642
+ ],
+ [
+ -67.1848753,
+ 44.5600642
+ ],
+ [
+ -67.1848753,
+ 44.6213345
+ ],
+ [
+ -67.1221208,
+ 44.6213345
+ ],
+ [
+ -67.1221208,
+ 44.6867918
+ ],
+ [
+ -67.059365,
+ 44.6867918
+ ],
+ [
+ -67.059365,
+ 44.7473657
+ ],
+ [
+ -66.9311098,
+ 44.7473657
+ ],
+ [
+ -66.9311098,
+ 44.9406566
+ ],
+ [
+ -66.994683,
+ 44.9406566
+ ],
+ [
+ -66.994683,
+ 45.0024514
+ ],
+ [
+ -67.0595847,
+ 45.0024514
+ ],
+ [
+ -67.0595847,
+ 45.1273377
+ ],
+ [
+ -67.1201974,
+ 45.1273377
+ ],
+ [
+ -67.1201974,
+ 45.1910115
+ ],
+ [
+ -67.2469811,
+ 45.1910115
+ ],
+ [
+ -67.2469811,
+ 45.253442
+ ],
+ [
+ -67.3177546,
+ 45.253442
+ ],
+ [
+ -67.3177546,
+ 45.1898369
+ ],
+ [
+ -67.370749,
+ 45.1898369
+ ],
+ [
+ -67.370749,
+ 45.2534001
+ ],
+ [
+ -67.4326888,
+ 45.2534001
+ ],
+ [
+ -67.4326888,
+ 45.3083409
+ ],
+ [
+ -67.3708571,
+ 45.3083409
+ ],
+ [
+ -67.3708571,
+ 45.4396986
+ ],
+ [
+ -67.4305573,
+ 45.4396986
+ ],
+ [
+ -67.4305573,
+ 45.4950095
+ ],
+ [
+ -67.37099,
+ 45.4950095
+ ],
+ [
+ -67.37099,
+ 45.6264543
+ ],
+ [
+ -67.6214982,
+ 45.6264543
+ ],
+ [
+ -67.6214982,
+ 45.6896133
+ ],
+ [
+ -67.683828,
+ 45.6896133
+ ],
+ [
+ -67.683828,
+ 45.753259
+ ],
+ [
+ -67.7462097,
+ 45.753259
+ ],
+ [
+ -67.7462097,
+ 47.1268165
+ ],
+ [
+ -67.8700141,
+ 47.1268165
+ ],
+ [
+ -67.8700141,
+ 47.1900278
+ ],
+ [
+ -67.9323803,
+ 47.1900278
+ ],
+ [
+ -67.9323803,
+ 47.2539678
+ ],
+ [
+ -67.9959387,
+ 47.2539678
+ ],
+ [
+ -67.9959387,
+ 47.3149737
+ ],
+ [
+ -68.1206676,
+ 47.3149737
+ ],
+ [
+ -68.1206676,
+ 47.3780823
+ ],
+ [
+ -68.4423175,
+ 47.3780823
+ ],
+ [
+ -68.4423175,
+ 47.3166082
+ ],
+ [
+ -68.6314305,
+ 47.3166082
+ ],
+ [
+ -68.6314305,
+ 47.2544676
+ ],
+ [
+ -68.9978037,
+ 47.2544676
+ ],
+ [
+ -68.9978037,
+ 47.439895
+ ],
+ [
+ -69.0607223,
+ 47.439895
+ ],
+ [
+ -69.0607223,
+ 47.5047558
+ ],
+ [
+ -69.2538122,
+ 47.5047558
+ ],
+ [
+ -69.2538122,
+ 47.4398084
+ ],
+ [
+ -69.3179284,
+ 47.4398084
+ ],
+ [
+ -69.3179284,
+ 47.378601
+ ],
+ [
+ -69.4438546,
+ 47.378601
+ ],
+ [
+ -69.4438546,
+ 47.3156274
+ ],
+ [
+ -69.5038204,
+ 47.3156274
+ ],
+ [
+ -69.5038204,
+ 47.2525839
+ ],
+ [
+ -69.5667838,
+ 47.2525839
+ ],
+ [
+ -69.5667838,
+ 47.1910884
+ ],
+ [
+ -69.6303478,
+ 47.1910884
+ ],
+ [
+ -69.6303478,
+ 47.128701
+ ],
+ [
+ -69.6933103,
+ 47.128701
+ ],
+ [
+ -69.6933103,
+ 47.0654307
+ ],
+ [
+ -69.7557063,
+ 47.0654307
+ ],
+ [
+ -69.7557063,
+ 47.0042751
+ ],
+ [
+ -69.8180391,
+ 47.0042751
+ ],
+ [
+ -69.8180391,
+ 46.9415344
+ ],
+ [
+ -69.8804023,
+ 46.9415344
+ ],
+ [
+ -69.8804023,
+ 46.8792519
+ ],
+ [
+ -69.9421674,
+ 46.8792519
+ ],
+ [
+ -69.9421674,
+ 46.8177399
+ ],
+ [
+ -70.0063088,
+ 46.8177399
+ ],
+ [
+ -70.0063088,
+ 46.6920295
+ ],
+ [
+ -70.0704265,
+ 46.6920295
+ ],
+ [
+ -70.0704265,
+ 46.4425926
+ ],
+ [
+ -70.1945902,
+ 46.4425926
+ ],
+ [
+ -70.1945902,
+ 46.3785887
+ ],
+ [
+ -70.2562047,
+ 46.3785887
+ ],
+ [
+ -70.2562047,
+ 46.3152628
+ ],
+ [
+ -70.3203651,
+ 46.3152628
+ ],
+ [
+ -70.3203651,
+ 46.0651209
+ ],
+ [
+ -70.3814988,
+ 46.0651209
+ ],
+ [
+ -70.3814988,
+ 45.93552
+ ],
+ [
+ -70.3201618,
+ 45.93552
+ ],
+ [
+ -70.3201618,
+ 45.879479
+ ],
+ [
+ -70.4493131,
+ 45.879479
+ ],
+ [
+ -70.4493131,
+ 45.7538713
+ ],
+ [
+ -70.5070021,
+ 45.7538713
+ ],
+ [
+ -70.5070021,
+ 45.6916912
+ ],
+ [
+ -70.6316642,
+ 45.6916912
+ ],
+ [
+ -70.6316642,
+ 45.6291619
+ ],
+ [
+ -70.7575538,
+ 45.6291619
+ ],
+ [
+ -70.7575538,
+ 45.4414685
+ ],
+ [
+ -70.8809878,
+ 45.4414685
+ ],
+ [
+ -70.8809878,
+ 45.3780612
+ ],
+ [
+ -71.13328,
+ 45.3780612
+ ],
+ [
+ -71.13328,
+ 45.3151452
+ ],
+ [
+ -71.3830282,
+ 45.3151452
+ ],
+ [
+ -71.3830282,
+ 45.253416
+ ],
+ [
+ -71.5076448,
+ 45.253416
+ ],
+ [
+ -71.5076448,
+ 45.0655726
+ ],
+ [
+ -73.9418929,
+ 45.0655726
+ ],
+ [
+ -73.9418929,
+ 45.0031242
+ ],
+ [
+ -74.7469725,
+ 45.0031242
+ ],
+ [
+ -74.7469725,
+ 45.0649003
+ ],
+ [
+ -74.8800964,
+ 45.0649003
+ ],
+ [
+ -74.8800964,
+ 45.0029023
+ ],
+ [
+ -75.0662455,
+ 45.0029023
+ ],
+ [
+ -75.0662455,
+ 44.9415167
+ ],
+ [
+ -75.2539363,
+ 44.9415167
+ ],
+ [
+ -75.2539363,
+ 44.8776043
+ ],
+ [
+ -75.3789648,
+ 44.8776043
+ ],
+ [
+ -75.3789648,
+ 44.8153462
+ ],
+ [
+ -75.4431283,
+ 44.8153462
+ ],
+ [
+ -75.4431283,
+ 44.7536053
+ ],
+ [
+ -75.5666566,
+ 44.7536053
+ ],
+ [
+ -75.5666566,
+ 44.6909879
+ ],
+ [
+ -75.6290205,
+ 44.6909879
+ ],
+ [
+ -75.6290205,
+ 44.6284958
+ ],
+ [
+ -75.7540484,
+ 44.6284958
+ ],
+ [
+ -75.7540484,
+ 44.566385
+ ],
+ [
+ -75.817312,
+ 44.566385
+ ],
+ [
+ -75.817312,
+ 44.5028932
+ ],
+ [
+ -75.8799549,
+ 44.5028932
+ ],
+ [
+ -75.8799549,
+ 44.3784946
+ ],
+ [
+ -76.1300319,
+ 44.3784946
+ ],
+ [
+ -76.1300319,
+ 44.3159227
+ ],
+ [
+ -76.1926961,
+ 44.3159227
+ ],
+ [
+ -76.1926961,
+ 44.2534378
+ ],
+ [
+ -76.3182619,
+ 44.2534378
+ ],
+ [
+ -76.3182619,
+ 44.1916726
+ ],
+ [
+ -76.3792975,
+ 44.1916726
+ ],
+ [
+ -76.3792975,
+ 44.0653733
+ ],
+ [
+ -76.4427584,
+ 44.0653733
+ ],
+ [
+ -76.4427584,
+ 43.9963825
+ ],
+ [
+ -76.317027,
+ 43.9963825
+ ],
+ [
+ -76.317027,
+ 43.9414581
+ ],
+ [
+ -76.5076611,
+ 43.9414581
+ ],
+ [
+ -76.5076611,
+ 43.8723335
+ ],
+ [
+ -76.3829974,
+ 43.8723335
+ ],
+ [
+ -76.3829974,
+ 43.8091872
+ ],
+ [
+ -76.2534102,
+ 43.8091872
+ ],
+ [
+ -76.2534102,
+ 43.5665222
+ ],
+ [
+ -76.5064833,
+ 43.5665222
+ ],
+ [
+ -76.5064833,
+ 43.5033881
+ ],
+ [
+ -76.6331208,
+ 43.5033881
+ ],
+ [
+ -76.6331208,
+ 43.4432252
+ ],
+ [
+ -76.6951085,
+ 43.4432252
+ ],
+ [
+ -76.6951085,
+ 43.3786858
+ ],
+ [
+ -76.8177798,
+ 43.3786858
+ ],
+ [
+ -76.8177798,
+ 43.318066
+ ],
+ [
+ -77.682,
+ 43.318066
+ ],
+ [
+ -77.682,
+ 43.3789376
+ ],
+ [
+ -78.0565883,
+ 43.3789376
+ ],
+ [
+ -78.0565883,
+ 43.4396918
+ ],
+ [
+ -78.4389748,
+ 43.4396918
+ ],
+ [
+ -78.4389748,
+ 43.3794382
+ ],
+ [
+ -78.8803396,
+ 43.3794382
+ ],
+ [
+ -78.8803396,
+ 43.3149724
+ ],
+ [
+ -79.1298858,
+ 43.3149724
+ ],
+ [
+ -79.1298858,
+ 43.2429286
+ ],
+ [
+ -79.0669615,
+ 43.2429286
+ ],
+ [
+ -79.0669615,
+ 43.1299931
+ ],
+ [
+ -79.1298858,
+ 43.1299931
+ ],
+ [
+ -79.1298858,
+ 43.0577305
+ ],
+ [
+ -79.071264,
+ 43.0577305
+ ],
+ [
+ -79.071264,
+ 42.9294906
+ ],
+ [
+ -78.943264,
+ 42.9294906
+ ],
+ [
+ -78.943264,
+ 42.7542165
+ ],
+ [
+ -79.069439,
+ 42.7542165
+ ],
+ [
+ -79.069439,
+ 42.6941622
+ ],
+ [
+ -79.133439,
+ 42.6941622
+ ],
+ [
+ -79.133439,
+ 42.6296973
+ ],
+ [
+ -79.1947499,
+ 42.6296973
+ ],
+ [
+ -79.1947499,
+ 42.5663538
+ ],
+ [
+ -79.3786827,
+ 42.5663538
+ ],
+ [
+ -79.3786827,
+ 42.5033425
+ ],
+ [
+ -79.4442961,
+ 42.5033425
+ ],
+ [
+ -79.4442961,
+ 42.4410614
+ ],
+ [
+ -79.5679936,
+ 42.4410614
+ ],
+ [
+ -79.5679936,
+ 42.3775264
+ ],
+ [
+ -79.6906154,
+ 42.3775264
+ ],
+ [
+ -79.6906154,
+ 42.3171086
+ ],
+ [
+ -79.8164642,
+ 42.3171086
+ ],
+ [
+ -79.8164642,
+ 42.2534481
+ ],
+ [
+ -80.0052373,
+ 42.2534481
+ ],
+ [
+ -80.0052373,
+ 42.1909188
+ ],
+ [
+ -80.1916829,
+ 42.1909188
+ ],
+ [
+ -80.1916829,
+ 42.1272555
+ ],
+ [
+ -80.3167992,
+ 42.1272555
+ ],
+ [
+ -80.3167992,
+ 42.0669857
+ ],
+ [
+ -80.5063234,
+ 42.0669857
+ ],
+ [
+ -80.5063234,
+ 42.0034331
+ ],
+ [
+ -80.6930471,
+ 42.0034331
+ ],
+ [
+ -80.6930471,
+ 41.9415141
+ ],
+ [
+ -80.9440403,
+ 41.9415141
+ ],
+ [
+ -80.9440403,
+ 41.8781193
+ ],
+ [
+ -81.1942729,
+ 41.8781193
+ ],
+ [
+ -81.1942729,
+ 41.8166455
+ ],
+ [
+ -81.3190089,
+ 41.8166455
+ ],
+ [
+ -81.3190089,
+ 41.7545453
+ ],
+ [
+ -81.4418435,
+ 41.7545453
+ ],
+ [
+ -81.4418435,
+ 41.690965
+ ],
+ [
+ -81.5053523,
+ 41.690965
+ ],
+ [
+ -81.5053523,
+ 41.6301643
+ ],
+ [
+ -82.7470081,
+ 41.6301643
+ ],
+ [
+ -82.7470081,
+ 41.7536942
+ ],
+ [
+ -82.8839135,
+ 41.7536942
+ ],
+ [
+ -82.8839135,
+ 41.5656075
+ ],
+ [
+ -82.9957195,
+ 41.5656075
+ ],
+ [
+ -82.9957195,
+ 41.6270375
+ ],
+ [
+ -83.1257796,
+ 41.6270375
+ ],
+ [
+ -83.1257796,
+ 41.6878411
+ ],
+ [
+ -83.2474733,
+ 41.6878411
+ ],
+ [
+ -83.2474733,
+ 41.7536942
+ ],
+ [
+ -83.3737305,
+ 41.7536942
+ ],
+ [
+ -83.3737305,
+ 41.809276
+ ],
+ [
+ -83.3106019,
+ 41.809276
+ ],
+ [
+ -83.3106019,
+ 41.8716064
+ ],
+ [
+ -83.2474733,
+ 41.8716064
+ ],
+ [
+ -83.2474733,
+ 41.9361393
+ ],
+ [
+ -83.1843447,
+ 41.9361393
+ ],
+ [
+ -83.1843447,
+ 41.9960851
+ ],
+ [
+ -83.1207681,
+ 41.9960851
+ ],
+ [
+ -83.1207681,
+ 42.2464812
+ ],
+ [
+ -83.0589194,
+ 42.2464812
+ ],
+ [
+ -83.0589194,
+ 42.3089555
+ ],
+ [
+ -82.8685328,
+ 42.3089555
+ ],
+ [
+ -82.8685328,
+ 42.3717652
+ ],
+ [
+ -82.8072219,
+ 42.3717652
+ ],
+ [
+ -82.8072219,
+ 42.558553
+ ],
+ [
+ -82.7553745,
+ 42.558553
+ ],
+ [
+ -82.7553745,
+ 42.4954945
+ ],
+ [
+ -82.5599041,
+ 42.4954945
+ ],
+ [
+ -82.5599041,
+ 42.558553
+ ],
+ [
+ -82.4967755,
+ 42.558553
+ ],
+ [
+ -82.4967755,
+ 42.6833607
+ ],
+ [
+ -82.4328863,
+ 42.6833607
+ ],
+ [
+ -82.4328863,
+ 42.9342196
+ ],
+ [
+ -82.3700552,
+ 42.9342196
+ ],
+ [
+ -82.3700552,
+ 43.0648071
+ ],
+ [
+ -82.4328863,
+ 43.0648071
+ ],
+ [
+ -82.4328863,
+ 43.1917566
+ ],
+ [
+ -82.4947464,
+ 43.1917566
+ ],
+ [
+ -82.4947464,
+ 43.5034627
+ ],
+ [
+ -82.557133,
+ 43.5034627
+ ],
+ [
+ -82.557133,
+ 43.8160901
+ ],
+ [
+ -82.6197884,
+ 43.8160901
+ ],
+ [
+ -82.6197884,
+ 43.9422098
+ ],
+ [
+ -82.6839499,
+ 43.9422098
+ ],
+ [
+ -82.6839499,
+ 44.0022641
+ ],
+ [
+ -82.7465346,
+ 44.0022641
+ ],
+ [
+ -82.7465346,
+ 44.0670545
+ ],
+ [
+ -82.8708696,
+ 44.0670545
+ ],
+ [
+ -82.8708696,
+ 44.1291935
+ ],
+ [
+ -83.008517,
+ 44.1291935
+ ],
+ [
+ -83.008517,
+ 44.0664786
+ ],
+ [
+ -83.1336086,
+ 44.0664786
+ ],
+ [
+ -83.1336086,
+ 44.0053949
+ ],
+ [
+ -83.2414522,
+ 44.0053949
+ ],
+ [
+ -83.2414522,
+ 44.9962034
+ ],
+ [
+ -83.1806112,
+ 44.9962034
+ ],
+ [
+ -83.1806112,
+ 45.067302
+ ],
+ [
+ -83.2455172,
+ 45.067302
+ ],
+ [
+ -83.2455172,
+ 45.1287382
+ ],
+ [
+ -83.3065878,
+ 45.1287382
+ ],
+ [
+ -83.3065878,
+ 45.2551509
+ ],
+ [
+ -83.3706087,
+ 45.2551509
+ ],
+ [
+ -83.3706087,
+ 45.3165923
+ ],
+ [
+ -83.4325644,
+ 45.3165923
+ ],
+ [
+ -83.4325644,
+ 45.3792105
+ ],
+ [
+ -83.6178415,
+ 45.3792105
+ ],
+ [
+ -83.6178415,
+ 45.4419665
+ ],
+ [
+ -83.8084291,
+ 45.4419665
+ ],
+ [
+ -83.8084291,
+ 45.5036189
+ ],
+ [
+ -84.0550718,
+ 45.5036189
+ ],
+ [
+ -84.0550718,
+ 45.5647907
+ ],
+ [
+ -84.1235181,
+ 45.5647907
+ ],
+ [
+ -84.1235181,
+ 45.6287845
+ ],
+ [
+ -84.1807534,
+ 45.6287845
+ ],
+ [
+ -84.1807534,
+ 45.6914688
+ ],
+ [
+ -84.3111554,
+ 45.6914688
+ ],
+ [
+ -84.3111554,
+ 45.9337076
+ ],
+ [
+ -83.8209974,
+ 45.9337076
+ ],
+ [
+ -83.8209974,
+ 45.8725113
+ ],
+ [
+ -83.4968086,
+ 45.8725113
+ ],
+ [
+ -83.4968086,
+ 45.9337076
+ ],
+ [
+ -83.4338066,
+ 45.9337076
+ ],
+ [
+ -83.4338066,
+ 46.0016863
+ ],
+ [
+ -83.4962697,
+ 46.0016863
+ ],
+ [
+ -83.4962697,
+ 46.0668178
+ ],
+ [
+ -83.5599956,
+ 46.0668178
+ ],
+ [
+ -83.5599956,
+ 46.1261576
+ ],
+ [
+ -83.9954558,
+ 46.1261576
+ ],
+ [
+ -83.9954558,
+ 46.1931747
+ ],
+ [
+ -84.0591816,
+ 46.1931747
+ ],
+ [
+ -84.0591816,
+ 46.3814972
+ ],
+ [
+ -84.1152614,
+ 46.3814972
+ ],
+ [
+ -84.1152614,
+ 46.4953584
+ ],
+ [
+ -84.0591816,
+ 46.4953584
+ ],
+ [
+ -84.0591816,
+ 46.5682653
+ ],
+ [
+ -84.2579545,
+ 46.5682653
+ ],
+ [
+ -84.2579545,
+ 46.5051232
+ ],
+ [
+ -84.3071879,
+ 46.5051232
+ ],
+ [
+ -84.3071879,
+ 46.5682653
+ ],
+ [
+ -84.4415364,
+ 46.5682653
+ ],
+ [
+ -84.4415364,
+ 46.504525
+ ],
+ [
+ -84.9965729,
+ 46.504525
+ ],
+ [
+ -84.9965729,
+ 46.6842882
+ ],
+ [
+ -84.9298158,
+ 46.6842882
+ ],
+ [
+ -84.9298158,
+ 46.818077
+ ],
+ [
+ -85.3165894,
+ 46.818077
+ ],
+ [
+ -85.3165894,
+ 46.7535825
+ ],
+ [
+ -87.5562645,
+ 46.7535825
+ ],
+ [
+ -87.5562645,
+ 47.4407371
+ ],
+ [
+ -87.6825361,
+ 47.4407371
+ ],
+ [
+ -87.6825361,
+ 47.5035554
+ ],
+ [
+ -88.2560738,
+ 47.5035554
+ ],
+ [
+ -88.2560738,
+ 47.4433716
+ ],
+ [
+ -88.4417419,
+ 47.4433716
+ ],
+ [
+ -88.4417419,
+ 47.3789949
+ ],
+ [
+ -88.50683,
+ 47.3789949
+ ],
+ [
+ -88.50683,
+ 47.3153881
+ ],
+ [
+ -88.6312821,
+ 47.3153881
+ ],
+ [
+ -88.6312821,
+ 47.2539782
+ ],
+ [
+ -88.7569636,
+ 47.2539782
+ ],
+ [
+ -88.7569636,
+ 47.1934682
+ ],
+ [
+ -88.8838253,
+ 47.1934682
+ ],
+ [
+ -88.8838253,
+ 47.1284735
+ ],
+ [
+ -88.9434208,
+ 47.1284735
+ ],
+ [
+ -88.9434208,
+ 47.0662127
+ ],
+ [
+ -89.0708726,
+ 47.0662127
+ ],
+ [
+ -89.0708726,
+ 47.0026826
+ ],
+ [
+ -89.2565553,
+ 47.0026826
+ ],
+ [
+ -89.2565553,
+ 46.9410806
+ ],
+ [
+ -90.3677669,
+ 46.9410806
+ ],
+ [
+ -90.3677669,
+ 47.6844827
+ ],
+ [
+ -90.3069978,
+ 47.6844827
+ ],
+ [
+ -90.3069978,
+ 47.7460174
+ ],
+ [
+ -89.994859,
+ 47.7460174
+ ],
+ [
+ -89.994859,
+ 47.8082719
+ ],
+ [
+ -89.8048615,
+ 47.8082719
+ ],
+ [
+ -89.8048615,
+ 47.8700562
+ ],
+ [
+ -89.6797699,
+ 47.8700562
+ ],
+ [
+ -89.6797699,
+ 47.9339637
+ ],
+ [
+ -89.4933757,
+ 47.9339637
+ ],
+ [
+ -89.4933757,
+ 47.9957956
+ ],
+ [
+ -89.4284697,
+ 47.9957956
+ ],
+ [
+ -89.4284697,
+ 48.0656377
+ ],
+ [
+ -89.9932739,
+ 48.0656377
+ ],
+ [
+ -89.9932739,
+ 48.1282966
+ ],
+ [
+ -90.7455933,
+ 48.1282966
+ ],
+ [
+ -90.7455933,
+ 48.1893056
+ ],
+ [
+ -90.8087291,
+ 48.1893056
+ ],
+ [
+ -90.8087291,
+ 48.2522065
+ ],
+ [
+ -91.067763,
+ 48.2522065
+ ],
+ [
+ -91.067763,
+ 48.1916658
+ ],
+ [
+ -91.1946247,
+ 48.1916658
+ ],
+ [
+ -91.1946247,
+ 48.1279027
+ ],
+ [
+ -91.6814196,
+ 48.1279027
+ ],
+ [
+ -91.6814196,
+ 48.2525994
+ ],
+ [
+ -91.9321927,
+ 48.2525994
+ ],
+ [
+ -91.9321927,
+ 48.3142454
+ ],
+ [
+ -91.9929683,
+ 48.3142454
+ ],
+ [
+ -91.9929683,
+ 48.3780845
+ ],
+ [
+ -92.3189383,
+ 48.3780845
+ ],
+ [
+ -92.3189383,
+ 48.2529081
+ ],
+ [
+ -92.3732233,
+ 48.2529081
+ ],
+ [
+ -92.3732233,
+ 48.3153385
+ ],
+ [
+ -92.4322288,
+ 48.3153385
+ ],
+ [
+ -92.4322288,
+ 48.4411448
+ ],
+ [
+ -92.4977248,
+ 48.4411448
+ ],
+ [
+ -92.4977248,
+ 48.501781
+ ],
+ [
+ -92.5679413,
+ 48.501781
+ ],
+ [
+ -92.5679413,
+ 48.439579
+ ],
+ [
+ -92.6210462,
+ 48.439579
+ ],
+ [
+ -92.6210462,
+ 48.5650783
+ ],
+ [
+ -92.8086835,
+ 48.5650783
+ ],
+ [
+ -92.8086835,
+ 48.6286865
+ ],
+ [
+ -92.8086835,
+ 48.6267365
+ ],
+ [
+ -92.933185,
+ 48.6267365
+ ],
+ [
+ -92.933185,
+ 48.6922145
+ ],
+ [
+ -93.0051716,
+ 48.6922145
+ ],
+ [
+ -93.0051716,
+ 48.6282965
+ ],
+ [
+ -93.1225924,
+ 48.6282965
+ ],
+ [
+ -93.1225924,
+ 48.6922145
+ ],
+ [
+ -93.3190806,
+ 48.6922145
+ ],
+ [
+ -93.3190806,
+ 48.6267365
+ ],
+ [
+ -93.5049477,
+ 48.6267365
+ ],
+ [
+ -93.5049477,
+ 48.5635164
+ ],
+ [
+ -93.7474601,
+ 48.5635164
+ ],
+ [
+ -93.7474601,
+ 48.6267365
+ ],
+ [
+ -93.8135461,
+ 48.6267365
+ ],
+ [
+ -93.8135461,
+ 48.6898775
+ ],
+ [
+ -94.2453121,
+ 48.6898775
+ ],
+ [
+ -94.2453121,
+ 48.7554327
+ ],
+ [
+ -94.6183171,
+ 48.7554327
+ ],
+ [
+ -94.6183171,
+ 48.941036
+ ],
+ [
+ -94.6809018,
+ 48.941036
+ ],
+ [
+ -94.6809018,
+ 49.0029737
+ ],
+ [
+ -94.7441532,
+ 49.0029737
+ ],
+ [
+ -94.7441532,
+ 49.2536079
+ ],
+ [
+ -94.8084069,
+ 49.2536079
+ ],
+ [
+ -94.8084069,
+ 49.3784134
+ ],
+ [
+ -95.1192391,
+ 49.3784134
+ ],
+ [
+ -95.1192391,
+ 49.4425264
+ ],
+ [
+ -95.1934341,
+ 49.4425264
+ ],
+ [
+ -95.1934341,
+ 49.0035292
+ ],
+ [
+ -96.87069,
+ 49.0035292
+ ],
+ [
+ -96.87069,
+ 49.0656063
+ ],
+ [
+ -99.0049312,
+ 49.0656063
+ ],
+ [
+ -99.0049312,
+ 49.0050714
+ ],
+ [
+ -109.3699257,
+ 49.0050714
+ ],
+ [
+ -109.3699257,
+ 49.0668231
+ ],
+ [
+ -109.5058746,
+ 49.0668231
+ ],
+ [
+ -109.5058746,
+ 49.0050714
+ ],
+ [
+ -114.1830014,
+ 49.0050714
+ ],
+ [
+ -114.1830014,
+ 49.0687317
+ ],
+ [
+ -114.7578709,
+ 49.0687317
+ ],
+ [
+ -114.7578709,
+ 49.0050714
+ ],
+ [
+ -115.433731,
+ 49.0050714
+ ],
+ [
+ -115.433731,
+ 49.0671412
+ ],
+ [
+ -116.5062706,
+ 49.0671412
+ ],
+ [
+ -116.5062706,
+ 49.0050714
+ ],
+ [
+ -117.3089504,
+ 49.0050714
+ ],
+ [
+ -117.3089504,
+ 49.0659803
+ ],
+ [
+ -119.882945,
+ 49.0659803
+ ],
+ [
+ -119.882945,
+ 49.0050714
+ ],
+ [
+ -120.1208555,
+ 49.0050714
+ ],
+ [
+ -120.1208555,
+ 49.0678367
+ ],
+ [
+ -121.4451636,
+ 49.0678367
+ ],
+ [
+ -121.4451636,
+ 49.0050714
+ ],
+ [
+ -121.9311808,
+ 49.0050714
+ ],
+ [
+ -121.9311808,
+ 49.0656099
+ ],
+ [
+ -122.817484,
+ 49.0656099
+ ],
+ [
+ -122.817484,
+ 49.0029143
+ ],
+ [
+ -122.8795155,
+ 49.0029143
+ ],
+ [
+ -122.8795155,
+ 48.9347018
+ ],
+ [
+ -122.8174629,
+ 48.9347018
+ ],
+ [
+ -122.8174629,
+ 48.8101998
+ ],
+ [
+ -122.7538859,
+ 48.8101998
+ ],
+ [
+ -122.7538859,
+ 48.7533758
+ ],
+ [
+ -122.8712937,
+ 48.7533758
+ ],
+ [
+ -122.8712937,
+ 48.8153948
+ ],
+ [
+ -123.0055391,
+ 48.8153948
+ ],
+ [
+ -123.0055391,
+ 48.7529529
+ ],
+ [
+ -123.1296926,
+ 48.7529529
+ ],
+ [
+ -123.1296926,
+ 48.6902201
+ ],
+ [
+ -123.1838197,
+ 48.6902201
+ ],
+ [
+ -123.1838197,
+ 48.7529029
+ ]
+ ],
+ [
+ [
+ -122.9341743,
+ 37.7521547
+ ],
+ [
+ -122.9347457,
+ 37.6842013
+ ],
+ [
+ -123.0679013,
+ 37.6849023
+ ],
+ [
+ -123.0673747,
+ 37.7475251
+ ],
+ [
+ -123.1292603,
+ 37.7478506
+ ],
+ [
+ -123.1286894,
+ 37.815685
+ ],
+ [
+ -123.0590687,
+ 37.8153192
+ ],
+ [
+ -123.0595947,
+ 37.7528143
+ ]
+ ],
+ [
+ [
+ -71.6299464,
+ 41.2540893
+ ],
+ [
+ -71.4966465,
+ 41.2541393
+ ],
+ [
+ -71.4965596,
+ 41.122965
+ ],
+ [
+ -71.6298594,
+ 41.1229149
+ ]
+ ],
+ [
+ [
+ -70.3184265,
+ 41.3775196
+ ],
+ [
+ -70.3183384,
+ 41.2448243
+ ],
+ [
+ -70.1906612,
+ 41.2448722
+ ],
+ [
+ -70.1906239,
+ 41.1886019
+ ],
+ [
+ -69.9336025,
+ 41.1886984
+ ],
+ [
+ -69.933729,
+ 41.3791941
+ ],
+ [
+ -69.9950664,
+ 41.3791712
+ ],
+ [
+ -69.995109,
+ 41.443159
+ ],
+ [
+ -70.0707828,
+ 41.4431307
+ ],
+ [
+ -70.0706972,
+ 41.3144915
+ ],
+ [
+ -70.2461667,
+ 41.3144258
+ ],
+ [
+ -70.2462087,
+ 41.3775467
+ ]
+ ],
+ [
+ [
+ -68.9403374,
+ 43.9404062
+ ],
+ [
+ -68.6856948,
+ 43.9404977
+ ],
+ [
+ -68.6856475,
+ 43.8721797
+ ],
+ [
+ -68.7465405,
+ 43.8721577
+ ],
+ [
+ -68.7464976,
+ 43.8102529
+ ],
+ [
+ -68.8090782,
+ 43.8102304
+ ],
+ [
+ -68.8090343,
+ 43.746728
+ ],
+ [
+ -68.8773094,
+ 43.7467034
+ ],
+ [
+ -68.8773544,
+ 43.8117826
+ ],
+ [
+ -68.9402483,
+ 43.8117599
+ ]
+ ],
+ [
+ [
+ -123.1291466,
+ 49.0645144
+ ],
+ [
+ -122.9954224,
+ 49.0645144
+ ],
+ [
+ -122.9954224,
+ 48.9343243
+ ],
+ [
+ -123.1291466,
+ 48.9343243
+ ]
+ ],
+ [
+ [
+ -82.9407144,
+ 24.7535913
+ ],
+ [
+ -82.8719398,
+ 24.7535913
+ ],
+ [
+ -82.8719398,
+ 24.6905653
+ ],
+ [
+ -82.7446233,
+ 24.6905653
+ ],
+ [
+ -82.7446233,
+ 24.6214593
+ ],
+ [
+ -82.8088038,
+ 24.6214593
+ ],
+ [
+ -82.8088038,
+ 24.5594908
+ ],
+ [
+ -82.9407144,
+ 24.5594908
+ ]
+ ]
+ ]
+ },
+ {
+ "name": "USGS Topographic Maps",
+ "type": "tms",
+ "template": "http://{switch:a,b,c}.tile.openstreetmap.us/usgs_scanned_topos/{zoom}/{x}/{y}.png",
+ "polygon": [
+ [
+ [
+ -125.990173,
+ 48.9962416
+ ],
+ [
+ -125.989419,
+ 47.9948396
+ ],
+ [
+ -123.9929739,
+ 47.9955062
+ ],
+ [
+ -123.9922429,
+ 47.0059202
+ ],
+ [
+ -125.988688,
+ 47.0052409
+ ],
+ [
+ -125.9879604,
+ 46.0015618
+ ],
+ [
+ -123.9939396,
+ 46.0022529
+ ],
+ [
+ -123.9925238,
+ 43.9961708
+ ],
+ [
+ -124.9931832,
+ 43.9958116
+ ],
+ [
+ -124.9918175,
+ 41.9942149
+ ],
+ [
+ -125.9851789,
+ 41.9938465
+ ],
+ [
+ -125.9838655,
+ 40.0076111
+ ],
+ [
+ -123.9833285,
+ 40.0083757
+ ],
+ [
+ -123.9814115,
+ 37.002615
+ ],
+ [
+ -122.21903,
+ 37.0033173
+ ],
+ [
+ -122.2184144,
+ 36.011671
+ ],
+ [
+ -122.020087,
+ 36.011751
+ ],
+ [
+ -122.0188591,
+ 33.9961766
+ ],
+ [
+ -119.9787757,
+ 33.9970206
+ ],
+ [
+ -119.9775867,
+ 31.9987658
+ ],
+ [
+ -114.0122833,
+ 32.00129
+ ],
+ [
+ -114.0116894,
+ 30.9862401
+ ],
+ [
+ -105.998294,
+ 30.9896679
+ ],
+ [
+ -105.9971419,
+ 28.9901065
+ ],
+ [
+ -102.0210506,
+ 28.9918418
+ ],
+ [
+ -102.0204916,
+ 28.00733
+ ],
+ [
+ -100.0062436,
+ 28.0082173
+ ],
+ [
+ -100.0051143,
+ 25.991909
+ ],
+ [
+ -98.0109067,
+ 25.9928035
+ ],
+ [
+ -98.0103613,
+ 25.0063461
+ ],
+ [
+ -97.0161086,
+ 25.0067957
+ ],
+ [
+ -97.016654,
+ 25.9932494
+ ],
+ [
+ -95.9824825,
+ 25.9937132
+ ],
+ [
+ -95.9835999,
+ 27.9891175
+ ],
+ [
+ -94.0200898,
+ 27.9899826
+ ],
+ [
+ -94.0206586,
+ 28.9918129
+ ],
+ [
+ -88.0156706,
+ 28.9944338
+ ],
+ [
+ -88.0162494,
+ 30.0038862
+ ],
+ [
+ -86.0277506,
+ 30.0047454
+ ],
+ [
+ -86.0271719,
+ 28.9953016
+ ],
+ [
+ -84.0187909,
+ 28.9961781
+ ],
+ [
+ -84.017095,
+ 25.9817708
+ ],
+ [
+ -81.9971976,
+ 25.9826768
+ ],
+ [
+ -81.9966618,
+ 25.0134917
+ ],
+ [
+ -84.0165592,
+ 25.0125783
+ ],
+ [
+ -84.0160068,
+ 24.0052745
+ ],
+ [
+ -80.0199985,
+ 24.007096
+ ],
+ [
+ -80.0245309,
+ 32.0161282
+ ],
+ [
+ -78.0066484,
+ 32.0169819
+ ],
+ [
+ -78.0072238,
+ 32.9894278
+ ],
+ [
+ -77.8807233,
+ 32.9894807
+ ],
+ [
+ -77.8813253,
+ 33.9955918
+ ],
+ [
+ -76.0115411,
+ 33.9963653
+ ],
+ [
+ -76.0121459,
+ 34.9952552
+ ],
+ [
+ -74.0068449,
+ 34.9960749
+ ],
+ [
+ -74.0099997,
+ 40.0084254
+ ],
+ [
+ -72.0013745,
+ 40.0091931
+ ],
+ [
+ -72.002019,
+ 40.9912464
+ ],
+ [
+ -69.8797398,
+ 40.9920457
+ ],
+ [
+ -69.8804173,
+ 42.00893
+ ],
+ [
+ -69.9927682,
+ 42.0088883
+ ],
+ [
+ -69.9934462,
+ 43.0105166
+ ],
+ [
+ -67.9845366,
+ 43.0112496
+ ],
+ [
+ -67.985224,
+ 44.0103812
+ ],
+ [
+ -65.9892568,
+ 44.0110975
+ ],
+ [
+ -65.9921237,
+ 47.9993584
+ ],
+ [
+ -70.006442,
+ 47.9980181
+ ],
+ [
+ -70.005708,
+ 47.0042007
+ ],
+ [
+ -72.023686,
+ 47.003514
+ ],
+ [
+ -72.0222508,
+ 45.0059846
+ ],
+ [
+ -78.0146667,
+ 45.0038705
+ ],
+ [
+ -78.0139662,
+ 44.0026998
+ ],
+ [
+ -80.029686,
+ 44.0019763
+ ],
+ [
+ -80.0290052,
+ 43.0122994
+ ],
+ [
+ -81.995479,
+ 43.011582
+ ],
+ [
+ -81.9982986,
+ 47.0042713
+ ],
+ [
+ -87.505706,
+ 47.0023972
+ ],
+ [
+ -87.5064535,
+ 48.0142702
+ ],
+ [
+ -88.0260889,
+ 48.0140968
+ ],
+ [
+ -88.026838,
+ 49.0086686
+ ],
+ [
+ -93.9981078,
+ 49.0067142
+ ],
+ [
+ -93.9988778,
+ 50.0086456
+ ],
+ [
+ -96.0138899,
+ 50.0079995
+ ],
+ [
+ -96.0131199,
+ 49.0060547
+ ]
+ ],
+ [
+ [
+ -160.5787616,
+ 22.5062947
+ ],
+ [
+ -160.5782192,
+ 21.4984647
+ ],
+ [
+ -159.0030121,
+ 21.499196
+ ],
+ [
+ -159.0027422,
+ 20.9951068
+ ],
+ [
+ -157.5083185,
+ 20.995803
+ ],
+ [
+ -157.5080519,
+ 20.4960241
+ ],
+ [
+ -155.966889,
+ 20.4967444
+ ],
+ [
+ -155.9674267,
+ 21.5028287
+ ],
+ [
+ -157.5044717,
+ 21.5021151
+ ],
+ [
+ -157.5047384,
+ 21.9984962
+ ],
+ [
+ -159.0090946,
+ 21.9978002
+ ],
+ [
+ -159.0093692,
+ 22.5070181
+ ]
+ ],
+ [
+ [
+ -168.006102,
+ 68.9941463
+ ],
+ [
+ -168.0047628,
+ 68.0107853
+ ],
+ [
+ -165.4842481,
+ 68.0112562
+ ],
+ [
+ -165.4829337,
+ 67.0037303
+ ],
+ [
+ -168.0034485,
+ 67.0032389
+ ],
+ [
+ -168.002195,
+ 66.0017503
+ ],
+ [
+ -169.0087448,
+ 66.001546
+ ],
+ [
+ -169.0075381,
+ 64.9987675
+ ],
+ [
+ -168.0009882,
+ 64.9989798
+ ],
+ [
+ -167.9998282,
+ 63.9982374
+ ],
+ [
+ -164.9871288,
+ 63.9988964
+ ],
+ [
+ -164.9860062,
+ 62.9950845
+ ],
+ [
+ -167.9987057,
+ 62.9944019
+ ],
+ [
+ -167.9946035,
+ 59.0153692
+ ],
+ [
+ -162.5027857,
+ 59.0167799
+ ],
+ [
+ -162.5018149,
+ 58.0005815
+ ],
+ [
+ -160.0159024,
+ 58.0012389
+ ],
+ [
+ -160.0149725,
+ 57.000035
+ ],
+ [
+ -160.5054788,
+ 56.9999017
+ ],
+ [
+ -160.5045719,
+ 55.9968161
+ ],
+ [
+ -164.012195,
+ 55.9958373
+ ],
+ [
+ -164.0113186,
+ 55.00107
+ ],
+ [
+ -165.994782,
+ 55.0005023
+ ],
+ [
+ -165.9941266,
+ 54.2400584
+ ],
+ [
+ -168.0002944,
+ 54.2394734
+ ],
+ [
+ -168.0000986,
+ 54.0094921
+ ],
+ [
+ -170.0156134,
+ 54.0089011
+ ],
+ [
+ -170.0147683,
+ 53.0016446
+ ],
+ [
+ -171.9993636,
+ 53.0010487
+ ],
+ [
+ -171.9989488,
+ 52.4977745
+ ],
+ [
+ -176.0083239,
+ 52.4965566
+ ],
+ [
+ -176.0081186,
+ 52.2452555
+ ],
+ [
+ -178.000097,
+ 52.2446469
+ ],
+ [
+ -177.9992996,
+ 51.2554252
+ ],
+ [
+ -176.0073212,
+ 51.2560472
+ ],
+ [
+ -176.0075146,
+ 51.4980163
+ ],
+ [
+ -171.9981395,
+ 51.4992617
+ ],
+ [
+ -171.9985419,
+ 51.9985373
+ ],
+ [
+ -167.9984317,
+ 51.9997661
+ ],
+ [
+ -167.9994645,
+ 53.2560877
+ ],
+ [
+ -165.9932968,
+ 53.2566866
+ ],
+ [
+ -165.9939308,
+ 54.0100804
+ ],
+ [
+ -159.0067205,
+ 54.0121291
+ ],
+ [
+ -159.0075717,
+ 55.002502
+ ],
+ [
+ -158.0190709,
+ 55.0027849
+ ],
+ [
+ -158.0199473,
+ 55.9975094
+ ],
+ [
+ -151.9963213,
+ 55.9991902
+ ],
+ [
+ -151.9981536,
+ 57.9986536
+ ],
+ [
+ -151.500341,
+ 57.9987853
+ ],
+ [
+ -151.5012894,
+ 58.9919816
+ ],
+ [
+ -138.5159989,
+ 58.9953194
+ ],
+ [
+ -138.5150471,
+ 57.9986434
+ ],
+ [
+ -136.6872422,
+ 57.9991267
+ ],
+ [
+ -136.6863158,
+ 57.0016688
+ ],
+ [
+ -135.9973698,
+ 57.001856
+ ],
+ [
+ -135.9964667,
+ 56.0030544
+ ],
+ [
+ -134.6717732,
+ 56.003424
+ ],
+ [
+ -134.6708865,
+ 54.9969623
+ ],
+ [
+ -133.9956734,
+ 54.9971556
+ ],
+ [
+ -133.9948193,
+ 54.0031685
+ ],
+ [
+ -130.0044418,
+ 54.0043387
+ ],
+ [
+ -130.0070826,
+ 57.0000507
+ ],
+ [
+ -131.975877,
+ 56.9995156
+ ],
+ [
+ -131.9787378,
+ 59.9933094
+ ],
+ [
+ -138.0071813,
+ 59.991805
+ ],
+ [
+ -138.0082158,
+ 61.0125755
+ ],
+ [
+ -140.9874011,
+ 61.0118551
+ ],
+ [
+ -140.99984,
+ 71.0039309
+ ],
+ [
+ -154.5023956,
+ 71.0017377
+ ],
+ [
+ -154.5039632,
+ 71.9983391
+ ],
+ [
+ -157.499048,
+ 71.9978773
+ ],
+ [
+ -157.4974758,
+ 70.9982877
+ ],
+ [
+ -163.0233611,
+ 70.9973899
+ ],
+ [
+ -163.0218273,
+ 69.9707435
+ ],
+ [
+ -164.9730896,
+ 69.97041
+ ],
+ [
+ -164.9717003,
+ 68.994689
+ ]
+ ],
+ [
+ [
+ -168.5133204,
+ 62.8689586
+ ],
+ [
+ -168.5144423,
+ 63.8765677
+ ],
+ [
+ -172.0202755,
+ 63.8757975
+ ],
+ [
+ -172.0191536,
+ 62.8681608
+ ]
+ ],
+ [
+ [
+ -170.9947111,
+ 59.9954089
+ ],
+ [
+ -170.995726,
+ 60.9969787
+ ],
+ [
+ -174.0045311,
+ 60.9962508
+ ],
+ [
+ -174.0035162,
+ 59.9946581
+ ]
+ ],
+ [
+ [
+ -156.0717261,
+ 20.2854602
+ ],
+ [
+ -154.7940471,
+ 20.2860582
+ ],
+ [
+ -154.7933145,
+ 18.9029464
+ ],
+ [
+ -156.0709936,
+ 18.9023432
+ ]
+ ]
+ ]
+ },
+ {
+ "name": "Vejmidte (Denmark)",
+ "type": "tms",
+ "template": "http://{switch:a,b,c}.tile.openstreetmap.dk/danmark/vejmidte/{zoom}/{x}/{y}.png",
+ "scaleExtent": [
+ 0,
+ 20
+ ],
+ "polygon": [
+ [
+ [
+ 8.3743941,
+ 54.9551655
+ ],
+ [
+ 8.3683809,
+ 55.4042149
+ ],
+ [
+ 8.2103997,
+ 55.4039795
+ ],
+ [
+ 8.2087314,
+ 55.4937345
+ ],
+ [
+ 8.0502655,
+ 55.4924731
+ ],
+ [
+ 8.0185123,
+ 56.7501399
+ ],
+ [
+ 8.1819161,
+ 56.7509948
+ ],
+ [
+ 8.1763274,
+ 57.0208898
+ ],
+ [
+ 8.3413329,
+ 57.0219872
+ ],
+ [
+ 8.3392467,
+ 57.1119574
+ ],
+ [
+ 8.5054433,
+ 57.1123212
+ ],
+ [
+ 8.5033923,
+ 57.2020499
+ ],
+ [
+ 9.3316304,
+ 57.2027636
+ ],
+ [
+ 9.3319079,
+ 57.2924835
+ ],
+ [
+ 9.4978864,
+ 57.2919578
+ ],
+ [
+ 9.4988593,
+ 57.3820608
+ ],
+ [
+ 9.6649749,
+ 57.3811615
+ ],
+ [
+ 9.6687295,
+ 57.5605591
+ ],
+ [
+ 9.8351961,
+ 57.5596265
+ ],
+ [
+ 9.8374896,
+ 57.6493322
+ ],
+ [
+ 10.1725726,
+ 57.6462818
+ ],
+ [
+ 10.1754245,
+ 57.7367768
+ ],
+ [
+ 10.5118282,
+ 57.7330269
+ ],
+ [
+ 10.5152095,
+ 57.8228945
+ ],
+ [
+ 10.6834853,
+ 57.8207722
+ ],
+ [
+ 10.6751613,
+ 57.6412021
+ ],
+ [
+ 10.5077045,
+ 57.6433097
+ ],
+ [
+ 10.5039992,
+ 57.5535088
+ ],
+ [
+ 10.671038,
+ 57.5514113
+ ],
+ [
+ 10.6507805,
+ 57.1024538
+ ],
+ [
+ 10.4857673,
+ 57.1045138
+ ],
+ [
+ 10.4786236,
+ 56.9249051
+ ],
+ [
+ 10.3143981,
+ 56.9267573
+ ],
+ [
+ 10.3112341,
+ 56.8369269
+ ],
+ [
+ 10.4750295,
+ 56.83509
+ ],
+ [
+ 10.4649016,
+ 56.5656681
+ ],
+ [
+ 10.9524239,
+ 56.5589761
+ ],
+ [
+ 10.9479249,
+ 56.4692243
+ ],
+ [
+ 11.1099335,
+ 56.4664675
+ ],
+ [
+ 11.1052639,
+ 56.376833
+ ],
+ [
+ 10.9429901,
+ 56.3795284
+ ],
+ [
+ 10.9341235,
+ 56.1994768
+ ],
+ [
+ 10.7719685,
+ 56.2020244
+ ],
+ [
+ 10.7694751,
+ 56.1120103
+ ],
+ [
+ 10.6079695,
+ 56.1150259
+ ],
+ [
+ 10.4466742,
+ 56.116717
+ ],
+ [
+ 10.2865948,
+ 56.118675
+ ],
+ [
+ 10.2831527,
+ 56.0281851
+ ],
+ [
+ 10.4439274,
+ 56.0270388
+ ],
+ [
+ 10.4417713,
+ 55.7579243
+ ],
+ [
+ 10.4334961,
+ 55.6693533
+ ],
+ [
+ 10.743814,
+ 55.6646861
+ ],
+ [
+ 10.743814,
+ 55.5712253
+ ],
+ [
+ 10.8969041,
+ 55.5712253
+ ],
+ [
+ 10.9051793,
+ 55.3953852
+ ],
+ [
+ 11.0613726,
+ 55.3812841
+ ],
+ [
+ 11.0593038,
+ 55.1124061
+ ],
+ [
+ 11.0458567,
+ 55.0318621
+ ],
+ [
+ 11.2030844,
+ 55.0247474
+ ],
+ [
+ 11.2030844,
+ 55.117139
+ ],
+ [
+ 11.0593038,
+ 55.1124061
+ ],
+ [
+ 11.0613726,
+ 55.3812841
+ ],
+ [
+ 11.0789572,
+ 55.5712253
+ ],
+ [
+ 10.8969041,
+ 55.5712253
+ ],
+ [
+ 10.9258671,
+ 55.6670198
+ ],
+ [
+ 10.743814,
+ 55.6646861
+ ],
+ [
+ 10.7562267,
+ 55.7579243
+ ],
+ [
+ 10.4417713,
+ 55.7579243
+ ],
+ [
+ 10.4439274,
+ 56.0270388
+ ],
+ [
+ 10.4466742,
+ 56.116717
+ ],
+ [
+ 10.6079695,
+ 56.1150259
+ ],
+ [
+ 10.6052053,
+ 56.0247462
+ ],
+ [
+ 10.9258671,
+ 56.0201215
+ ],
+ [
+ 10.9197132,
+ 55.9309388
+ ],
+ [
+ 11.0802782,
+ 55.92792
+ ],
+ [
+ 11.0858066,
+ 56.0178284
+ ],
+ [
+ 11.7265047,
+ 56.005058
+ ],
+ [
+ 11.7319981,
+ 56.0952142
+ ],
+ [
+ 12.0540333,
+ 56.0871256
+ ],
+ [
+ 12.0608477,
+ 56.1762576
+ ],
+ [
+ 12.7023469,
+ 56.1594405
+ ],
+ [
+ 12.6611131,
+ 55.7114318
+ ],
+ [
+ 12.9792318,
+ 55.7014026
+ ],
+ [
+ 12.9612912,
+ 55.5217294
+ ],
+ [
+ 12.3268659,
+ 55.5412096
+ ],
+ [
+ 12.3206071,
+ 55.4513655
+ ],
+ [
+ 12.4778226,
+ 55.447067
+ ],
+ [
+ 12.4702432,
+ 55.3570479
+ ],
+ [
+ 12.6269738,
+ 55.3523837
+ ],
+ [
+ 12.6200898,
+ 55.2632576
+ ],
+ [
+ 12.4627339,
+ 55.26722
+ ],
+ [
+ 12.4552949,
+ 55.1778223
+ ],
+ [
+ 12.2987046,
+ 55.1822303
+ ],
+ [
+ 12.2897344,
+ 55.0923641
+ ],
+ [
+ 12.6048608,
+ 55.0832904
+ ],
+ [
+ 12.5872011,
+ 54.9036285
+ ],
+ [
+ 12.2766618,
+ 54.9119031
+ ],
+ [
+ 12.2610181,
+ 54.7331602
+ ],
+ [
+ 12.1070691,
+ 54.7378161
+ ],
+ [
+ 12.0858621,
+ 54.4681655
+ ],
+ [
+ 11.7794953,
+ 54.4753579
+ ],
+ [
+ 11.7837381,
+ 54.5654783
+ ],
+ [
+ 11.1658525,
+ 54.5782155
+ ],
+ [
+ 11.1706443,
+ 54.6686508
+ ],
+ [
+ 10.8617173,
+ 54.6733956
+ ],
+ [
+ 10.8651245,
+ 54.7634667
+ ],
+ [
+ 10.7713646,
+ 54.7643888
+ ],
+ [
+ 10.7707276,
+ 54.7372807
+ ],
+ [
+ 10.7551428,
+ 54.7375776
+ ],
+ [
+ 10.7544039,
+ 54.7195666
+ ],
+ [
+ 10.7389074,
+ 54.7197588
+ ],
+ [
+ 10.7384368,
+ 54.7108482
+ ],
+ [
+ 10.7074486,
+ 54.7113045
+ ],
+ [
+ 10.7041094,
+ 54.6756741
+ ],
+ [
+ 10.5510973,
+ 54.6781698
+ ],
+ [
+ 10.5547184,
+ 54.7670245
+ ],
+ [
+ 10.2423994,
+ 54.7705935
+ ],
+ [
+ 10.2459845,
+ 54.8604673
+ ],
+ [
+ 10.0902268,
+ 54.8622134
+ ],
+ [
+ 10.0873731,
+ 54.7723851
+ ],
+ [
+ 9.1555798,
+ 54.7769557
+ ],
+ [
+ 9.1562752,
+ 54.8675369
+ ],
+ [
+ 8.5321973,
+ 54.8663765
+ ],
+ [
+ 8.531432,
+ 54.95516
+ ]
+ ],
+ [
+ [
+ 11.4577738,
+ 56.819554
+ ],
+ [
+ 11.7849181,
+ 56.8127385
+ ],
+ [
+ 11.7716715,
+ 56.6332796
+ ],
+ [
+ 11.4459621,
+ 56.6401087
+ ]
+ ],
+ [
+ [
+ 11.3274736,
+ 57.3612962
+ ],
+ [
+ 11.3161808,
+ 57.1818004
+ ],
+ [
+ 11.1508692,
+ 57.1847276
+ ],
+ [
+ 11.1456628,
+ 57.094962
+ ],
+ [
+ 10.8157703,
+ 57.1001693
+ ],
+ [
+ 10.8290599,
+ 57.3695272
+ ]
+ ],
+ [
+ [
+ 11.5843266,
+ 56.2777928
+ ],
+ [
+ 11.5782882,
+ 56.1880397
+ ],
+ [
+ 11.7392309,
+ 56.1845765
+ ],
+ [
+ 11.7456428,
+ 56.2743186
+ ]
+ ],
+ [
+ [
+ 14.6825922,
+ 55.3639405
+ ],
+ [
+ 14.8395247,
+ 55.3565231
+ ],
+ [
+ 14.8263755,
+ 55.2671261
+ ],
+ [
+ 15.1393406,
+ 55.2517359
+ ],
+ [
+ 15.1532015,
+ 55.3410836
+ ],
+ [
+ 15.309925,
+ 55.3330556
+ ],
+ [
+ 15.295719,
+ 55.2437356
+ ],
+ [
+ 15.1393406,
+ 55.2517359
+ ],
+ [
+ 15.1255631,
+ 55.1623802
+ ],
+ [
+ 15.2815819,
+ 55.1544167
+ ],
+ [
+ 15.2535578,
+ 54.9757646
+ ],
+ [
+ 14.6317464,
+ 55.0062496
+ ]
+ ]
+ ],
+ "terms_url": "http://wiki.openstreetmap.org/wiki/Vejmidte",
+ "terms_text": "Danish municipalities"
+ },
+ {
+ "name": "Vienna: Beschriftungen (annotations)",
+ "type": "tms",
+ "template": "http://www.wien.gv.at/wmts/beschriftung/normal/google3857/{zoom}/{y}/{x}.png",
+ "scaleExtent": [
+ 0,
+ 19
+ ],
+ "polygon": [
+ [
+ [
+ 16.17,
+ 48.1
+ ],
+ [
+ 16.17,
+ 48.33
+ ],
+ [
+ 16.58,
+ 48.33
+ ],
+ [
+ 16.58,
+ 48.1
+ ],
+ [
+ 16.17,
+ 48.1
+ ]
+ ]
+ ],
+ "terms_url": "http://data.wien.gv.at/",
+ "terms_text": "Stadt Wien"
+ },
+ {
+ "name": "Vienna: Mehrzweckkarte (general purpose)",
+ "type": "tms",
+ "template": "http://www.wien.gv.at/wmts/fmzk/pastell/google3857/{zoom}/{y}/{x}.jpeg",
+ "scaleExtent": [
+ 0,
+ 19
+ ],
+ "polygon": [
+ [
+ [
+ 16.17,
+ 48.1
+ ],
+ [
+ 16.17,
+ 48.33
+ ],
+ [
+ 16.58,
+ 48.33
+ ],
+ [
+ 16.58,
+ 48.1
+ ],
+ [
+ 16.17,
+ 48.1
+ ]
+ ]
+ ],
+ "terms_url": "http://data.wien.gv.at/",
+ "terms_text": "Stadt Wien"
+ },
+ {
+ "name": "Vienna: Orthofoto (aerial image)",
+ "type": "tms",
+ "template": "http://www.wien.gv.at/wmts/lb/farbe/google3857/{zoom}/{y}/{x}.jpeg",
+ "scaleExtent": [
+ 0,
+ 19
+ ],
+ "polygon": [
+ [
+ [
+ 16.17,
+ 48.1
+ ],
+ [
+ 16.17,
+ 48.33
+ ],
+ [
+ 16.58,
+ 48.33
+ ],
+ [
+ 16.58,
+ 48.1
+ ],
+ [
+ 16.17,
+ 48.1
+ ]
+ ]
],
- "sourcetag": "NŽT ORT10LT"
+ "terms_url": "http://data.wien.gv.at/",
+ "terms_text": "Stadt Wien"
}
],
"wikipedia": [
@@ -31488,6 +55195,25 @@ iD.introGraph = '{"n185954700":{"id":"n185954700","loc":[-85.642244,41.939081],"
},
"name": "Amenity"
},
+ "amenity/arts_centre": {
+ "name": "Arts Center",
+ "geometry": [
+ "point",
+ "area"
+ ],
+ "terms": [
+ "arts",
+ "arts centre"
+ ],
+ "tags": {
+ "amenity": "arts_centre"
+ },
+ "icon": "theatre",
+ "fields": [
+ "building_area",
+ "address"
+ ]
+ },
"amenity/atm": {
"icon": "bank",
"fields": [
@@ -31568,6 +55294,9 @@ iD.introGraph = '{"n185954700":{"id":"n185954700","loc":[-85.642244,41.939081],"
"tags": {
"amenity": "bench"
},
+ "fields": [
+ "backrest"
+ ],
"name": "Bench"
},
"amenity/bicycle_parking": {
@@ -31604,6 +55333,19 @@ iD.introGraph = '{"n185954700":{"id":"n185954700","loc":[-85.642244,41.939081],"
},
"name": "Bicycle Rental"
},
+ "amenity/boat_rental": {
+ "geometry": [
+ "point",
+ "area"
+ ],
+ "tags": {
+ "amenity": "boat_rental"
+ },
+ "fields": [
+ "operator"
+ ],
+ "name": "Boat Rental"
+ },
"amenity/cafe": {
"icon": "cafe",
"fields": [
@@ -31842,6 +55584,15 @@ iD.introGraph = '{"n185954700":{"id":"n185954700","loc":[-85.642244,41.939081],"
"vertex",
"area"
],
+ "terms": [
+ "petrol",
+ "fuel",
+ "propane",
+ "diesel",
+ "lng",
+ "cng",
+ "biodiesel"
+ ],
"tags": {
"amenity": "fuel"
},
@@ -32245,6 +55996,29 @@ iD.introGraph = '{"n185954700":{"id":"n185954700","loc":[-85.642244,41.939081],"
"terms": [],
"name": "Pub"
},
+ "amenity/ranger_station": {
+ "fields": [
+ "building_area",
+ "opening_hours",
+ "operator",
+ "phone"
+ ],
+ "geometry": [
+ "point",
+ "area"
+ ],
+ "terms": [
+ "visitor center",
+ "visitor centre",
+ "permit center",
+ "permit centre",
+ "backcountry office"
+ ],
+ "tags": {
+ "amenity": "ranger_station"
+ },
+ "name": "Ranger Station"
+ },
"amenity/restaurant": {
"icon": "restaurant",
"fields": [
@@ -32273,6 +56047,7 @@ iD.introGraph = '{"n185954700":{"id":"n185954700","loc":[-85.642244,41.939081],"
"eating house",
"eating place",
"fast-food place",
+ "fish and chips",
"greasy spoon",
"grill",
"hamburger stand",
@@ -32396,8 +56171,10 @@ iD.introGraph = '{"n185954700":{"id":"n185954700","loc":[-85.642244,41.939081],"
},
"amenity/toilets": {
"fields": [
+ "toilets/disposal",
"operator",
- "building_area"
+ "building_area",
+ "access_toilets"
],
"geometry": [
"point",
@@ -32406,7 +56183,15 @@ iD.introGraph = '{"n185954700":{"id":"n185954700","loc":[-85.642244,41.939081],"
],
"terms": [
"bathroom",
- "restroom"
+ "restroom",
+ "outhouse",
+ "privy",
+ "head",
+ "lavatory",
+ "latrine",
+ "water closet",
+ "WC",
+ "W.C."
],
"tags": {
"amenity": "toilets"
@@ -32430,7 +56215,8 @@ iD.introGraph = '{"n185954700":{"id":"n185954700","loc":[-85.642244,41.939081],"
"city government",
"courthouse",
"municipal building",
- "municipal center"
+ "municipal center",
+ "municipal centre"
],
"tags": {
"amenity": "townhall"
@@ -32456,6 +56242,19 @@ iD.introGraph = '{"n185954700":{"id":"n185954700","loc":[-85.642244,41.939081],"
],
"name": "University"
},
+ "amenity/vending_machine": {
+ "fields": [
+ "vending",
+ "operator"
+ ],
+ "geometry": [
+ "point"
+ ],
+ "tags": {
+ "amenity": "vending_machine"
+ },
+ "name": "Vending Machine"
+ },
"amenity/waste_basket": {
"icon": "waste-basket",
"geometry": [
@@ -32475,7 +56274,9 @@ iD.introGraph = '{"n185954700":{"id":"n185954700","loc":[-85.642244,41.939081],"
},
"area": {
"name": "Area",
- "tags": {},
+ "tags": {
+ "area": "yes"
+ },
"geometry": [
"area"
]
@@ -32570,7 +56371,8 @@ iD.introGraph = '{"n185954700":{"id":"n185954700","loc":[-85.642244,41.939081],"
"tags": {
"barrier": "entrance"
},
- "name": "Entrance"
+ "name": "Entrance",
+ "searchable": false
},
"barrier/fence": {
"geometry": [
@@ -32826,6 +56628,19 @@ iD.introGraph = '{"n185954700":{"id":"n185954700","loc":[-85.642244,41.939081],"
},
"name": "Ambulance Station"
},
+ "emergency/fire_hydrant": {
+ "fields": [
+ "fire_hydrant/type"
+ ],
+ "geometry": [
+ "point",
+ "vertex"
+ ],
+ "tags": {
+ "emergency": "fire_hydrant"
+ },
+ "name": "Fire Hydrant"
+ },
"emergency/phone": {
"icon": "emergency-telephone",
"fields": [
@@ -32848,7 +56663,8 @@ iD.introGraph = '{"n185954700":{"id":"n185954700","loc":[-85.642244,41.939081],"
"entrance": "*"
},
"fields": [
- "entrance"
+ "entrance",
+ "address"
],
"name": "Entrance"
},
@@ -32924,10 +56740,11 @@ iD.introGraph = '{"n185954700":{"id":"n185954700","loc":[-85.642244,41.939081],"
"highway/cycleway": {
"icon": "highway-cycleway",
"fields": [
- "oneway",
+ "surface",
+ "lit",
"structure",
"access",
- "surface"
+ "oneway"
],
"geometry": [
"line"
@@ -32984,9 +56801,9 @@ iD.introGraph = '{"n185954700":{"id":"n185954700","loc":[-85.642244,41.939081],"
"icon": "highway-living-street",
"fields": [
"oneway",
+ "maxspeed",
"structure",
"access",
- "maxspeed",
"surface"
],
"geometry": [
@@ -33013,10 +56830,10 @@ iD.introGraph = '{"n185954700":{"id":"n185954700","loc":[-85.642244,41.939081],"
"icon": "highway-motorway",
"fields": [
"oneway",
+ "maxspeed",
"structure",
"access",
"lanes",
- "maxspeed",
"surface",
"ref"
],
@@ -33045,9 +56862,9 @@ iD.introGraph = '{"n185954700":{"id":"n185954700","loc":[-85.642244,41.939081],"
"icon": "highway-motorway-link",
"fields": [
"oneway_yes",
+ "maxspeed",
"structure",
"access",
- "maxspeed",
"surface",
"ref"
],
@@ -33104,10 +56921,10 @@ iD.introGraph = '{"n185954700":{"id":"n185954700","loc":[-85.642244,41.939081],"
"icon": "highway-primary",
"fields": [
"oneway",
+ "maxspeed",
"structure",
"access",
"lanes",
- "maxspeed",
"surface",
"ref"
],
@@ -33124,9 +56941,9 @@ iD.introGraph = '{"n185954700":{"id":"n185954700","loc":[-85.642244,41.939081],"
"icon": "highway-primary-link",
"fields": [
"oneway",
+ "maxspeed",
"structure",
"access",
- "maxspeed",
"surface",
"ref"
],
@@ -33147,9 +56964,9 @@ iD.introGraph = '{"n185954700":{"id":"n185954700","loc":[-85.642244,41.939081],"
"icon": "highway-residential",
"fields": [
"oneway",
+ "maxspeed",
"structure",
"access",
- "maxspeed",
"surface"
],
"geometry": [
@@ -33165,9 +56982,9 @@ iD.introGraph = '{"n185954700":{"id":"n185954700","loc":[-85.642244,41.939081],"
"icon": "highway-road",
"fields": [
"oneway",
+ "maxspeed",
"structure",
"access",
- "maxspeed",
"surface"
],
"geometry": [
@@ -33183,10 +57000,10 @@ iD.introGraph = '{"n185954700":{"id":"n185954700","loc":[-85.642244,41.939081],"
"icon": "highway-secondary",
"fields": [
"oneway",
+ "maxspeed",
"structure",
"access",
"lanes",
- "maxspeed",
"surface",
"ref"
],
@@ -33203,9 +57020,9 @@ iD.introGraph = '{"n185954700":{"id":"n185954700","loc":[-85.642244,41.939081],"
"icon": "highway-secondary-link",
"fields": [
"oneway",
+ "maxspeed",
"structure",
"access",
- "maxspeed",
"surface",
"ref"
],
@@ -33227,9 +57044,9 @@ iD.introGraph = '{"n185954700":{"id":"n185954700","loc":[-85.642244,41.939081],"
"fields": [
"service",
"oneway",
+ "maxspeed",
"structure",
"access",
- "maxspeed",
"surface"
],
"geometry": [
@@ -33339,14 +57156,26 @@ iD.introGraph = '{"n185954700":{"id":"n185954700","loc":[-85.642244,41.939081],"
],
"name": "Steps"
},
+ "highway/stop": {
+ "geometry": [
+ "vertex"
+ ],
+ "tags": {
+ "highway": "stop"
+ },
+ "terms": [
+ "stop sign"
+ ],
+ "name": "Stop Sign"
+ },
"highway/tertiary": {
"icon": "highway-tertiary",
"fields": [
"oneway",
+ "maxspeed",
"structure",
"access",
"lanes",
- "maxspeed",
"surface",
"ref"
],
@@ -33363,9 +57192,9 @@ iD.introGraph = '{"n185954700":{"id":"n185954700","loc":[-85.642244,41.939081],"
"icon": "highway-tertiary-link",
"fields": [
"oneway",
+ "maxspeed",
"structure",
"access",
- "maxspeed",
"surface",
"ref"
],
@@ -33387,9 +57216,9 @@ iD.introGraph = '{"n185954700":{"id":"n185954700","loc":[-85.642244,41.939081],"
"fields": [
"tracktype",
"oneway",
+ "maxspeed",
"structure",
"access",
- "maxspeed",
"surface"
],
"geometry": [
@@ -33419,10 +57248,10 @@ iD.introGraph = '{"n185954700":{"id":"n185954700","loc":[-85.642244,41.939081],"
"icon": "highway-trunk",
"fields": [
"oneway",
+ "maxspeed",
"structure",
"access",
"lanes",
- "maxspeed",
"surface",
"ref"
],
@@ -33439,9 +57268,9 @@ iD.introGraph = '{"n185954700":{"id":"n185954700","loc":[-85.642244,41.939081],"
"icon": "highway-trunk-link",
"fields": [
"oneway",
+ "maxspeed",
"structure",
"access",
- "maxspeed",
"surface",
"ref"
],
@@ -33473,9 +57302,9 @@ iD.introGraph = '{"n185954700":{"id":"n185954700","loc":[-85.642244,41.939081],"
"icon": "highway-unclassified",
"fields": [
"oneway",
+ "maxspeed",
"structure",
"access",
- "maxspeed",
"surface"
],
"geometry": [
@@ -33951,6 +57780,22 @@ iD.introGraph = '{"n185954700":{"id":"n185954700","loc":[-85.642244,41.939081],"
"terms": [],
"name": "Basketball Court"
},
+ "leisure/pitch/skateboard": {
+ "icon": "pitch",
+ "fields": [
+ "surface"
+ ],
+ "geometry": [
+ "point",
+ "area"
+ ],
+ "tags": {
+ "leisure": "pitch",
+ "sport": "skateboard"
+ },
+ "terms": [],
+ "name": "Skate Park"
+ },
"leisure/pitch/soccer": {
"icon": "soccer",
"fields": [
@@ -34023,6 +57868,20 @@ iD.introGraph = '{"n185954700":{"id":"n185954700","loc":[-85.642244,41.939081],"
},
"name": "Slipway"
},
+ "leisure/sports_center": {
+ "geometry": [
+ "point",
+ "area"
+ ],
+ "tags": {
+ "leisure": "sports_centre"
+ },
+ "terms": [
+ "gym"
+ ],
+ "icon": "sports",
+ "name": "Sports Center"
+ },
"leisure/stadium": {
"geometry": [
"point",
@@ -34048,6 +57907,21 @@ iD.introGraph = '{"n185954700":{"id":"n185954700","loc":[-85.642244,41.939081],"
"icon": "swimming",
"name": "Swimming Pool"
},
+ "leisure/track": {
+ "icon": "pitch",
+ "fields": [
+ "surface"
+ ],
+ "geometry": [
+ "point",
+ "line",
+ "area"
+ ],
+ "tags": {
+ "leisure": "track"
+ },
+ "name": "Race Track"
+ },
"line": {
"name": "Line",
"tags": {},
@@ -34263,6 +58137,16 @@ iD.introGraph = '{"n185954700":{"id":"n185954700","loc":[-85.642244,41.939081],"
},
"name": "Coastline"
},
+ "natural/fell": {
+ "geometry": [
+ "area"
+ ],
+ "terms": [],
+ "tags": {
+ "natural": "fell"
+ },
+ "name": "Fell"
+ },
"natural/glacier": {
"geometry": [
"area"
@@ -34323,6 +58207,18 @@ iD.introGraph = '{"n185954700":{"id":"n185954700","loc":[-85.642244,41.939081],"
],
"name": "Peak"
},
+ "natural/scree": {
+ "geometry": [
+ "area"
+ ],
+ "tags": {
+ "natural": "scree"
+ },
+ "terms": [
+ "loose rocks"
+ ],
+ "name": "Scree"
+ },
"natural/scrub": {
"geometry": [
"area"
@@ -34587,6 +58483,7 @@ iD.introGraph = '{"n185954700":{"id":"n185954700","loc":[-85.642244,41.939081],"
"name": "Power"
},
"power/generator": {
+ "name": "Power Generator",
"geometry": [
"point",
"vertex",
@@ -34595,7 +58492,11 @@ iD.introGraph = '{"n185954700":{"id":"n185954700","loc":[-85.642244,41.939081],"
"tags": {
"power": "generator"
},
- "name": "Power Plant"
+ "fields": [
+ "generator/source",
+ "generator/method",
+ "generator/type"
+ ]
},
"power/line": {
"geometry": [
@@ -34693,6 +58594,24 @@ iD.introGraph = '{"n185954700":{"id":"n185954700","loc":[-85.642244,41.939081],"
"terms": [],
"name": "Disused Railway"
},
+ "railway/halt": {
+ "icon": "rail",
+ "geometry": [
+ "point",
+ "vertex"
+ ],
+ "tags": {
+ "railway": "halt"
+ },
+ "name": "Railway Halt",
+ "terms": [
+ "break",
+ "interrupt",
+ "rest",
+ "wait",
+ "interruption"
+ ]
+ },
"railway/level_crossing": {
"icon": "cross",
"geometry": [
@@ -34892,6 +58811,12 @@ iD.introGraph = '{"n185954700":{"id":"n185954700","loc":[-85.642244,41.939081],"
"vertex",
"area"
],
+ "terms": [
+ "nail spa",
+ "spa",
+ "salon",
+ "tanning"
+ ],
"tags": {
"shop": "beauty"
},
@@ -34986,7 +58911,6 @@ iD.introGraph = '{"n185954700":{"id":"n185954700","loc":[-85.642244,41.939081],"
"icon": "shop",
"fields": [
"address",
- "building_area",
"opening_hours"
],
"geometry": [
@@ -35287,6 +59211,9 @@ iD.introGraph = '{"n185954700":{"id":"n185954700","loc":[-85.642244,41.939081],"
"vertex",
"area"
],
+ "terms": [
+ "garden centre"
+ ],
"tags": {
"shop": "garden_centre"
},
@@ -35643,6 +59570,7 @@ iD.introGraph = '{"n185954700":{"id":"n185954700","loc":[-85.642244,41.939081],"
"outlet store",
"shop",
"shopping center",
+ "shopping centre",
"shopping plaza",
"stand",
"store",
@@ -35800,6 +59728,11 @@ iD.introGraph = '{"n185954700":{"id":"n185954700","loc":[-85.642244,41.939081],"
"tags": {
"tourism": "artwork"
},
+ "terms": [
+ "mural",
+ "sculpture",
+ "statue"
+ ],
"name": "Artwork"
},
"tourism/attraction": {
@@ -36191,6 +60124,22 @@ iD.introGraph = '{"n185954700":{"id":"n185954700","loc":[-85.642244,41.939081],"
"network"
]
},
+ "type/route/hiking": {
+ "geometry": [
+ "relation"
+ ],
+ "tags": {
+ "type": "route",
+ "route": "hiking"
+ },
+ "name": "Hiking Route",
+ "icon": "route-foot",
+ "fields": [
+ "ref",
+ "operator",
+ "network"
+ ]
+ },
"type/route/pipeline": {
"geometry": [
"relation"
@@ -36551,8 +60500,9 @@ iD.introGraph = '{"n185954700":{"id":"n185954700","loc":[-85.642244,41.939081],"
"icon": "route",
"members": [
"type/route/road",
- "type/route/foot",
"type/route/bicycle",
+ "type/route/foot",
+ "type/route/hiking",
"type/route/bus",
"type/route/train",
"type/route/tram",
@@ -36624,6 +60574,17 @@ iD.introGraph = '{"n185954700":{"id":"n185954700","loc":[-85.642244,41.939081],"
}
}
},
+ "access_toilets": {
+ "key": "access",
+ "type": "combo",
+ "label": "Access",
+ "options": [
+ "public",
+ "permissive",
+ "private",
+ "customers"
+ ]
+ },
"address": {
"type": "address",
"keys": [
@@ -36676,6 +60637,11 @@ iD.introGraph = '{"n185954700":{"id":"n185954700","loc":[-85.642244,41.939081],"
"type": "check",
"label": "ATM"
},
+ "backrest": {
+ "key": "backrest",
+ "type": "check",
+ "label": "Backrest"
+ },
"barrier": {
"key": "barrier",
"type": "combo",
@@ -36821,11 +60787,37 @@ iD.introGraph = '{"n185954700":{"id":"n185954700","loc":[-85.642244,41.939081],"
"type": "check",
"label": "Fee"
},
+ "fire_hydrant/type": {
+ "key": "fire_hydrant:type",
+ "type": "combo",
+ "options": [
+ "pillar",
+ "pond",
+ "underground",
+ "wall"
+ ],
+ "label": "Type"
+ },
"fixme": {
"key": "fixme",
"type": "textarea",
"label": "Fix Me"
},
+ "generator/method": {
+ "key": "generator:method",
+ "type": "combo",
+ "label": "Method"
+ },
+ "generator/source": {
+ "key": "generator:source",
+ "type": "combo",
+ "label": "Source"
+ },
+ "generator/type": {
+ "key": "generator:type",
+ "type": "combo",
+ "label": "Type"
+ },
"highway": {
"key": "highway",
"type": "combo",
@@ -36899,6 +60891,11 @@ iD.introGraph = '{"n185954700":{"id":"n185954700","loc":[-85.642244,41.939081],"
"label": "Levels",
"placeholder": "2, 4, 6..."
},
+ "lit": {
+ "key": "lit",
+ "type": "check",
+ "label": "Lit"
+ },
"location": {
"key": "location",
"type": "combo",
@@ -37124,6 +61121,11 @@ iD.introGraph = '{"n185954700":{"id":"n185954700","loc":[-85.642244,41.939081],"
"type": "combo",
"label": "Surface"
},
+ "toilets/disposal": {
+ "key": "toilets:disposal",
+ "type": "combo",
+ "label": "Disposal"
+ },
"tourism": {
"key": "tourism",
"type": "combo",
@@ -37144,6 +61146,11 @@ iD.introGraph = '{"n185954700":{"id":"n185954700","loc":[-85.642244,41.939081],"
"type": "combo",
"label": "Trail Visibility"
},
+ "vending": {
+ "key": "vending",
+ "type": "combo",
+ "label": "Type of Goods"
+ },
"water": {
"key": "water",
"type": "combo",
@@ -48741,6 +72748,10 @@ iD.introGraph = '{"n185954700":{"id":"n185954700","loc":[-85.642244,41.939081],"
200,
140
],
+ "icon-operation-continue": [
+ 220,
+ 140
+ ],
"icon-operation-disabled-delete": [
0,
160
@@ -48784,26 +72795,34 @@ iD.introGraph = '{"n185954700":{"id":"n185954700","loc":[-85.642244,41.939081],"
"icon-operation-disabled-simplify": [
200,
160
+ ],
+ "icon-operation-disabled-continue": [
+ 220,
+ 160
]
},
"locales": [
"af",
"ar",
"ast",
+ "bn",
"bs",
"bg-BG",
"ca",
"zh",
"zh-CN",
+ "zh-CN.GB2312",
"zh-TW",
"hr",
"cs",
"da",
"nl",
+ "en-GB",
"et",
"fi",
"fr",
"de",
+ "el",
"hu",
"is",
"id",
@@ -48813,10 +72832,12 @@ iD.introGraph = '{"n185954700":{"id":"n185954700","loc":[-85.642244,41.939081],"
"lv",
"lt",
"no",
+ "nn",
"pl",
"pt",
"pt-BR",
"ru",
+ "sc",
"sr",
"sr-RS",
"sk",
@@ -48871,6 +72892,11 @@ iD.introGraph = '{"n185954700":{"id":"n185954700","loc":[-85.642244,41.939081],"
}
},
"continue": {
+ "key": "A",
+ "title": "Continue",
+ "description": "Continue this line.",
+ "not_eligible": "No line can be continued here.",
+ "multiple": "Several lines can be continued here. To choose a line, press the Shift key and click on it to select it.",
"annotation": {
"line": "Continued a line.",
"area": "Continued an area."
@@ -48899,14 +72925,24 @@ iD.introGraph = '{"n185954700":{"id":"n185954700","loc":[-85.642244,41.939081],"
"not_closed": "This can't be made circular because it's not a loop."
},
"orthogonalize": {
- "title": "Orthogonalize",
- "description": "Square these corners.",
- "key": "Q",
+ "title": "Square",
+ "description": {
+ "line": "Square the corners of this line.",
+ "area": "Square the corners of this area."
+ },
+ "key": "S",
"annotation": {
"line": "Squared the corners of a line.",
"area": "Squared the corners of an area."
},
- "not_closed": "This can't be made square because it's not a loop."
+ "not_squarish": "This can't be made square because it is not squarish."
+ },
+ "straighten": {
+ "title": "Straighten",
+ "description": "Straighten this line.",
+ "key": "S",
+ "annotation": "Straightened a line.",
+ "too_bendy": "This can't be straightened because it bends too much."
},
"delete": {
"title": "Delete",
@@ -48966,7 +73002,7 @@ iD.introGraph = '{"n185954700":{"id":"n185954700","loc":[-85.642244,41.939081],"
},
"rotate": {
"title": "Rotate",
- "description": "Rotate this object around its centre point.",
+ "description": "Rotate this object around its center point.",
"key": "R",
"annotation": {
"line": "Rotated a line.",
@@ -48996,12 +73032,16 @@ iD.introGraph = '{"n185954700":{"id":"n185954700","loc":[-85.642244,41.939081],"
"multiple_ways": "There are too many lines here to split."
}
},
- "nothing_to_undo": "Nothing to undo.",
- "nothing_to_redo": "Nothing to redo.",
+ "undo": {
+ "tooltip": "Undo: {action}",
+ "nothing": "Nothing to undo."
+ },
+ "redo": {
+ "tooltip": "Redo: {action}",
+ "nothing": "Nothing to redo."
+ },
"tooltip_keyhint": "Shortcut:",
- "just_edited": "You just edited OpenStreetMap!",
"browser_notice": "This editor is supported in Firefox, Chrome, Safari, Opera, and Internet Explorer 9 and above. Please upgrade your browser or use Potlatch 2 to edit the map.",
- "view_on_osm": "View on OSM",
"translate": {
"translate": "Translate",
"localized_translation_label": "Multilingual name",
@@ -49067,6 +73107,8 @@ iD.introGraph = '{"n185954700":{"id":"n185954700","loc":[-85.642244,41.939081],"
"title": "Background",
"description": "Background settings",
"percent_brightness": "{opacity}% brightness",
+ "custom": "Custom",
+ "custom_prompt": "Enter a tile template. Valid tokens are {z}, {x}, {y} for Z/X/Y scheme and {u} for quadtile scheme.",
"fix_misalignment": "Fix misalignment",
"reset": "reset"
},
@@ -49086,9 +73128,12 @@ iD.introGraph = '{"n185954700":{"id":"n185954700","loc":[-85.642244,41.939081],"
},
"success": {
"edited_osm": "Edited OSM!",
+ "just_edited": "You just edited OpenStreetMap!",
+ "view_on_osm": "View on OSM",
"facebook": "Share on Facebook",
- "tweet": "Tweet",
- "okay": "Okay"
+ "twitter": "Share on Twitter",
+ "google": "Share on Google+",
+ "help_html": "Your changes should appear in the \"Standard\" layer in a few minutes. Other layers, and certain features, may take longer\n(details).\n"
},
"confirm": {
"okay": "Okay"
@@ -49129,13 +73174,14 @@ iD.introGraph = '{"n185954700":{"id":"n185954700","loc":[-85.642244,41.939081],"
"help": {
"title": "Help",
"help": "# Help\n\nThis is an editor for [OpenStreetMap](http://www.openstreetmap.org/), the\nfree and editable map of the world. You can use it to add and update\ndata in your area, making an open-source and open-data map of the world\nbetter for everyone.\n\nEdits that you make on this map will be visible to everyone who uses\nOpenStreetMap. In order to make an edit, you'll need a\n[free OpenStreetMap account](https://www.openstreetmap.org/user/new).\n\nThe [iD editor](http://ideditor.com/) is a collaborative project with [source\ncode available on GitHub](https://github.com/systemed/iD).\n",
- "editing_saving": "# Editing & Saving\n\nThis editor is designed to work primarily online, and you're accessing\nit through a website right now.\n\n### Selecting Features\n\nTo select a map feature, like a road or point of interest, click\non it on the map. This will highlight the selected feature, open a panel with\ndetails about it, and show a menu of things you can do with the feature.\n\nMultiple features can be selected by holding the 'Shift' key, clicking,\nand dragging on the map. This will select all features within the box\nthat's drawn, allowing you to do things with several features at once.\n\n### Saving Edits\n\nWhen you make changes like editing roads, buildings, and places, these are\nstored locally until you save them to the server. Don't worry if you make\na mistake - you can undo changes by clicking the undo button, and redo\nchanges by clicking the redo button.\n\nClick 'Save' to finish a group of edits - for instance, if you've completed\nan area of town and would like to start on a new area. You'll have a chance\nto review what you've done, and the editor supplies helpful suggestions\nand warnings if something doesn't seem right about the changes.\n\nIf everything looks good, you can enter a short comment explaining the change\nyou made, and click 'Save' again to post the changes\nto [OpenStreetMap.org](http://www.openstreetmap.org/), where they are visible\nto all other users and available for others to build and improve upon.\n\nIf you can't finish your edits in one sitting, you can leave the editor\nwindow and come back (on the same browser and computer), and the\neditor application will offer to restore your work.\n",
+ "editing_saving": "# Editing & Saving\n\nThis editor is designed to work primarily online, and you're accessing\nit through a website right now.\n\n### Selecting Features\n\nTo select a map feature, like a road or point of interest, click\non it on the map. This will highlight the selected feature, open a panel with\ndetails about it, and show a menu of things you can do with the feature.\n\nTo select multiple features, hold down the 'Shift' key. Then either click\non the features you want to select, or drag on the map to draw a rectangle.\nThis will draw a box and select all the points within it.\n\n### Saving Edits\n\nWhen you make changes like editing roads, buildings, and places, these are\nstored locally until you save them to the server. Don't worry if you make\na mistake - you can undo changes by clicking the undo button, and redo\nchanges by clicking the redo button.\n\nClick 'Save' to finish a group of edits - for instance, if you've completed\nan area of town and would like to start on a new area. You'll have a chance\nto review what you've done, and the editor supplies helpful suggestions\nand warnings if something doesn't seem right about the changes.\n\nIf everything looks good, you can enter a short comment explaining the change\nyou made, and click 'Save' again to post the changes\nto [OpenStreetMap.org](http://www.openstreetmap.org/), where they are visible\nto all other users and available for others to build and improve upon.\n\nIf you can't finish your edits in one sitting, you can leave the editor\nwindow and come back (on the same browser and computer), and the\neditor application will offer to restore your work.\n",
"roads": "# Roads\n\nYou can create, fix, and delete roads with this editor. Roads can be all\nkinds: paths, highways, trails, cycleways, and more - any often-crossed\nsegment should be mappable.\n\n### Selecting\n\nClick on a road to select it. An outline should become visible, along\nwith a small tools menu on the map and a sidebar showing more information\nabout the road.\n\n### Modifying\n\nOften you'll see roads that aren't aligned to the imagery behind them\nor to a GPS track. You can adjust these roads so they are in the correct\nplace.\n\nFirst click on the road you want to change. This will highlight it and show\ncontrol points along it that you can drag to better locations. If\nyou want to add new control points for more detail, double-click a part\nof the road without a node, and one will be added.\n\nIf the road connects to another road, but doesn't properly connect on\nthe map, you can drag one of its control points onto the other road in\norder to join them. Having roads connect is important for the map\nand essential for providing driving directions.\n\nYou can also click the 'Move' tool or press the `M` shortcut key to move the entire road at\none time, and then click again to save that movement.\n\n### Deleting\n\nIf a road is entirely incorrect - you can see that it doesn't exist in satellite\nimagery and ideally have confirmed locally that it's not present - you can delete\nit, which removes it from the map. Be cautious when deleting features -\nlike any other edit, the results are seen by everyone and satellite imagery\nis often out of date, so the road could simply be newly built.\n\nYou can delete a road by clicking on it to select it, then clicking the\ntrash can icon or pressing the 'Delete' key.\n\n### Creating\n\nFound somewhere there should be a road but there isn't? Click the 'Line'\nicon in the top-left of the editor or press the shortcut key `2` to start drawing\na line.\n\nClick on the start of the road on the map to start drawing. If the road\nbranches off from an existing road, start by clicking on the place where they connect.\n\nThen click on points along the road so that it follows the right path, according\nto satellite imagery or GPS. If the road you are drawing crosses another road, connect\nit by clicking on the intersection point. When you're done drawing, double-click\nor press 'Return' or 'Enter' on your keyboard.\n",
- "gps": "# GPS\n\nGPS data is the most trusted source of data for OpenStreetMap. This editor\nsupports local traces - `.gpx` files on your local computer. You can collect\nthis kind of GPS trace with a number of smartphone applications as well as\npersonal GPS hardware.\n\nFor information on how to perform a GPS survey, read\n[Surveying with a GPS](http://learnosm.org/en/beginner/using-gps/).\n\nTo use a GPX track for mapping, drag and drop the GPX file onto the map\neditor. If it's recognized, it will be added to the map as a bright green\nline. Click on the 'Background Settings' menu on the left side to enable,\ndisable, or zoom to this new GPX-powered layer.\n\nThe GPX track isn't directly uploaded to OpenStreetMap - the best way to\nuse it is to draw on the map, using it as a guide for the new features that\nyou add.\n",
+ "gps": "# GPS\n\nGPS data is the most trusted source of data for OpenStreetMap. This editor\nsupports local traces - `.gpx` files on your local computer. You can collect\nthis kind of GPS trace with a number of smartphone applications as well as\npersonal GPS hardware.\n\nFor information on how to perform a GPS survey, read\n[Surveying with a GPS](http://learnosm.org/en/beginner/using-gps/).\n\nTo use a GPX track for mapping, drag and drop the GPX file onto the map\neditor. If it's recognized, it will be added to the map as a bright green\nline. Click on the 'Background Settings' menu on the right side to enable,\ndisable, or zoom to this new GPX-powered layer.\n\nThe GPX track isn't directly uploaded to OpenStreetMap - the best way to\nuse it is to draw on the map, using it as a guide for the new features that\nyou add, and also to [upload it to OpenStreetMap](http://www.openstreetmap.org/trace/create)\nfor other users to use.\n",
"imagery": "# Imagery\n\nAerial imagery is an important resource for mapping. A combination of\nairplane flyovers, satellite views, and freely-compiled sources are available\nin the editor under the 'Background Settings' menu on the left.\n\nBy default a [Bing Maps](http://www.bing.com/maps/) satellite layer is\npresented in the editor, but as you pan and zoom the map to new geographical\nareas, new sources will become available. Some countries, like the United\nStates, France, and Denmark have very high-quality imagery available for some areas.\n\nImagery is sometimes offset from the map data because of a mistake on the\nimagery provider's side. If you see a lot of roads shifted from the background,\ndon't immediately move them all to match the background. Instead you can adjust\nthe imagery so that it matches the existing data by clicking 'Fix alignment' at\nthe bottom of the Background Settings UI.\n",
"addresses": "# Addresses\n\nAddresses are some of the most useful information for the map.\n\nAlthough addresses are often represented as parts of streets, in OpenStreetMap\nthey're recorded as attributes of buildings and places along streets.\n\nYou can add address information to places mapped as building outlines\nas well as those mapped as single points. The optimal source of address\ndata is from an on-the-ground survey or personal knowledge - as with any\nother feature, copying from commercial sources like Google Maps is strictly\nforbidden.\n",
"inspector": "# Using the Inspector\n\nThe inspector is the user interface element on the right-hand side of the\npage that appears when a feature is selected and allows you to edit its details.\n\n### Selecting a Feature Type\n\nAfter you add a point, line, or area, you can choose what type of feature it\nis, like whether it's a highway or residential road, supermarket or cafe.\nThe inspector will display buttons for common feature types, and you can\nfind others by typing what you're looking for in the search box.\n\nClick the 'i' in the bottom-right-hand corner of a feature type button to\nlearn more about it. Click a button to choose that type.\n\n### Using Forms and Editing Tags\n\nAfter you choose a feature type, or when you select a feature that already\nhas a type assigned, the inspector will display fields with details about\nthe feature like its name and address.\n\nBelow the fields you see, you can click icons to add other details,\nlike [Wikipedia](http://www.wikipedia.org/) information, wheelchair\naccess, and more.\n\nAt the bottom of the inspector, click 'Additional tags' to add arbitrary\nother tags to the element. [Taginfo](http://taginfo.openstreetmap.org/) is a\ngreat resource for learn more about popular tag combinations.\n\nChanges you make in the inspector are automatically applied to the map.\nYou can undo them at any time by clicking the 'Undo' button.\n\n### Closing the Inspector\n\nYou can close the inspector by clicking the close button in the top-right,\npressing the 'Escape' key, or clicking on the map.\n",
- "buildings": "# Buildings\n\nOpenStreetMap is the world's largest database of buildings. You can create\nand improve this database.\n\n### Selecting\n\nYou can select a building by clicking on its border. This will highlight the\nbuilding and open a small tools menu and a sidebar showing more information\nabout the building.\n\n### Modifying\n\nSometimes buildings are incorrectly placed or have incorrect tags.\n\nTo move an entire building, select it, then click the 'Move' tool. Move your\nmouse to shift the building, and click when it's correctly placed.\n\nTo fix the specific shape of a building, click and drag the nodes that form\nits border into better places.\n\n### Creating\n\nOne of the main questions around adding buildings to the map is that\nOpenStreetMap records buildings both as shapes and points. The rule of thumb\nis to _map a building as a shape whenever possible_, and map companies, homes,\namenities, and other things that operate out of buildings as points placed\nwithin the building shape.\n\nStart drawing a building as a shape by clicking the 'Area' button in the top\nleft of the interface, and end it either by pressing 'Return' on your keyboard\nor clicking on the first node drawn to close the shape.\n\n### Deleting\n\nIf a building is entirely incorrect - you can see that it doesn't exist in satellite\nimagery and ideally have confirmed locally that it's not present - you can delete\nit, which removes it from the map. Be cautious when deleting features -\nlike any other edit, the results are seen by everyone and satellite imagery\nis often out of date, so the building could simply be newly built.\n\nYou can delete a building by clicking on it to select it, then clicking the\ntrash can icon or pressing the 'Delete' key.\n"
+ "buildings": "# Buildings\n\nOpenStreetMap is the world's largest database of buildings. You can create\nand improve this database.\n\n### Selecting\n\nYou can select a building by clicking on its border. This will highlight the\nbuilding and open a small tools menu and a sidebar showing more information\nabout the building.\n\n### Modifying\n\nSometimes buildings are incorrectly placed or have incorrect tags.\n\nTo move an entire building, select it, then click the 'Move' tool. Move your\nmouse to shift the building, and click when it's correctly placed.\n\nTo fix the specific shape of a building, click and drag the nodes that form\nits border into better places.\n\n### Creating\n\nOne of the main questions around adding buildings to the map is that\nOpenStreetMap records buildings both as shapes and points. The rule of thumb\nis to _map a building as a shape whenever possible_, and map companies, homes,\namenities, and other things that operate out of buildings as points placed\nwithin the building shape.\n\nStart drawing a building as a shape by clicking the 'Area' button in the top\nleft of the interface, and end it either by pressing 'Return' on your keyboard\nor clicking on the first node drawn to close the shape.\n\n### Deleting\n\nIf a building is entirely incorrect - you can see that it doesn't exist in satellite\nimagery and ideally have confirmed locally that it's not present - you can delete\nit, which removes it from the map. Be cautious when deleting features -\nlike any other edit, the results are seen by everyone and satellite imagery\nis often out of date, so the building could simply be newly built.\n\nYou can delete a building by clicking on it to select it, then clicking the\ntrash can icon or pressing the 'Delete' key.\n",
+ "relations": "# Relations\n\nA relation is a special type of feature in OpenStreetMap that groups together\nother features. For example, two common types of relations are *route relations*,\nwhich group together sections of road that belong to a specific freeway or\nhighway, and *multipolygons*, which group together several lines that define\na complex area (one with several pieces or holes in it like a donut).\n\nThe group of features in a relation are called *members*. In the sidebar, you can\nsee which relations a feature is a member of, and click on a relation there\nto select the it. When the relation is selected, you can see all of its\nmembers listed in the sidebar and highlighted on the map.\n\nFor the most part, iD will take care of maintaining relations automatically\nwhile you edit. The main thing you should be aware of is that if you delete a\nsection of road to redraw it more accurately, you should make sure that the\nnew section is a member of the same relations as the original.\n\n## Editing Relations\n\nIf you want to edit relations, here are the basics.\n\nTo add a feature to a relation, select the feature, click the \"+\" button in the\n\"All relations\" section of the sidebar, and select or type the name of the relation.\n\nTo create a new relation, select the first feature that should be a member,\nclick the \"+\" button in the \"All relations\" section, and select \"New relation...\".\n\nTo remove a feature from a relation, select the feature and click the trash\nbutton next to the relation you want to remove it from.\n\nYou can create multipolygons with holes using the \"Merge\" tool. Draw two areas (inner\nand outer), hold the Shift key and click on each of them to select them both, and then\nclick the \"Merge\" (+) button.\n"
},
"intro": {
"navigation": {
@@ -49169,14 +73215,15 @@ iD.introGraph = '{"n185954700":{"id":"n185954700","loc":[-85.642244,41.939081],"
},
"lines": {
"title": "Lines",
- "add": "Lines are used to represent features such as roads, railways and rivers. **Click the Line button to add a new line.**",
+ "add": "Lines are used to represent features such as roads, railroads and rivers. **Click the Line button to add a new line.**",
"start": "**Start the line by clicking on the end of the road.**",
"intersect": "Click to add more nodes to the line. You can drag the map while drawing if necessary. Roads, and many other types of lines, are part of a larger network. It is important for these lines to be connected properly in order for routing applications to work. **Click on Flower Street, to create an intersection connecting the two lines.**",
"finish": "Lines can be finished by clicking on the last node again. **Finish drawing the road.**",
"road": "**Select Road from the list**",
"residential": "There are different types of roads, the most common of which is Residential. **Choose the Residential road type**",
"describe": "**Name the road and close the feature editor.**",
- "restart": "The road needs to intersect Flower Street."
+ "restart": "The road needs to intersect Flower Street.",
+ "wrong_preset": "You didn't select the Residential road type. **Click here to choose again**"
},
"startediting": {
"title": "Start Editing",
@@ -49244,6 +73291,9 @@ iD.introGraph = '{"n185954700":{"id":"n185954700","loc":[-85.642244,41.939081],"
}
}
},
+ "access_toilets": {
+ "label": "Access"
+ },
"address": {
"label": "Address",
"placeholders": {
@@ -49272,6 +73322,9 @@ iD.introGraph = '{"n185954700":{"id":"n185954700","loc":[-85.642244,41.939081],"
"atm": {
"label": "ATM"
},
+ "backrest": {
+ "label": "Backrest"
+ },
"barrier": {
"label": "Type"
},
@@ -49344,9 +73397,21 @@ iD.introGraph = '{"n185954700":{"id":"n185954700","loc":[-85.642244,41.939081],"
"fee": {
"label": "Fee"
},
+ "fire_hydrant/type": {
+ "label": "Type"
+ },
"fixme": {
"label": "Fix Me"
},
+ "generator/method": {
+ "label": "Method"
+ },
+ "generator/source": {
+ "label": "Source"
+ },
+ "generator/type": {
+ "label": "Type"
+ },
"highway": {
"label": "Type"
},
@@ -49389,6 +73454,9 @@ iD.introGraph = '{"n185954700":{"id":"n185954700","loc":[-85.642244,41.939081],"
"label": "Levels",
"placeholder": "2, 4, 6..."
},
+ "lit": {
+ "label": "Lit"
+ },
"location": {
"label": "Location"
},
@@ -49507,6 +73575,9 @@ iD.introGraph = '{"n185954700":{"id":"n185954700","loc":[-85.642244,41.939081],"
"surface": {
"label": "Surface"
},
+ "toilets/disposal": {
+ "label": "Disposal"
+ },
"tourism": {
"label": "Type"
},
@@ -49519,6 +73590,9 @@ iD.introGraph = '{"n185954700":{"id":"n185954700","loc":[-85.642244,41.939081],"
"trail_visibility": {
"label": "Trail Visibility"
},
+ "vending": {
+ "label": "Type of Goods"
+ },
"water": {
"label": "Type"
},
@@ -49587,6 +73661,10 @@ iD.introGraph = '{"n185954700":{"id":"n185954700","loc":[-85.642244,41.939081],"
"name": "Amenity",
"terms": ""
},
+ "amenity/arts_centre": {
+ "name": "Arts Center",
+ "terms": "arts,arts centre"
+ },
"amenity/atm": {
"name": "ATM",
"terms": ""
@@ -49611,6 +73689,10 @@ iD.introGraph = '{"n185954700":{"id":"n185954700","loc":[-85.642244,41.939081],"
"name": "Bicycle Rental",
"terms": ""
},
+ "amenity/boat_rental": {
+ "name": "Boat Rental",
+ "terms": ""
+ },
"amenity/cafe": {
"name": "Cafe",
"terms": "coffee,tea,coffee shop"
@@ -49665,7 +73747,7 @@ iD.introGraph = '{"n185954700":{"id":"n185954700","loc":[-85.642244,41.939081],"
},
"amenity/fuel": {
"name": "Gas Station",
- "terms": ""
+ "terms": "petrol,fuel,propane,diesel,lng,cng,biodiesel"
},
"amenity/grave_yard": {
"name": "Graveyard",
@@ -49731,9 +73813,13 @@ iD.introGraph = '{"n185954700":{"id":"n185954700","loc":[-85.642244,41.939081],"
"name": "Pub",
"terms": ""
},
+ "amenity/ranger_station": {
+ "name": "Ranger Station",
+ "terms": "visitor center,visitor centre,permit center,permit centre,backcountry office"
+ },
"amenity/restaurant": {
"name": "Restaurant",
- "terms": "bar,cafeteria,café,canteen,chophouse,coffee shop,diner,dining room,dive*,doughtnut shop,drive-in,eatery,eating house,eating place,fast-food place,greasy spoon,grill,hamburger stand,hashery,hideaway,hotdog stand,inn,joint*,luncheonette,lunchroom,night club,outlet*,pizzeria,saloon,soda fountain,watering hole"
+ "terms": "bar,cafeteria,café,canteen,chophouse,coffee shop,diner,dining room,dive*,doughtnut shop,drive-in,eatery,eating house,eating place,fast-food place,fish and chips,greasy spoon,grill,hamburger stand,hashery,hideaway,hotdog stand,inn,joint*,luncheonette,lunchroom,night club,outlet*,pizzeria,saloon,soda fountain,watering hole"
},
"amenity/school": {
"name": "School",
@@ -49757,16 +73843,20 @@ iD.introGraph = '{"n185954700":{"id":"n185954700","loc":[-85.642244,41.939081],"
},
"amenity/toilets": {
"name": "Toilets",
- "terms": "bathroom,restroom"
+ "terms": "bathroom,restroom,outhouse,privy,head,lavatory,latrine,water closet,WC,W.C."
},
"amenity/townhall": {
"name": "Town Hall",
- "terms": "village hall,city government,courthouse,municipal building,municipal center"
+ "terms": "village hall,city government,courthouse,municipal building,municipal center,municipal centre"
},
"amenity/university": {
"name": "University",
"terms": "college"
},
+ "amenity/vending_machine": {
+ "name": "Vending Machine",
+ "terms": ""
+ },
"amenity/waste_basket": {
"name": "Waste Basket",
"terms": "rubbish bin,litter bin,trash can,garbage can"
@@ -49887,6 +73977,10 @@ iD.introGraph = '{"n185954700":{"id":"n185954700","loc":[-85.642244,41.939081],"
"name": "Ambulance Station",
"terms": ""
},
+ "emergency/fire_hydrant": {
+ "name": "Fire Hydrant",
+ "terms": ""
+ },
"emergency/phone": {
"name": "Emergency Phone",
"terms": ""
@@ -49999,6 +74093,10 @@ iD.introGraph = '{"n185954700":{"id":"n185954700","loc":[-85.642244,41.939081],"
"name": "Steps",
"terms": "stairs,staircase"
},
+ "highway/stop": {
+ "name": "Stop Sign",
+ "terms": "stop sign"
+ },
"highway/tertiary": {
"name": "Tertiary Road",
"terms": ""
@@ -50175,6 +74273,10 @@ iD.introGraph = '{"n185954700":{"id":"n185954700","loc":[-85.642244,41.939081],"
"name": "Basketball Court",
"terms": ""
},
+ "leisure/pitch/skateboard": {
+ "name": "Skate Park",
+ "terms": ""
+ },
"leisure/pitch/soccer": {
"name": "Soccer Field",
"terms": ""
@@ -50195,6 +74297,10 @@ iD.introGraph = '{"n185954700":{"id":"n185954700","loc":[-85.642244,41.939081],"
"name": "Slipway",
"terms": ""
},
+ "leisure/sports_center": {
+ "name": "Sports Center",
+ "terms": "gym"
+ },
"leisure/stadium": {
"name": "Stadium",
"terms": ""
@@ -50203,6 +74309,10 @@ iD.introGraph = '{"n185954700":{"id":"n185954700","loc":[-85.642244,41.939081],"
"name": "Swimming Pool",
"terms": ""
},
+ "leisure/track": {
+ "name": "Race Track",
+ "terms": ""
+ },
"line": {
"name": "Line",
"terms": ""
@@ -50275,6 +74385,10 @@ iD.introGraph = '{"n185954700":{"id":"n185954700","loc":[-85.642244,41.939081],"
"name": "Coastline",
"terms": "shore"
},
+ "natural/fell": {
+ "name": "Fell",
+ "terms": ""
+ },
"natural/glacier": {
"name": "Glacier",
"terms": ""
@@ -50291,6 +74405,10 @@ iD.introGraph = '{"n185954700":{"id":"n185954700","loc":[-85.642244,41.939081],"
"name": "Peak",
"terms": "acme,aiguille,alp,climax,crest,crown,hill,mount,mountain,pinnacle,summit,tip,top"
},
+ "natural/scree": {
+ "name": "Scree",
+ "terms": "loose rocks"
+ },
"natural/scrub": {
"name": "Scrub",
"terms": ""
@@ -50372,7 +74490,7 @@ iD.introGraph = '{"n185954700":{"id":"n185954700","loc":[-85.642244,41.939081],"
"terms": ""
},
"power/generator": {
- "name": "Power Plant",
+ "name": "Power Generator",
"terms": ""
},
"power/line": {
@@ -50407,6 +74525,10 @@ iD.introGraph = '{"n185954700":{"id":"n185954700","loc":[-85.642244,41.939081],"
"name": "Disused Railway",
"terms": ""
},
+ "railway/halt": {
+ "name": "Railway Halt",
+ "terms": "break,interrupt,rest,wait,interruption"
+ },
"railway/level_crossing": {
"name": "Level Crossing",
"terms": "crossing,railroad crossing,railway crossing,grade crossing,road through railroad,train crossing"
@@ -50461,7 +74583,7 @@ iD.introGraph = '{"n185954700":{"id":"n185954700","loc":[-85.642244,41.939081],"
},
"shop/beauty": {
"name": "Beauty Shop",
- "terms": ""
+ "terms": "nail spa,spa,salon,tanning"
},
"shop/beverages": {
"name": "Beverage Store",
@@ -50553,7 +74675,7 @@ iD.introGraph = '{"n185954700":{"id":"n185954700","loc":[-85.642244,41.939081],"
},
"shop/garden_centre": {
"name": "Garden Center",
- "terms": ""
+ "terms": "garden centre"
},
"shop/gift": {
"name": "Gift Shop",
@@ -50633,7 +74755,7 @@ iD.introGraph = '{"n185954700":{"id":"n185954700","loc":[-85.642244,41.939081],"
},
"shop/supermarket": {
"name": "Supermarket",
- "terms": "bazaar,boutique,chain,co-op,cut-rate store,discount store,five-and-dime,flea market,galleria,mall,mart,outlet,outlet store,shop,shopping center,shopping plaza,stand,store,supermarket,thrift shop"
+ "terms": "bazaar,boutique,chain,co-op,cut-rate store,discount store,five-and-dime,flea market,galleria,mall,mart,outlet,outlet store,shop,shopping center,shopping centre,shopping plaza,stand,store,supermarket,thrift shop"
},
"shop/toys": {
"name": "Toy Store",
@@ -50669,7 +74791,7 @@ iD.introGraph = '{"n185954700":{"id":"n185954700","loc":[-85.642244,41.939081],"
},
"tourism/artwork": {
"name": "Artwork",
- "terms": ""
+ "terms": "mural,sculpture,statue"
},
"tourism/attraction": {
"name": "Tourist Attraction",
@@ -50767,6 +74889,10 @@ iD.introGraph = '{"n185954700":{"id":"n185954700","loc":[-85.642244,41.939081],"
"name": "Foot Route",
"terms": ""
},
+ "type/route/hiking": {
+ "name": "Hiking Route",
+ "terms": ""
+ },
"type/route/pipeline": {
"name": "Pipeline Route",
"terms": ""