计算GMaps图的最佳lat和lng位置

时间:2012-01-26 22:02:17

标签: php javascript google-maps latitude-longitude

我有一个阵列,有10个不同的纬度和经度数从GMaps收集。我想在同一时间在同一张地图上显示所有这些内容。我需要实现的是计算最佳纬度和经度值以及缩放级别(或者有一个公式来计算某个缩放级别),以便所有标记都可见。

我能够将数学公式实现为我选择的语言,但欢迎任何建议。

谢谢!

2 个答案:

答案 0 :(得分:1)

诀窍是将它们全部添加到LatLngBounds对象,然后使用带有JavaScript的.getCenter()函数。这是V2的伪代码示例:

var bounds = new GLatLngBounds();

for(var i;i < array.length();i++)
{
    bounds.extend(new GLatLng(array[i].lat, array[i].lng));
}

bounds.getCenter();

答案 1 :(得分:0)

您无需计算。

创建一个新的google.maps.LatLngBounds();然后使用extends方法将google.maps.LatLng添加到此边界。

然后你只需要使用带有bounds.getCenter()

的地图的setCenter()

您还可以检索边界的N / E和S / W lat和lng。