1.比例尺分类
(1)数字式,用数字的比例式或分数式表示比例尺的大小。例如地图上1厘米表明实地距离500公里,可写成:1∶50 000 000或写成:五千万分之一。
(2)线段式(也叫直线式),在地图上画一条线段,并注明地图上1厘米所表明的实际距离。
(3)文字式,在地图上用文字直接写出地图上1厘米表明实地距离多少公里,如:图上1厘米至关于地面距离10公里。html
2.openlayers中比例尺介绍
openlayers中默认地图比例尺为直线式,如图该比例尺存在精确测量没法读取比例尺实际值的缺点。所以有必要将直线比例尺转换成数字比例尺
。 git
3.实现方法this
<div id="map"> <div id="digitalScale"><span>比例尺1:</span><span id="zoom"></span></div> </div> <script> var scaleLineControl=new ol.control.ScaleLine();//定义比例尺控件 // 实例化地图 var map=new ol.Map({ layers:[ new ol.layer.Tile({ source:new ol.source.OSM() }) ], target:'map', view:new ol.View({ center:ol.proj.transform([104,30],'EPSG:4326','EPSG:3857'), zoom:10 }), controls:ol.control.defaults().extend([scaleLineControl])//加载比例尺控件 }); // 监听分辨率变化,经过dpi和像素关系(比例尺=dpi/0.0254*分辨率)输出比例尺 map.getView().on('change:resolution', function(){ document.getElementById('zoom').innerHTML = (this.getResolution())*3779.5275590551;//这里使用了View中的getResolution方法得到当前View的分辨率。 }); </script>
转载请注明出处——哦哟哟哟哟哟哟哟哟哟spa