• 经纬度和墨卡托互相转换


     1 //经纬度转墨卡托
     2         public Vector2D lonLat2Mercator(Vector2D lonLat)
     3         {
     4             Vector2D mercator = new Vector2D();
     5             double x = lonLat.X * 20037508.34 / 180;
     6             double y = Math.Log(Math.Tan((90 + lonLat.Y) * Math.PI / 360)) / (Math.PI / 180);
     7             y = y * 20037508.34 / 180;
     8             mercator.X = x;
     9             mercator.Y = y;
    10             return mercator;
    11         }
    12         //墨卡托转经纬度
    13         public Vector2D Mercator2lonLat(Vector2D mercator)
    14         {
    15             Vector2D lonLat = new Vector2D();
    16             double x = mercator.X / 20037508.34 * 180;
    17             double y = mercator.Y / 20037508.34 * 180;
    18             y = 180 / Math.PI * (2 * Math.Atan(Math.Exp(y * Math.PI / 180)) - Math.PI / 2);
    19             lonLat.X = x;
    20             lonLat.Y = y;
    21             return lonLat;
    22         }
    WGS84经纬度坐标
  • 相关阅读:
    [转]快速矩阵快速幂
    继续学习C:数字进制表示
    pthread_cond_wait()用法分析
    [原]NYOJ-光棍的yy-655
    [原]NYOJ-组合数-32
    [转]_int64、long long 的区别
    [原]NYOJ-6174问题-57
    [转]sscanf函数具体用法
    [原]NYOJ-A*B Problem II-623
    集存款(复利单利)贷款为一体的计算器(最新版)
  • 原文地址:https://www.cnblogs.com/94cool/p/4109944.html
Copyright © 2020-2023  润新知