平面坐標與經緯度坐標的相互轉換


直接上代碼

  // 平面坐標轉換經緯度
  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