javascript - 修改 MarkerClusterer 图标以获得最高分,而不是标记计数

标签 javascript google-maps-api-3

我正在寻找一些关于从哪里开始的建议:

我目前在开发环境中启动并运行“vanilla”MarkerClusterer(大约 3000 个标记)。

每个标记都有一个与之关联的分数,我想更改它,以便聚类标记代表它们包含的标记的最高分数(而不是仅代表标记的数量)。

我应该去哪里,我将如何实现这一改变?

谢谢!

最佳答案

使用 setCalculator() 方法定义您希望如何完成计算。这是使用 original function 的代码.调整它以按照您想要的方式进行计算。每个簇调用一次计算器函数,因此结果是簇中您想要的文本及其应具有的样式的索引。

your_clusterer.setCalculator(function(markers, numStyles) {
  var index = 0;
  var count = markers.length;
  var dv = count;
  while (dv !== 0) {
    dv = parseInt(dv / 10, 10);
    index++;
  }

  index = Math.min(index, numStyles);
  return {
    text: count,
    index: index
  };
});

关于javascript - 修改 MarkerClusterer 图标以获得最高分,而不是标记计数,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/12783250/

相关文章:

javascript - 检查所选日期是否来自同一周 javascript

javascript - 如何选择显示:none labels from the div

javascript - 动态更改 GoogleMap 图标/标记的颜色

google-maps-api-3 - 设置可见后markercluster不变

javascript - 在 Google Maps API 的标记上显示位置信息

ios - 如何在 ios 应用程序中添加 google map direction API?

javascript - Node Express Passport 与 Angular - 不兼容?

javascript - 遍历列表并插入对象数组

javascript - Meteor JS 中的 Deps 自动运行

javascript - 谷歌地图容器在动画后无法正确调整大小