Java精准地图坐标转换 高德 百度 谷歌 腾讯 高德 批量转换工具类达到项目生产精度

火星坐标系

  • 高德地图

  • 腾讯地图

  • 谷歌国内地图

百度坐标系

  • 百度地图

转换方式


| 方式 | 优点 | 缺点 |

| — | — | — |

| 各官网在线api | 转换结果准确 | 有各种api调用限制,例如:频率,次数等 |

| 算法工具类 | 无任何限制,想怎么用就怎么用 | 可能找的算法或者工具类不准;所以我找了很久并测试到了一个,nice |

1. 各官网在线api

  • 高德地图

https://lbs.amap.com/api/webservice/guide/api/convert

  • 百度地图

https://lbsyun.baidu.com/index.php?title=webapi/guide/changeposition

  • 腾讯地图

https://lbs.qq.com/service/webService/webServiceGuide/webServiceTranslate

2. 算法工具类

  • 百度坐标(BD09)、国测局坐标(火星坐标,GCJ02)、和WGS84坐标系之间的转换的工具

/**

  • 百度坐标(BD09)、国测局坐标(火星坐标,GCJ02)、和WGS84坐标系之间的转换的工具

  • @see 参考https://github.com/wandergis/coordtransform实现的Java版本

  • @author geosmart

*/

public class CoordinateTransformUtil {

static double x_pi = 3.14159265358979324 * 3000.0 / 180.0;

// π

static double pi = 3.1415926535897932384626;

// 长半轴

static double a = 6378245.0;

// 扁率

static double ee = 0.00669342162296594323;

/**

  • 百度坐标系(BD-09)转WGS坐标

  • @param lng 百度坐标纬度

  • @param lat 百度坐标经度

  • @return WGS84坐标数组

*/

public static double[] bd09towgs84(double lng, double lat) {

double[] gcj = bd09togcj02(lng, lat);

double[] wgs84 = gcj02towgs84(gcj[0], gcj[1]);

return wgs84;

}

/**

  • WGS坐标转百度坐标系(BD-09)

  • @param lng WGS84

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值