谷歌地图纬度问题

来源:百度知道 编辑:UC知道 时间:2024/06/23 02:44:30
兰州市中心某地纬度36.066861,经度103.766667 (36°4' 0.70", +103°46' 0.00")
在谷歌地图 http://maps.google.com/ 的搜索框内输入 36.066861,103.766667
单击“搜索地图”,可以定位到该地点。在比列50米(100英尺)时,通过查看源文件,可知该地点的图片文件是:
http://khm1.google.cn/kh/v=38hl=zh-CN&x=206632&y=102880&z=18&s=
可用图片下载软件下载该图片。

上面图片网址意义:
&x= 的后面是图片的经度编号,即:206632
&y= 的后面是图片的纬度编号,即:102880
&z= 图片级别,即:18 级

对于18级的地图,共有 262144×262144 张图片(262144 是 2的18次方)

经度与编号的关系是:(经度+180)÷360×262144=经度编号
即: (103.766667+180)÷360×262144 = 206632
我实践了以一下,所有经度都符合上面的公式。

对于纬度,却出问题了,怎么也算不出编号 102880
(36.066861+180)÷360×262144 = 157335,不对
(36.066861+ 90)÷180×262144 = 183598,也不对
(36.066861+ 90)÷180×262144÷2 = 91799,也不对

谁能告诉我,怎样根据纬度数值算出谷歌图片的纬度编号?
一旦确定了经度、纬度和地图级别(我的例子是 18 级),谷歌地图的图片编号肯定是可以计算的

你的线性函数肯定有情况,以下是实测数据:
第一个是纬度数
10,x=31&y=30&z=6
0,x=31&y=31&z=6
-10,x=31&y=33&z=6
-20,x=31&y=35&z=6
-30,x=31&y=37&z=6
-40,x=31&y=39&z=6
-50,x=31&y=42&z=6
-60,x=31&y=45&z=6
-70,x=31&y=49&z=6
-80,x=31&y=56&z=6
-85,x=31&y=63&z=6
从每10度的y的差值看,纬度越高,变化越快,是非线性的,有点像cos函数的变化趋势
学习……

关键是你的图片下载软件是什么啊??不同的图片下载软件对图片的编号当然不一样了。

去问google去。是一个webservice吧.

研究得深啊

我也不懂 你试下直接用纬度除以90再乘那个数