您的位置:首页 > 编程语言 > Go语言

百度地图经纬度 转换到 腾讯地图/Google地图 对应经纬度

2014-11-05 23:31 435 查看
目的:将百度地图经纬度 转换到 腾讯地图/Google 对应的经纬度.

方法1:使用代码进行转换<存在的问题:转换之后误差大,基本不可用>
public static void Convert_BD09_To_GCJ02(double lat, double lng)
{
double x_pi =
Math. PI * 3000.0 / 180.0;
double x = lng
- 0.0065, y = lat - 0.006;
double z = Math. sqrt(x
* x + y * y) - 0.00002 * Math.sin(y * x_pi);
double theta =
Math.atan2(y, x) - 0.000003 * Math.cos(x * x_pi);
[align=left] lng = z * Math. cos(theta );[/align]
[align=left] lat = z * Math. sin(theta );[/align]
[align=left] [/align]
[align=left] System. out.println(lng);[/align]
[align=left] System. out.println(lat);[/align]
[align=left]}[/align]

[align=left]方法2:[/align]
[align=left]该网站提供转换服务,坐标较为准确,可用,后台调用没有仔细研究[/align]
[align=left]http://www.minigps.net/convert.html[/align]

[align=left]方法3:[/align]
[align=left]使用腾讯地图,详见1.html[/align]
[align=left]腾讯地图老版的地址:http://api.map.soso.com/doc_v2/example.html?sample-convertor-library#12map[/align]
[align=left]最新的地址:http://lbs.qq.com/javascript_v2/doc/convertor.html[/align]

[align=left]直接调用的地址<百度地图转为腾讯地图>,points=经纬度,传入百度的即可:[/align]
[align=left] http://apic.map.qq.com/translate/?type=3&points=114.041993,22.667204&output=jsonp&pf=jsapi&cb=qq.maps.__svcbi1x9al56.cbi1x9al9l0[/align]

[align=left]坐标查询地址:[/align]
[align=left] http://api.map.baidu.com/lbsapi/getpoint/[/align]
[align=left] http://lbs.qq.com/javascript_v2/case-run.html#sample-geocoding-reverse[/align]
[align=left] [/align]
[align=left]总结:[/align]
[align=left] 由于腾讯的经纬度和google经纬度是同一个坐标系,百度经纬度为自己的体系,目前网上搜索到的算法代码,都不是十分精确,所以建议使用地图开发方提供的Api进行转换.[/align]

[align=left]文章地址,我的最新个人站点:[/align]
[align=left]写点什么.[/align]
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: