小册子像素大小取决于缩放级别

我必须在传单地图上显示5×5度饼图.我可以使用伟大的
leaflet-dvf库显示饼图,但我必须以像素为单位提供半径,到目前为止它是静态的.

我希望它具有动态性,以便在任何缩放级别,饼图填充5×5平方(也称半径= 5×5度).

我如何知道5×5度方的像素长度,具体取决于缩放级别?

谢谢

最佳答案 我使用以下页面,根据缩放级别在传单地图上提供每米像素:

http://wiki.openstreetmap.org/wiki/Zoom_levels

然后我计算了赤道上5×5平方的长度:556000米.
然后我存储缩放级别= 0的长度比:
$scope.lengthRatio = 556000/156412 //以米/像素为单位

最后,我根据缩放级别得到饼图的半径($scope.mapZoom):

var radius = $scope.lengthRatio * Math.pow(2,$scope.mapZoom))/ 2

/ 2是因为我想要半径而不是直径

简单!

点赞