var mod_scalebar_left = 5; var mod_scalebar_bottom = 17; var mod_scalebar_color1 = "white"; var mod_scalebar_color2 = "black"; var mod_scalebar_font = "Arial, Helvetica, sans-serif"; var mod_scalebar_fontsize = "9px"; eventAfterMapRequest.register(function () { mod_scalebar(); }); function mod_scalebar(){ var scale = mb_getScale(mod_scalebar_target); var ind = getMapObjIndexByName(mod_scalebar_target); if(scale < 10){ var unit = '10 cm'; var factor = 10/scale; var img_width = Math.round(factor * mb_resolution); } if(scale >= 10 && scale < 100){ var unit = '1 m'; var factor = 100/scale; var img_width = Math.round(factor * mb_resolution); } if(scale < 1000 && scale >= 100){ var unit = '10 m'; var factor = 1000/scale; var img_width = Math.round(factor * mb_resolution); } if(scale < 10000 && scale >= 1000){ var unit = '100 m'; var factor = 10000/scale; var img_width = Math.round(factor * mb_resolution); } if(scale < 100000 && scale >= 10000){ var unit = '1 km'; var factor = 100000/scale; var img_width = Math.round(factor * mb_resolution); } if(scale < 1000000 && scale >= 100000){ var unit = '10 km'; var factor = 1000000/scale; var img_width = Math.round(factor * mb_resolution); } if(scale < 10000000 && scale >= 1000000){ var unit = '100 km'; var factor = 10000000/scale; var img_width = Math.round(factor * mb_resolution); } if(scale < 100000000 && scale >= 10000000){ var unit = '1000 km'; var factor = 100000000/scale; var img_width = Math.round(factor * mb_resolution); } if(scale >= 100000000){ var unit = '1000 km'; var factor = 100000000/scale; var img_width = Math.round(factor * mb_resolution); } var scalebarTag = "  "; scalebarTag += "
"+ unit+"
"; scalebarTag += "
"+ unit+"
"; scalebarTag += "
"+ unit+"
"; scalebarTag += "
"+ unit+"
"; var map_el = mb_mapObj[ind].getDomElement(); if(!map_el.ownerDocument.getElementById(mb_mapObj[ind].elementName+"_scalebar")){ //create Box Elements el_top = map_el.ownerDocument.createElement("div"); el_top.style.position = "absolute"; el_top.style.top = "0px"; el_top.style.left = "0px"; el_top.style.width = "300px"; el_top.style.overflow = "hidden"; el_top.style.zIndex = "10"; el_top.id = mb_mapObj[ind].elementName+"_scalebar"; map_el.appendChild(el_top); } mb_arrangeElement("", mod_scalebar_target+"_scalebar", mod_scalebar_left, (mb_mapObj[ind].height - mod_scalebar_bottom)); writeTag(mb_mapObj[ind].frameName, mb_mapObj[ind].elementName+"_scalebar", scalebarTag); }