谷歌地图 像素坐标和经纬度坐标的相互转换函数 JavaScript

ゝ一纸荒年。 2022-05-24 12:12 633阅读 0赞

经纬度坐标转换为像素坐标:

  1. // 坐标转像素点
  2. function LatLng2Pixel(latLng) {
  3. var scale = Math.pow(2, GlobalMap.getZoom());
  4. var proj = map.getProjection();
  5. var bounds = map.getBounds();
  6. var nw = proj.fromLatLngToPoint(new google.maps.LatLng(bounds.getNorthEast().lat(), bounds.getSouthWest().lng()));
  7. var point = proj.fromLatLngToPoint(latLng);
  8. return new google.maps.Point(Math.floor((point.x - nw.x) * scale), Math.floor((point.y - nw.y) * scale));
  9. }

像素坐标转为经纬度坐标函数:

  1. // 像素转坐标
  2. function Pixel2LatLng(pixel) {
  3. var scale = Math.pow(2, GlobalMap.getZoom());
  4. var proj = map.getProjection();
  5. var bounds = map.getBounds();
  6. var nw = proj.fromLatLngToPoint(new google.maps.LatLng(bounds.getNorthEast().lat(), bounds.getSouthWest().lng()));
  7. var point = new google.maps.Point();
  8. point.x = pixel.x / scale + nw.x;
  9. point.y = pixel.y / scale + nw.y;
  10. return proj.fromPointToLatLng(point);
  11. }

发表评论

表情:
评论列表 (有 0 条评论,633人围观)

还没有评论,来说两句吧...

相关阅读

    相关 经纬度坐标投影坐标转换

    昨天,有朋友要我帮忙看看一个将经纬度坐标转换成墨卡托投影(墨卡托投影有很多变种,我也不知道他说的是哪一种)的程序,他说转换以后的坐标精度太差。当时,他的程序没怎么看懂,然后研究