【发布时间】:2014-01-11 00:03:58
【问题描述】:
我正在尝试使用 Google Maps V3 将我从游戏中获得的 x 和 y 坐标拟合到自定义图像地图。
我从游戏中得到的坐标都在 0 到 15360 之间。在自定义地图中,东北角 LatLng 是 (95, 180),西南角 LatLng 是 (-82.5, -180)。
所以,我将游戏坐标转换为 Google Map LatLng 的功能是:
function getLatLngFromCoords(x, y) {
x = parseFloat(x.replace(",", "."));
y = parseFloat(y.replace(",", "."));
var lng = x / (15360 / 360) - 180;
var lat = y / (15360 / 177.5) - 95;
return new google.maps.LatLng(lat, lng);
}
但它不适合这些位置。
我让 NorthEast 和 SouthWest LatLng 制作标记并调整它们以查看它们何时位于我的图像地图的角落。
无论在哪里,当我用map.getBounds() 获得地图的边界时
我看到了:
map.getBounds().getNorthEast(); // nb: 89.76247963221984, ob: 180
map.getBounds().getSouthWest(); // nb: -87.43214656352167, ob: -180
【问题讨论】:
标签: javascript google-maps google-maps-api-3 latitude-longitude coords