麻辣GIS微信平台

更多 GIS 干货

微信关注不错过

「GIS算法」墨卡托坐标与经纬度相互转换的方法

最近用到了墨卡托坐标转换经纬度的需求,原理什么的不想多说,需要的可以查看这里:

麦卡托投影法

Web Mercator

经纬度转Web墨卡托

版本1

dvec3 CMathEngine::lonLat2WebMercator(dvec3  lonLat)  
{  
    dvec3  mercator;  
    double x = lonLat.x *20037508.34/180;  
    double y = log(tan((90+lonLat.y)*PI/360))/(PI/180);  
    y = y *20037508.34/180;  
    mercator.x = x;  
    mercator.y = y;  
    return mercator ;  
}

版本2

(CGPoint )lonLat2Mercator:(CGPoint ) lonLat{
    CGPoint mercator; 
    double x = lonLat.x *20037508.34/180; 
    double  y = log(tan((90+lonLat.y)*M_PI/360))/(M_PI/180);
    y = y *20037508.34/180; mercator.x = x; mercator.
    y = y; return mercator ;
}

版本3

function lonlat2mercator(lonlat)
{   
    var mercator={x:0,y:0}; 
    var x = lonlat.x *20037508.34/180;  
    var y = Math.log(Math.tan((90+lonlat.y)*Math.PI/360))/(Math.PI/180);
    y = y *20037508.34/180; 
    mercator.x = x; 
    mercator.y = y; 
    return mercator ; 
} 

Web墨卡托转经纬度

版本1

dvec3 CMathEngine::WebMercator2lonLat( dvec3   mercator )  
{  
    dvec3 lonLat;  
    double x = mercator.x/20037508.34*180;  
    double y = mercator.y/20037508.34*180;  
    y= 180/PI*(2*atan(exp(y*PI/180))-PI/2);  
    lonLat.x = x;  
    lonLat.y = y;  
    return lonLat;  
}  

版本2

(CGPoint )Mercator2lonLat:(CGPoint ) mercator
{
    CGPoint lonLat; 
    double x = mercator.x/20037508.34*180; 
    double y = mercator.y/20037508.34*180;
    y= 180/M_PI*(2*atan(exp(y*M_PI/180))-M_PI/2); 
    lonLat.x = x; lonLat.y = y;
    return lonLat;
}

版本3

function mercator2lonlat(mercator){ 
    var lonlat={x:0,y:0};   
    var x = mercator.x/20037508.34*180; 
    var y = mercator.y/20037508.34*180; 
    y= 180/Math.PI*(2*Math.atan(Math.exp(y*Math.PI/180))-Math.PI/2);
    lonlat.x = x;   lonlat.y = y;   return lonlat;
}

参考:

  • http://www.thinkgis.cn/topic/54199646bcea5603e8016e1d

  • http://blog.csdn.net/lsldd/article/details/8095500

相关阅读

麻辣GIS-Sailor

作者:

GIS爱好者,学GIS,更爱玩GIS。

声明

1.本文所分享的所有需要用户下载使用的内容(包括但不限于软件、数据、图片)来自于网络或者麻辣GIS粉丝自行分享,版权归该下载资源的合法拥有者所有,如有侵权请第一时间联系本站删除。

2.下载内容仅限个人学习使用,请切勿用作商用等其他用途,否则后果自负。

手机阅读
公众号关注
知识星球
手机阅读
麻辣GIS微信公众号关注
最新GIS干货
关注麻辣GIS知识星球
私享圈子

仅有一条评论

  1. 麻辣GIS-Key
    1#
    Key  · 2019-05-10 10:35

    赞一个

留言板(小编看到第一时间回复)