坐标转换-vue中使用coordtransform转换坐标系

背景

互联网坐标系的现状:

1. 地球坐标 (WGS84)

国际标准,从GPS设备中取出的数据的坐标系
国际地图提供商使用的坐标系
2. 火星坐标 (GCJ-02)  也叫国测局坐标系

中国标准,从国行移动设备中定位获取的坐标数据使用这个坐标系
国家规定: 国内出版的各种地图系统(包括电子形式),必须至少采用GCJ-02对地理位置进行首次加密。
3. 百度坐标 (BD-09)

百度标准,百度 SDK,百度地图,Geocoding 使用
百度在火星坐标上来了个二次加密

设备与坐标系的关系

1. 从设备获取经纬度(GPS)坐标

百度SDK,可以获取百度坐标(bd09,默认)或者火星坐标(GCJ02)
IOS原生定位库,可以获取WGS84坐标
高德SDK,可以获取GCJ02坐标
2. 互联网在线地图使用的坐标系

- 火星坐标系:

ios地图(其实是高德)
Google国内地图(.cn域名下)
搜搜、阿里云、高德地图、腾讯
- 百度坐标系:

百度地图
- WGS84坐标系:

Google国外地图
osm地图等国外地图

 coordtransform

1.下载coordtransform:

cnpm i -S coordtransform

2.引入

import coordtransform from 'coordtransform';

 坐标转换

    console.log('转换前坐标:(104, 39)');
    //百度经纬度坐标转国测局坐标
    console.log('bd09togcj02:', coordtransform.bd09togcj02(104, 39));
    //国测局坐标转百度经纬度坐标
    console.log('gcj02tobd09', coordtransform.gcj02tobd09(104, 39));
    //wgs84转国测局坐标
    console.log('wgs84togcj02', coordtransform.wgs84togcj02(104, 39));
    //国测局坐标转wgs84坐标
    console.log('gcj02towgs84', coordtransform.gcj02towgs84(104, 39));

 

你可能感兴趣的:(数学建模,前端,vue.js,坐标转换)