经纬度转换如下
// 腾讯经纬度转百度经纬度
function TxMapTransBMap(lng, lat) {
let x_pi = 3.14159265358979324 * 3000.0 / 180.0;
let x = lng;
let y = lat;
let z = Math.sqrt(x * x + y * y) + 0.00002 * Math.sin(y * x_pi);
let theta = Math.atan2(y, x) + 0.000003 * Math.cos(x * x_pi);
let lngs = z * Math.cos(theta) + 0.0065;
let lats = z * Math.sin(theta) + 0.006;
return {
lng: lngs,
lat: lats
};
}
// 百度经纬度转腾讯经纬度
function BdMapTransqqMap(lng, lat) {
let x_pi = (3.14159265358979324 * 3000.0) / 180.0;
let x = lng - 0.0065;
let y = lat - 0.006;
let z = Math.sqrt(x * x + y * y) - 0.00002 * Math.sin(y * x_pi);
let theta = Math.atan2(y, x) - 0.000003 * Math.cos(x * x_pi);
let lngs = z * Math.cos(theta);
let lats = z * Math.sin(theta);
return {
longitude: lngs,
latitude: lats
};
}
该文章提供了两个JavaScript函数,分别用于将腾讯地图的经纬度转换为百度地图的经纬度,以及将百度地图的经纬度转换为腾讯地图的经纬度。转换涉及到数学计算,包括弧度、正弦、余弦和平方等操作。
2078

被折叠的 条评论
为什么被折叠?



