GCJ-02转WGS84转换器
关于GCJ-02坐标系
GCJ-02(火星坐标系)是中国用于地理空间数据的大地基准面。它通过对WGS84坐标应用加密偏移来遵守国家法规。
GCJ-02由国家测绘地理信息局开发,旨在实施关于地理空间信息的国家安全政策。大多数中国地图服务使用该系统。
GCJ-02被所有中国政府批准的地图服务使用,包括高德地图、腾讯地图和中国的苹果地图。在中国大陆境内运行的任何地图应用都必须使用它。
GCJ-02对WGS84坐标应用非线性偏移算法,将位置移动多达数百米。确切的算法由中国政府保密。
加密偏移仅适用于中国大陆境内。中国境外的坐标保持不变。
GCJ-02是中国所有商业地图服务强制使用的坐标系。WGS84与GCJ-02之间的转换对于国际数据集成至关重要。
关于WGS84坐标系
WGS84(世界大地测量系统1984)是GPS使用的全球标准大地测量参考系统。它定义了地心地固坐标系和大地基准面。
WGS84由美国国防部于1984年开发,此后经历了多次精化(WGS84(G730)、WGS84(G873)、WGS84(G1150)、WGS84(G1762)),通过GPS卫星观测提高精度。
WGS84是全球GPS接收机的默认坐标系。它用于航空、海上导航、谷歌地图、OpenStreetMap、GIS应用和科学研究。
WGS84是全球定位系统(GPS)的原生坐标系,确保与全球所有GPS接收机和卫星导航系统的直接兼容性。
作为应用最广泛的大地基准面,WGS84为跨国界的测绘、测量和地理空间数据交换提供了一致的全球参考框架。
通过持续精化,WGS84在全球达到厘米级精度,使其适用于高精度应用,如测绘、无人机导航和科学研究。
GCJ-02 → WGS84 转换指南
// GCJ-02 → WGS84 (iterative method)
// Since the GCJ-02 offset is non-linear, iterative approach is used:
function gcj02ToWgs84(lat, lon) {
dLat = transformLat(lon - 105.0, lat - 35.0)
dLon = transformLon(lon - 105.0, lat - 35.0)
radLat = lat × π / 180
magic = 1 - 0.00669342162296594323 × sin²(radLat)
sqrtMagic = √magic
dLat = (dLat × 180) / ((6335552.717 / (magic × sqrtMagic)) × π)
dLon = (dLon × 180) / ((6378245.0 / sqrtMagic × cos(radLat)) × π)
wgsLat = lat × 2 - (lat + dLat)
wgsLon = lon × 2 - (lon + dLon)
}将GCJ-02转换回WGS84使用正向转换的数学逆运算。由于偏移算法是非线性的,逆运算使用双迭代方法:首先计算正向偏移,然后从原始坐标中减去它(偏移×2 - 正向 = 逆向)。
- 以十进制度数格式输入GCJ-02坐标
- 系统应用逆向偏移算法
- 结果是为GPS和国际应用准备的WGS84坐标
- 在谷歌地图或其他基于WGS84的服务上验证转换后的坐标
- GCJ-02转WGS84转换对于在国际上使用中国地图数据至关重要
- 大多数位置的精度通常在1米以内
- 中国境外的坐标保持不变