WGS84经纬度坐标与WEB摩卡托坐标转换
生活随笔
收集整理的這篇文章主要介紹了
WGS84经纬度坐标与WEB摩卡托坐标转换
小編覺得挺不錯的,現在分享給大家,幫大家做個參考.
2019獨角獸企業重金招聘Python工程師標準>>>
第一中方式:?
//經緯度轉Web墨卡托 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; } //Web墨卡托轉經緯度 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; }第二種方式:
//經度轉墨卡托 function handle_x(x) {return (x / 180.0) * 20037508.34; }//緯度度轉墨卡托 function handle_y(y) {if (y > 85.05112) {y = 85.05112;}if (y < -85.05112) {y = -85.05112;}y = (Math.PI / 180.0) * y;var tmp = Math.PI / 4.0 + y / 2.0;return 20037508.34 * Math.log(Math.tan(tmp)) / Math.PI;}//墨卡托轉經度 function handle_me_x(x) {return x/20037508.34*180; }//墨卡托轉緯度 function handle_me_y(my) {var mmy = my/20037508.34*180;y= 180/Math.PI*(2*Math.atan(Math.exp(mmy*Math.PI/180))-Math.PI/2);return y; }?
轉載于:https://my.oschina.net/u/574036/blog/811218
總結
以上是生活随笔為你收集整理的WGS84经纬度坐标与WEB摩卡托坐标转换的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: 遇到的问题锦集及解决方案
- 下一篇: gcc 使用 stdio.h