转(Google 全国 地图 纠偏数据 偏移数据 火星坐标修正 方案 )
轉自(http://blog.163.com/mark-_-chen/blog/static/10820522620103910405771/)
中國地圖和衛星圖都存則偏移量,這個是由中國規劃局,確定的,一個偏移算法,實際上是沒有什么特殊規律的,他的生成算法是有規律,不過這個規律你我都很難拿到,那我們怎么解決這個偏差呢,畢竟做地圖開發的都存在衛星圖和地圖的切換,誰不想讓切換以后的地圖對上呢!
后來我發現google的地圖服務,ditu.gogle開始的都沒有偏差,maps.google開頭的服務就有偏差,我就開始查找google的取偏移量算法,事前我還是圖破解google手機版本的數據,沒有成功,估計是使用了自己的壓縮或加密算法,最后也沒有找到規律,后來才嘗試破解web版本的
不過web版本的接口我對于js不是特別熟悉,所以本次破解放棄了分析源代碼的步驟,而是直接采用排除法
那就是把地圖部分訪問的全部地址,一個接一個封殺掉,查找那個氣偏移做用的網址
http://ditu.google.cn/maps/vp?spn=0.0,0.0&z=18&vp=39.111195,117.148067
最后找到了就是這個,記住每次測試用清理瀏覽器緩存哦,使用fixfox的fildder和adblock就夠了 然后就是
分析每次返回內容的規律,黃天不負有心人啊,我總算是搞定了,下面是我整理的接口
Google 中國地圖偏移接口
1.????? 接口地址:http://ditu.google.cn/maps/vp?spn=0.0,0.0&z=18&vp=39.111195,117.148067
(注:.cn和.com都可以,我用國內服務器就會選擇.cn用美國服務器就會選擇.com)
2.????? 返回內容中的有效部分:
3. (39.111195, 117.148067, 18, [9, -2, 18, -4, 37, -8, 74, -16, 149, -33, 298, -67, 596, -135, 1193, -270])
4.????? Spn參數暫時未知實際意義,但是需要上發spn參數,任意兩個小數用逗號分開
Vp參數緯經度值,用逗號分隔,z參數為地圖縮放級別,無實際意義
5.????? 取回的部分中有效數字為[9, -2, 18, -4, 37, -8, 74, -16, 149, -33, 298, -67, 596, -134, 1192,
-268]這個數組總共有8組數字,每兩個為一組,分為別從11級到18級的地圖和衛星圖的偏移像素數量,我們前一組數字精確的等于后一組數字除二,我們為了得到最精確的偏移,故選擇第18級的偏移量1193,-270,1193為x方向上精度的偏移像素,-270為y方向上維度偏移像素
6.????? 經緯度的偏移轉換我們需要江經緯度39.111195,117.148067轉化為18級像素值25620917 和 55392414,然后分別加上偏移量-270,1193,然后再轉化為經緯度39.11231854918217 和117.15446412563324,即位偏移后的經緯度
數據經度
每0.01個經緯度一個偏移量
總共數據量(9557005)條
數據格式CSV文件
每一個經度一個文件
從73-134總共62個文件
總大小480MB
數據介紹
依次為? 經度? 緯度? 此位置偏移像素X,Y放心(google地圖的第18級偏移量,沒向上一級除2)
此位置經緯度偏移
保留6位小數? 定位用足夠了
?
?
?
用此方法全國可以定位精確到5米內,大城市基本無偏移
轉載于:https://www.cnblogs.com/wangyt223/archive/2012/11/16/2772852.html
總結
以上是生活随笔為你收集整理的转(Google 全国 地图 纠偏数据 偏移数据 火星坐标修正 方案 )的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: 国内工业软件排行榜、市场份额与主要玩家
- 下一篇: 量化策略“高股息率模型”长期有效性的实证