Moduuli:Mapframe-geohack-autozoom
Siirry navigaatioon
Siirry hakuun
Tämän moduulin ohjeistuksen voi tehdä sivulle Moduuli:Mapframe-geohack-autozoom/ohje
local t={}
function t.geohackzoomlevel(frame)
local mapframe_zoom=frame.args.mapframe_zoom or "";
local coord_scale=frame.args.coord_scale or "";
local area_m2=frame.args.area_m2;
if coord_scale == '-' then
return ""
elseif tonumber(coord_scale) then
return coord_scale
end
if mapframe_zoom == '-' then
return ""
elseif tonumber(mapframe_zoom) then
local ret = ""
mapframe_zoom=tonumber(mapframe_zoom)
if mapframe_zoom >= 15 then ret=3000
elseif mapframe_zoom >= 13 then ret=10000
elseif mapframe_zoom == 12 then ret=30000
end
return ret
end
return ""
end
function t.mapframezoomlevel(frame)
local mapframe_zoom=frame.args.mapframe_zoom or "";
local coord_scale=frame.args.coord_scale or "";
local mapframe_default_zoom=frame.args.coord_scale or 8;
local area_m2=frame.args.area_m2;
if tonumber(mapframe_default_zoom) == nil then
mapframe_default_zoom=8
end
if mapframe_zoom == '-' then
return ""
elseif tonumber(mapframe_zoom) then
return mapframe_zoom
end
if coord_scale == '-' then
return ""
elseif tonumber(coord_scale) then
local ret = mapframe_default_zoom
coord_scale=tonumber(coord_scale)
if coord_scale <= 3000 then ret=15
elseif coord_scale <= 10000 then ret=13
elseif coord_scale <= 30000 then ret=10
elseif coord_scale <= 100000 then ret=8
elseif coord_scale <= 250000 then ret=7
end
return ret
end
area_m2=tonumber(area_m2)
if area_m2 then
local ret=mapframe_default_zoom
if area_m2 <=3000000 then ret=10
elseif area_m2 <=30000 then ret=14
end
return ret
end
return mapframe_default_zoom
end
return t;