threejs 经纬度转墨卡托坐标 学习笔记

threejs yekong

墨卡托投影(Mercator Projection),又称麦卡托投影、正轴等角圆柱投影,是一种等角的圆柱形地图投影法。本投影法得名于法兰德斯出身的地理学家杰拉杜斯·墨卡托,他于1569年发表长202公分、宽124公分以此方式绘制的世界地图。在以此投影法绘制的地图上,经纬线于任何位置皆垂直相交,使世界地图可以绘制在一个长方形上。由于可显示任两点间的正确方位,航海用途的海图、航路图大都以此方式绘制。在该投影中线型比例尺在图中任意一点周围都保持不变,从而可以保持大陆轮廓投影后的角度和形状不变(即等角);但墨卡托投影会使面积产生变形,极点的比例甚至达到了无穷大。

threejs 经纬度转墨卡托坐标

经纬度转墨卡托

function lonLat2Mercator(E,N) {
  var x = E *20037508.34/180;
  var y = Math.log(Math.tan((90+N)*Math.PI/360))/(Math.PI/180);
  y = y *20037508.34/180;
  return {
    x:x,//墨卡托x坐标——对应经度
    y:y,//墨卡托y坐标——对应维度
  }
}

最终实现效果

webGL 3D地图可视化实例

墨卡托坐标地图实例

墨卡托坐标地图实例

喜欢