WGS84,GCJ02之间的区别

WGS84,GCJ02之间的区别

84坐标系可以理解为是真实坐标系,是一个地点的实际坐标值。02坐标系是加密后的坐标系,是为了国家安全考虑。对应的不是实际的坐标值,但是在加密的坐标下,进行导航、定位等操作是完全不受影响的,只不过坐标不是真实的坐标而已。我国的各个地图软件,均使用02坐标系进行街景地图测绘和卫星地图测绘,因此可以看到我国的地图应用上均不会标注经纬坐标信息。

不过也有个例外,百度地图采用BD09坐标系,在02坐标系上又进行了一次加密。谷歌地图的全球版在中国地段采用的是02坐标系,其他地段采用84坐标系,而卫星图采用的是全84坐标系,导致在我国区域谷歌地图的街景和卫星图不重合。中国区的谷歌地图由于采用的02坐标系的卫星测绘图,所以是一致的。

手机GPS芯片原生得到的是坐标是84坐标,在我国,必须要得到授权后,才可以得到并使用02坐标系的加密方式,并且可以在我国02坐标系下进行使用。而国内几家大公司的地图的sdk,由于得到了国家的许可,提供了相应的sdk,可以通过调用sdk的方式得到02坐标系下的坐标值。

建议国内开发者使用大公司提供的sdk进行开发,而不要私人进行84转02的方式用于产品研发和商业用途。未授权的私人测绘行为属于违法行为,如果导致地理信息泄露的则构成犯罪。

Vue 是一种流行的 JavaScript 框架,用于构建用户界面。它本身并没有提供 WGS84GCJ02 的转换功能,但可以通过引入第三方库来实现。 一种常用的第三方库是 `coordtransform`,它是一个 JavaScript 坐标转换库,支持将 WGS84 坐标转换为 GCJ02 坐标。 首先,你需要安装该库。你可以使用 npm 包管理器,在命令行中运行如下命令: ``` npm install coordtransform ``` 在 Vue 项目中引入 `coordtransform` 库。你可以在需要进行坐标转换的组件中,使用如下代码引入: ```javascript import coordtransform from 'coordtransform' ``` 接下来,你可以调用 `coordtransform.wgs84togcj02` 方法来完成 WGS84GCJ02 的转换。该方法接受两个参数,分别是经度(longitude)和纬度(latitude),并返回一个包含转换后经纬度的数组。 下面是一个 Vue 组件中实现 WGS84GCJ02 转换的示例代码: ```javascript import coordtransform from 'coordtransform' export default { data() { return { wgs84Longitude: 0, wgs84Latitude: 0, gcj02Longitude: 0, gcj02Latitude: 0 } }, methods: { convertWgs84ToGcj02() { const result = coordtransform.wgs84togcj02(this.wgs84Longitude, this.wgs84Latitude) this.gcj02Longitude = result[0] this.gcj02Latitude = result[1] } } } ``` 在这个示例中,我们定义了两个输入框 `wgs84Longitude` 和 `wgs84Latitude` 用于输入 WGS84 坐标的经度和纬度。当用户点击转换按钮时,`convertWgs84ToGcj02` 方法将会被调用,完成 WGS84GCJ02 的转换,并将结果保存在 `gcj02Longitude` 和 `gcj02Latitude` 中。 需要注意的是,由于 GCJ02 是用于中国地区的坐标系统,所以该转换只适用于中国地区的坐标转换,对于其他地区的坐标转换可能不准确。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值