在没有map.onMouseMove的GoogleMaps中获取光标下的纬度和经度

时间:2010-03-04 19:22:08

标签: javascript google-maps geocoding

我有GoogleMaps对象。我还有GLWLng格式的SouthWest和NorthEast点。我还有(x,y)光标在我的对象上。我想知道游标下的GLatLng而不使用map.onMouseMove(只使用DOM-onMouveMove)。我尝试编写JavaScript代码:

        var w = map.getSize().width;
        var h = map.getSize().height;
        var left = map.getBounds().getSouthWest().lat();
        var right = map.getBounds().getNorthEast().lat();
        var top = map.getBounds().getSouthWest().lng();
        var bottom = map.getBounds().getNorthEast().lng();
        var x = e.pageX - map_canvas.offsetLeft;
        var y = e.pageY - map_canvas.offsetTop;
        var lng = top + (bottom - top) * x * 1.0 / w;
        var lat = left + (right - left) * (h - y) * 1.0 / h;

但是这样我没有足够的准确性。屏幕地理坐标中的常规转换公式是什么?

1 个答案:

答案 0 :(得分:1)

我认为您可以使用GMap2.fromContainerPixelToLatLng()GMap2.fromDivPixelToLatLng()

请参阅Coordinate Transformations

上的文档