Maps API v3以不同的缩放级别进行聚类

时间:2014-04-28 10:33:21

标签: google-maps-api-3 markerclusterer markermanager

我正在开展一个需要群集的地图项目。我实现了一个商店定位器并使用了MarkerClusterer,它工作正常。现在我有另一个客户的要求,我想知道我应该使用哪种解决方案来实现这些目标:

  • 缩放级别0:彼此相距1500公里的群集标记
  • 缩放级别1:1000千米内的群集
  • 缩放级别2:750km内的群集
  • 缩放级别3:400公里内的群集
  • 缩放级别4及以上:无群集

我在想我应该一起使用MarkerManager和MarkerClusterer,但我不确定。有什么帮助让我走上正确的道路吗?

提前致谢!

1 个答案:

答案 0 :(得分:5)

您只能使用MarkerClusterer,但您必须修改一些选项。

要防止群集器在级别4之后执行,您必须使用maxZoom属性。它定义了聚类器可以聚类标记的最大级别,因此在您的情况下,您必须将其修复为4。

然后,要根据缩放级别更改网格的大小,请使用gridSize属性。您可以找到所有选项字段on the doc.

的定义

因此,您的MarkerClusterer实例将如下所示:

var mcOptions = {gridSize: /*Your value*/, maxZoom: 4};
var markerCluster = new MarkerClusterer(map, /*your array of markers*/ mcOptions);