如何计算Google静态地图图片的宽度(以度和分为单位)?
例如,如果我请求一个中心为-32 Lat 151 Long(澳大利亚悉尼)且变焦值为14的静态地图,我如何确定返回的卫星图像的宽度?
http://maps.googleapis.com/maps/api/staticmap?center=-32,151&zoom=14&size=400x400&sensor=true
返回图像的真实世界宽度和高度是什么?
我知道中心是-32,151,缩放级别是14.也许zoom = 14代表海拔14000米?如果是这样,我可以使用数学来计算现实世界的尺寸,但我不太确定'14'等于什么。
这个SO问题看起来非常有希望但是没有答案:Google Static Maps Dimension Discrepancy
答案 0 :(得分:4)
如果您对测量距离[英里或公里]不感兴趣,但只对球距[度]感兴趣,则计算并不困难。
在缩放级别为零时,整个360°的赤道适合256px。在变焦1时,它是360÷2 = 180°。在缩放14处,它是360÷2 14 = 0.021973°(大约)。
widthDeg = (elementWidthInPixels/256)*(360 / Math.pow(2,zoom))