move the minLinkLength stuff into map_data_calc_tools.js - makes more sense there, and ready to be used elsewhere if needed

This commit is contained in:
Jon Atkins
2015-06-25 21:46:28 +01:00
parent 58a512823f
commit 9ba440f70d
2 changed files with 15 additions and 19 deletions

View File

@ -15,9 +15,15 @@ window.setupDataTileParams = function() {
var DEFAULT_ZOOM_TO_TILES_PER_EDGE = [60, 60, 60, 60, 60, 120, 500, 500, 2000, 4000, 4000, 8000, 32000, 64000]; var DEFAULT_ZOOM_TO_TILES_PER_EDGE = [60, 60, 60, 60, 60, 120, 500, 500, 2000, 4000, 4000, 8000, 32000, 64000];
var DEFAULT_ZOOM_TO_LEVEL = [8,8,8,8,7,7,7,6,6,5,4,4,3,2,2,1,1]; var DEFAULT_ZOOM_TO_LEVEL = [8,8,8,8,7,7,7,6,6,5,4,4,3,2,2,1,1];
// stock intel doesn't have this array (they use a switch statement instead), but this is far neater
var DEFAULT_ZOOM_TO_LINK_LENGTH = [200000,200000,200000,200000,200000,60000,60000,10000,5000,2500,2500,800,300,0,0];
window.TILE_PARAMS = {}; window.TILE_PARAMS = {};
// not in stock to detect - we'll have to assume the above values...
window.TILE_PARAMS.ZOOM_TO_LINK_LENGTH = DEFAULT_ZOOM_TO_LINK_LENGTH;
if (niantic_params.ZOOM_TO_LEVEL && niantic_params.TILES_PER_EDGE) { if (niantic_params.ZOOM_TO_LEVEL && niantic_params.TILES_PER_EDGE) {
window.TILE_PARAMS.ZOOM_TO_LEVEL = niantic_params.ZOOM_TO_LEVEL; window.TILE_PARAMS.ZOOM_TO_LEVEL = niantic_params.ZOOM_TO_LEVEL;
window.TILE_PARAMS.TILES_PER_EDGE = niantic_params.TILES_PER_EDGE; window.TILE_PARAMS.TILES_PER_EDGE = niantic_params.TILES_PER_EDGE;
@ -67,6 +73,8 @@ window.getMapZoomTileParameters = function(zoom) {
level: level, level: level,
maxLevel: window.TILE_PARAMS.ZOOM_TO_LEVEL[zoom] || 0, // for reference, for log purposes, etc maxLevel: window.TILE_PARAMS.ZOOM_TO_LEVEL[zoom] || 0, // for reference, for log purposes, etc
tilesPerEdge: window.TILE_PARAMS.TILES_PER_EDGE[zoom] || maxTilesPerEdge, tilesPerEdge: window.TILE_PARAMS.TILES_PER_EDGE[zoom] || maxTilesPerEdge,
minLinkLength: window.TILE_PARAMS.ZOOM_TO_LINK_LENGTH[zoom] || 0,
noPortals: zoom < window.TILE_PARAMS.ZOOM_TO_LINK_LENGTH.length, // no portals returned at all when link length limits things
zoom: zoom // include the zoom level, for reference zoom: zoom // include the zoom level, for reference
}; };
} }

View File

@ -11,36 +11,24 @@ window.renderUpdateStatus = function() {
var zoom = map.getZoom(); var zoom = map.getZoom();
zoom = getDataZoomForMapZoom(zoom); zoom = getDataZoomForMapZoom(zoom);
var tileParams = getMapZoomTileParameters(zoom);
var minLinkLength;
if (zoom <= 4) minLinkLength = 200000;
else if (zoom <= 6) minLinkLength = 60000;
else if (zoom <= 7) minLinkLength = 10000;
else if (zoom <= 8) minLinkLength = 5000;
else if (zoom <= 10) minLinkLength = 2500;
else if (zoom <= 11) minLinkLength = 800;
else if (zoom <= 12) minLinkLength = 300;
else if (zoom <= 14) minLinkLength = 0; // 0 means 'all links, but not all portals'
else minLinkLength = -1; // -1 means 'all links and portals by min level'
var minlvl = getMinPortalLevel();
var t = '<span class="help portallevel" title="Indicates portal levels/link lengths displayed. Zoom in to display more.">'; var t = '<span class="help portallevel" title="Indicates portal levels/link lengths displayed. Zoom in to display more.">';
if (minLinkLength == -1) { if (!tileParams.noPortals) {
// zoom level includes portals (and also all links/fields)
if(!window.isSmartphone()) // space is valuable if(!window.isSmartphone()) // space is valuable
t += '<b>portals</b>: '; t += '<b>portals</b>: ';
if(minlvl === 0) if(tileParams.level === 0)
t += '<span id="loadlevel">all</span>'; t += '<span id="loadlevel">all</span>';
else else
t += '<span id="loadlevel" style="background:'+COLORS_LVL[minlvl]+'">L'+minlvl+(minlvl<8?'+':'') + '</span>'; t += '<span id="loadlevel" style="background:'+COLORS_LVL[minlvl]+'">L'+tileParams.level+(tileParams.level<8?'+':'') + '</span>';
} else { } else {
if(!window.isSmartphone()) // space is valuable if(!window.isSmartphone()) // space is valuable
t += '<b>links</b>: '; t += '<b>links</b>: ';
if (minLinkLength > 0) if (tileParams.minLinkLength > 0)
t += '<span id="loadlevel">&gt;'+(minLinkLength>1000?minLinkLength/1000+'km':minLinkLength+'m')+'</span>'; t += '<span id="loadlevel">&gt;'+(tileParams.minLinkLength>1000?tileParams.minLinkLength/1000+'km':tileParams.minLinkLength+'m')+'</span>';
else else
t += '<span id="loadlevel">all links</span>'; t += '<span id="loadlevel">all links</span>';
} }