許久沒有使用坐標轉換,記憶有些模糊了,以后還是會用到,先將WGS84與web墨卡托轉換復習一下;
1.84轉web墨卡托
//核心公式 平面坐標x = 經度*20037508.34/108
平面坐標y = log(tan((90+緯度)*PI/360))/(PI/360)*20037508.34/180
function lonlattoWebMercator(lon,lat){
var xy[]; double x = Math.lon*20037508.34/180; double y =Math.log(Math.tan((90+lat)*Math.PI/360))/(Math.PI/180);
y = y *20037508.34/180;
xy[0]=x;
xy[1]=y;
returen(xy);
}
2. web墨卡托轉84
//核心公式 經度= 平面坐標x/20037508.34*180 緯度= 180/(PI*(2*atan(exp(平面坐標y/20037508.34*180*PI/180))-PI/2) function webMercator2lonlat(x,y){ var lonlat []; double lon = x/20037508.34*180; double lat = y/20037508.34*180; lat= 180/Math.PI*(2*Math.atan(Math.exp(lat*Math.PI/180))-Math.PI/2); lonlat[0] = lon; lonlat[1] = lat; returen(lonlat); }
