mapTrans.js 911 B

12345678910111213141516171819202122232425262728293031
  1. // 将百度地图经纬度转换为腾讯/高德地图经纬度
  2. export function bMapTransQQMap(lng, lat) {
  3. let x_pi = (3.14159265358979324 * 3000.0) / 180.0;
  4. let x = lng - 0.0065;
  5. let y = lat - 0.006;
  6. let z = Math.sqrt(x * x + y * y) - 0.00002 * Math.sin(y * x_pi);
  7. let theta = Math.atan2(y, x) - 0.000003 * Math.cos(x * x_pi);
  8. let lngs = z * Math.cos(theta);
  9. let lats = z * Math.sin(theta);
  10. return {
  11. lng: lngs,
  12. lat: lats
  13. };
  14. }
  15. // 将腾讯/高德地图经纬度转换为百度地图经纬度
  16. export function qqMapTransBMap(lng, lat) {
  17. let x_pi = (3.14159265358979324 * 3000.0) / 180.0;
  18. let x = lng;
  19. let y = lat;
  20. let z = Math.sqrt(x * x + y * y) + 0.00002 * Math.sin(y * x_pi);
  21. let theta = Math.atan2(y, x) + 0.000003 * Math.cos(x * x_pi);
  22. let lngs = z * Math.cos(theta) + 0.0065;
  23. let lats = z * Math.sin(theta) + 0.006;
  24. return {
  25. lng: lngs,
  26. lat: lats
  27. };
  28. }