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

use*_*849 5 javascript google-maps-api-3

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

我目前在开发环境中启动并运行"vanilla"MarkerClusterer(aprox 3000标记).

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

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

谢谢!

Mar*_*ark 12

使用setCalculator()方法定义计算的完成方式.这是使用原始函数的代码.调整它以您想要的方式进行计算.每个集群调用一次计算器函数,因此结果是集群中需要的文本以及它应具有的样式索引.

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
  };
});
Run Code Online (Sandbox Code Playgroud)