关于在天-朝开发LBS应用的坐标知识

2015-09-03  本文已影响0人  calvinxiao

[TOC]

什么是WGS84和GCJ02

WGS84

GPS全球定位系统使用的坐标系统,GPS设备直接返回的坐标即为WGS84,另外Google地图查看天朝以外地区时使用的也是WGS84坐标

GCJ02

由中国国家测绘局制定的地理信息系统的坐标,国内出版的各种地图坐标系统(包括电子地图),必须(法律上)至少采用GCJ02对WGS84进行首次加密。高德和搜狗等使用GCJ02,百度地图再加密来一层,编码系统叫BD09,这里不讨论BD09。

如何判别你在使用什么坐标体系

你在天朝用地图,苹果和高德分享链接时用的是GCJ02坐标系统,map.google.com上当地图是在天朝境内是使用GCJ02标准,其他地方使用WGS84。

实践一下

  1. 手机打开高德地图,搜索一个地点,例如深圳田贝地铁站C出口,分享到微信,用PC端的浏览器打开链接,回看到连接上会带有坐标信息,例如(22.567375,114.129533),搭梯子去map.google.com上搜索同样的坐标显示同样的地点,地址果然是一样有没有!
  2. 在mao.google.com上点击左下角的卫星地图,一看傻了有没有,一片树林,而C出口在左上角大概半个屏幕的位置,就在那个长方形烂地那里。
  3. 使用黑魔法(找开源)把上述坐标转换成WGS坐标系统,得出(22.570067,114.124442), 在谷歌地图的卫星图状态下搜索立马正确了有没有(还我C出口)

等等,为什么我要写这篇文章

首先感谢天朝创造性的开发了这个没什么难度揭秘的GCJ02坐标系统,增加了程序员的就业机会,另外就是因为通过加密算法得出的GCJ02坐标系统也叫火星坐标,就是位置偏移方向不确定,偏移量也不确定,无法使用已知数学公式定理计算距离,所以我们要先搞清楚怎样处理天朝的坐标系统。

解密算法

请支持开源

https://github.com/googollee/eviltransform

上一篇 下一篇

猜你喜欢

热点阅读