我正在尝试将纬度/经度对转换为像素坐标。我找到了这个墨卡托投影,但我不明白代码。什么是因子,x_adj,y_adj 变量?当我在没有这些常量的情况下运行代码时,我的纬度/经度对不在我的地图上,并且 x 和 y 像素坐标不是我想要的。
function get_xy(lat, lng)
{
var mapWidth=2058;
var mapHeight=1746;
var factor=.404;
var x_adj=-391;
var y_adj=37;
var x = (mapWidth*(180+lng)/360)%mapWidth+(mapWidth/2);
var latRad = lat*Math.PI/180;
var mercN = Math.log(Math.tan((Math.PI/4)+(latRad/2)));
var y = (mapHeight/2)-(mapWidth*mercN/(2*Math.PI));
return { x: x*factor+x_adj,y: y*factor+y_adj}
}
来源:http : //webdesignerwall.com/tutorials/interactive-world-javascript-map/comment-page-1? replytocom= 103225