美文网首页
地图坐标转换

地图坐标转换

作者: 天才ok酱 | 来源:发表于2018-11-23 09:43 被阅读0次

    百度地图转换腾讯坐标

       public static double[] map_bd2tx(double lat, double lon){
            double tx_lat;
            double tx_lon;
            double x_pi=3.14159265358979324;
            double x = lon - 0.0065, y = lat - 0.006;
            double z = Math.sqrt(x * x + y * y) - 0.00002 * Math.sin(y * x_pi);
            double theta = Math.atan2(y, x) - 0.000003 * Math.cos(x * x_pi);
            tx_lon = z * Math.cos(theta);
            tx_lat = z * Math.sin(theta);
            return new double[]{tx_lat,tx_lon};
        }
    }
    

    腾讯转百度坐标

      function qqMapTransBMap(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 {
          lon: lngs,
          lat: lats,
        }
    
      }
    

    百度转腾讯火星坐标

     function bd09togcj02(bd_lon, bd_lat) {
        var x_pi = 3.14159265358979324 * 3000.0 / 180.0;
        var x = bd_lon - 0.0065;
        var y = bd_lat - 0.006;
        var z = Math.sqrt(x * x + y * y) - 0.00002 * Math.sin(y * x_pi);
        var theta = Math.atan2(y, x) - 0.000003 * Math.cos(x * x_pi);
        var gg_lng = z * Math.cos(theta);
        var gg_lat = z * Math.sin(theta);
        return {
          lon: gg_lng,
          lat: gg_lat
        }
      }
    

    相关文章

      网友评论

          本文标题:地图坐标转换

          本文链接:https://www.haomeiwen.com/subject/oevdqqtx.html