add to layerchooser instead of the toolbox + code cleanup
This commit is contained in:
@ -192,71 +192,68 @@ function wrapper() {
|
|||||||
Array.prototype.push.apply(closed, open);
|
Array.prototype.push.apply(closed, open);
|
||||||
|
|
||||||
i = closed.length;
|
i = closed.length;
|
||||||
while(i--)
|
while(i--) {
|
||||||
if(closed[i].a.__sentinel || closed[i].b.__sentinel || closed[i].c.__sentinel)
|
if(closed[i].a.__sentinel || closed[i].b.__sentinel || closed[i].c.__sentinel)
|
||||||
closed.splice(i, 1);
|
closed.splice(i, 1);
|
||||||
|
|
||||||
/* Yay, we're done! */
|
|
||||||
return closed;
|
|
||||||
}
|
}
|
||||||
|
|
||||||
|
/* Yay, we're done! */
|
||||||
|
return closed;
|
||||||
|
}
|
||||||
|
|
||||||
var layer = null;
|
window.plugin.portalfolding.layer = null;
|
||||||
|
|
||||||
window.plugin.portalfolding.toggle = function() {
|
var updating = false;
|
||||||
if (layer) {
|
var fillLayer = function() {
|
||||||
// toggle off
|
if (updating)
|
||||||
window.map.removeLayer(layer);
|
return;
|
||||||
layer = null;
|
updating = true;
|
||||||
return;
|
window.plugin.portalfolding.layer.clearLayers();
|
||||||
}
|
|
||||||
|
|
||||||
var locations = [];
|
|
||||||
var minX = 0;
|
|
||||||
var minY = 0;
|
|
||||||
|
|
||||||
for (var key in window.portals) {
|
|
||||||
var loc = window.portals[key].options.details.locationE6;
|
|
||||||
var nloc = { x: loc.lngE6, y: loc.latE6 };
|
|
||||||
if (nloc.x < minX)
|
|
||||||
minX = nloc.x;
|
|
||||||
if (nloc.y < minX)
|
|
||||||
minX = nloc.y;
|
|
||||||
locations.push(nloc);
|
|
||||||
}
|
|
||||||
|
|
||||||
var i = locations.length;
|
|
||||||
while(i) {
|
|
||||||
var nloc = locations[--i];
|
|
||||||
nloc.x += Math.abs(minX);
|
|
||||||
nloc.y += Math.abs(minY);
|
|
||||||
}
|
|
||||||
|
|
||||||
layer = L.layerGroup([])
|
|
||||||
|
|
||||||
var triangles = triangulate(locations);
|
|
||||||
i = triangles.length;
|
|
||||||
while(i) {
|
|
||||||
var triangle = triangles[--i];
|
|
||||||
triangle.draw(layer, minX, minY)
|
|
||||||
}
|
|
||||||
|
|
||||||
window.map.addLayer(layer);
|
|
||||||
return layer;
|
|
||||||
}
|
|
||||||
|
|
||||||
var setup = function() {
|
var locations = [];
|
||||||
$('#toolbox').append('<a onclick="window.plugin.portalfolding.toggle()">toggle MaxLinks</a> ');
|
var minX = 0;
|
||||||
}
|
var minY = 0;
|
||||||
|
|
||||||
|
$.each(window.portals, function(guid, portal) {
|
||||||
|
var loc = portal.options.details.locationE6;
|
||||||
|
var nloc = { x: loc.lngE6, y: loc.latE6 };
|
||||||
|
if (nloc.x < minX)
|
||||||
|
minX = nloc.x;
|
||||||
|
if (nloc.y < minX)
|
||||||
|
minX = nloc.y;
|
||||||
|
locations.push(nloc);
|
||||||
|
});
|
||||||
|
|
||||||
|
$.each(locations, function(idx, nloc) {
|
||||||
|
nloc.x += Math.abs(minX);
|
||||||
|
nloc.y += Math.abs(minY);
|
||||||
|
});
|
||||||
|
|
||||||
// PLUGIN END //////////////////////////////////////////////////////////
|
var triangles = triangulate(locations);
|
||||||
if(window.iitcLoaded && typeof setup === 'function') {
|
$.each(triangles, function(idx, triangle) {
|
||||||
setup();
|
triangle.draw(window.plugin.portalfolding.layer, minX, minY)
|
||||||
} else {
|
});
|
||||||
if(window.bootPlugins)
|
updating = false;
|
||||||
window.bootPlugins.push(setup);
|
}
|
||||||
else
|
|
||||||
window.bootPlugins = [setup];
|
var setup = function() {
|
||||||
}
|
window.plugin.portalfolding.layer = L.layerGroup([]);
|
||||||
|
window.map.on('layeradd', function(e) {
|
||||||
|
if (e.layer === window.plugin.portalfolding.layer)
|
||||||
|
fillLayer();
|
||||||
|
});
|
||||||
|
window.layerChooser.addOverlay(window.plugin.portalfolding.layer, 'Maximum Links');
|
||||||
|
}
|
||||||
|
|
||||||
|
// PLUGIN END //////////////////////////////////////////////////////////
|
||||||
|
if(window.iitcLoaded && typeof setup === 'function') {
|
||||||
|
setup();
|
||||||
|
} else {
|
||||||
|
if(window.bootPlugins)
|
||||||
|
window.bootPlugins.push(setup);
|
||||||
|
else
|
||||||
|
window.bootPlugins = [setup];
|
||||||
|
}
|
||||||
} // wrapper end
|
} // wrapper end
|
||||||
|
|
||||||
// inject code into site context
|
// inject code into site context
|
||||||
|
Reference in New Issue
Block a user