平面坐标与经纬度坐标的相互转换


直接上代码

  // 平面坐标转换经纬度
  const webMercator2LngLat = (x, y) => {
    var lng = (x / 20037508.34) * 180;
    var lat = (y / 20037508.34) * 180;
    lat =
      (180 / Math.PI) *
      (2 * Math.atan(Math.exp((lat * Math.PI) / 180)) - Math.PI / 2);
    return [lng, lat];
  };
  // 经纬度转墨卡托平面坐标
  const lngLat2WebMercator = (lng, lat) => {
    const earthRad = 6378137.0;
    const x = ((lng * Math.PI) / 180) * earthRad;
    const a = (lat * Math.PI) / 180;
    const y =
      (earthRad / 2) * Math.log((1.0 + Math.sin(a)) / (1.0 - Math.sin(a)));
    return [x, y];
  };


免责声明!

本站转载的文章为个人学习借鉴使用,本站对版权不负任何法律责任。如果侵犯了您的隐私权益,请联系本站邮箱yoyou2525@163.com删除。



 
粤ICP备18138465号  © 2018-2025 CODEPRJ.COM