OpenLayers中地图缩放级别的设置方法
一、概述
在OpenLayers中,地圖必須具有一個縮放級別的范圍,縮放級別可以用比例尺(scale)或者分辨率(resolution)表示。
比例尺——屏幕上1米代表多少地圖坐標單位;分辨率——屏幕上一個像素代表多少地圖坐標單位。
兩者的轉換關系是:scale = resolution * 72 * 39.3701(1米=39.3701英寸,1英寸=72像素)
地圖具有一個總的縮放級別,每個圖層可以有各自的縮放級別,這樣可以控制圖層只在合適的級別上顯示。
二、縮放級別范圍的確定方法
1、比例尺數組或者分辨率數組來確定(相鄰兩級之間不一定是2倍的關系,可以是任意值)。示例:
resolutions:?[1.40625,0.703125,0.3515625,0.17578125,0.087890625,0.0439453125]scales:?[50000000,?30000000,?10000000,?5000000]
?
2、用最大分辨率(maxResolution)和縮放級別總數(numZoomLevels)確定,相鄰兩級是2倍關系
2.1最大分辨率的確定方法:
a.?直接指定maxResolution,例如:
maxResolution:?0.17578125b.?直接指定minScale,例如:
minScale:?50000000c.?由maxExtent確定(maxResolution需設置為‘auto’),例如:
maxExtent:?new?OpenLayers.Bounds(-180,?-90,?180,?90),maxResolution:?"auto"
2.2 縮放級別總數的確定方法:
a. ?直接指定numZoomLevels,例如:numZoomLevels: 5
b. ?由最大分辨率和最小分辨率的比值確定,最小分辨率同2.1有三種方法可以確定:
??? b.1 直接指定minResolution
??? b.2 直接指定maxScale
??? b.3 由minExtent確定(minResolution需設置為‘auto’)
?
如果指定的參數過多,導致縮放級別范圍不一致時,上述方法順序決定了OpenLayers確定縮放級別范圍的優先級。
轉載于:https://www.cnblogs.com/Jeely/p/11038272.html
總結
以上是生活随笔為你收集整理的OpenLayers中地图缩放级别的设置方法的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: linux命令:vmstat
- 下一篇: 负载均衡分类