国内各地图API坐标连串相比较与转换必赢网址是多少

By admin in 必赢网址是多少 on 2018年12月27日

支出LBS的仇敌看看

一、各种坐标系的概况

旗帜分明地球是一个非正常椭圆体,GIS中的坐标系定义由基准面和地图投影两组参数确定,而基准面的概念则由特定椭球体及其相应的更换参数确定。
基准面是采取特定椭球体对一定地点地球表面的逼近,由此各种国家或所在均有独家的基准面。基准面是在椭球体基础上建立的,椭球体可以对应多少个基准面,而基准面只可以对应一个椭球体。意思就是无论Google地图、搜搜地图如故高德地图、百度地图区别只是针对性不同的大世界地理坐标系标准制作的中纬度,不存在准不准的题目,我们都是准的只是参照物或者说是标准不同等。Google地图接纳的是WGS84地理坐标系(中国范围除了),Google中国地形图和搜搜中国地形图采取的是GCJ02地理坐标系,百度使用的是BD09坐标系,而装备一般包含GPS芯片或者北斗芯片取得的中纬度为WGS84地理坐标系,为啥不合并用WGS84地理坐标系这就是国家地理测绘总局对于出版地图的渴求,出版地图必须符合GCJ02坐标系标准了,也就是国家确定无法一直利用WGS84地理坐标系。所以一定我们感到不可靠很多又叫出版地图为火星地图其实只是坐标系不一致而已。这就是干吗设备采集的中纬度在地图上显得的时候日常有很大的偏差,远远胜出民用GPS
10米偏移量的技艺专业。

如上参考自:haotsp.com

必赢网址是多少,总结:

WGS84坐标系:即地球坐标系,国际上通用的坐标系。

GCJ02坐标系:即火星坐标系,WGS84坐标系经加密后的坐标系。

BD09坐标系:即百度坐标系,GCJ02坐标系经加密后的坐标系。

搜狗坐标系、图吧坐标系等,推断也是在GCJ02基础上加密而成的。


二、各样地图API选用的坐标系

API坐标系

百度地图API百度坐标

腾讯搜搜地图API火星坐标

博客园搜狗地图API搜狗坐标*

阿里云地图API火星坐标

图吧MapBar地图API图吧坐标

高德MapABC地图API火星坐标

灵图51ditu地图API火星坐标

注1:百度地图使用百度坐标,匡助从地球坐标和火星坐标导入成百度坐标,但无能为力导出。并且批量坐标转换五遍只好转换20个(待验证)。

注2:搜狗地图补助直接显示地球坐标,扶助地球坐标、火星坐标、百度坐标导入成搜狗坐标,同样,搜狗坐标也不知道该咋做导出。

民用认为:拔取自家坐标系列,而不选用国内通用的火星坐标体系,实在是自寻短处。当然,百度是因为做的够用大、丰硕好,所以很霸气,也为今后一统天下而不让别人瓜分之而做准备吧。搜狗尽管用自我坐标体系,但能将地球坐标直接导入,此举也属唯一。而图吧地图不知底学如何加密方法,在此之前用地球坐标用的美好的,现在用图吧自己的坐标,难道是因为给百度做过由此也来了这般一招?或者沿用百度?不得而知。

本文的旨在:做地图开发的时候,不愿意被一家地图API迁就,所以使用火星坐标是天经地义的选项,希望本文可以对拔取使用何人家API的开发者提供一些支援啊。就自己个人而言,我绝不会使用非火星坐标序列的地图API,尽管百度地图API很好很强大确实很吸引自己。

以上参考自:http://rovertang.com/labs/map-compare/


三、各种坐标系的互相转换

1.火星坐标系 (GCJ-02) 与百度坐标系 (BD-09) 的转移算法,其中bd_encrypt将
GCJ-02 坐标转换成 BD-09 坐标,bd_decrypt反之。


2.地球坐标系 (WGS-84) 到火星坐标系 (GCJ-02) 的变换算法

WGS-84 到 GCJ-02 的转换(即 GPS 加偏)算法

如上参考自:http://www.xue5.com/Mobile/iOS/679842.html


3.百度在线转换API

恳请之后会回来一串Json

咋样状态,经纬度居然还加密?这接下去也不得不见招拆招了

到这里也大都好了,紧要的代码都写出来了,其他的你就和好写啊。

如上参考自:http://scalpel.me/archives/136/


四、重点啊,原来百度有内置转换方法,这下可以不局限于百度永恒SDK了

在百度地图中收获WGS-84坐标,调用如下方法:

BMapManager.getLocationManager().setLocationCoordinateType(MKLocationManager.MK_COORDINATE_WGS84);

这样从百度api中赢得的坐标就是WGS-84了,不过这种坐标假使显示到百度地图上就会偏移,也就是说取出一个坐标,原封不动的显示上去就偏移了,所以为了显示也是常规就需要在绘制到百度地图上前边转换成BD-09。

更换成BD-09,调用方法:

GeoPoint wgs84;

GeoPoint bd09 =
CoordinateConvert.bundleDecode(CoordinateConvert.fromWgs84ToBaidu(wgs84));

这里其实不了解为什么要统筹成CoordinateConvert.fromWgs84ToBaidu(wgs84)再次回到了一个Bundle,所以还需要CoordinateConvert.bundleDecode()再转成GeoPoint。


IOS端举行的转换


引进阅读:

FacebookPaper使用的第三方库(强烈推荐)

iOS/Mac
开发博客列表(不断更新中)

用作一个iOS开发要看的网站,一定对您有效的,相信我!

进步iOS开发效能的措施和工具

IM系统架构设计之浅见

nil、Nil、NULL和NSNull的理解

发表评论

电子邮件地址不会被公开。 必填项已用*标注

网站地图xml地图
Copyright @ 2010-2019 亚洲必赢app官方下载 版权所有