我目前使用Google Maps MarkerClusterer v3(http://google-maps-utility-library-v3.googlecode.com/svn/trunk/markerclusterer/docs/reference.html ),并且迄今为止对功能印象非常深刻。Google地图MarkerClusterer v3标记返回集群
但是,我现在希望在我的地图中添加一个附加功能。当用户将鼠标悬停在标记列表上时,标记图像会发生变化。这在标记未聚集的情况下效果很好,但由于我也在使用Clusterer,我需要能够返回特定标记所属的聚类。
有谁知道这是可能的吗?我检查了API文档,但找不到返回一个集群数组的方法。
从本质上讲,这里是什么,我需要做的伪代码:
function changeClusterIcon(the_marker)
{
var clusters = _CLUSTERER.getClusters();
var clusters_length = clusters.length;
var marker_pos = the_marker.getPosition().toString();
for(var i = 0; i < clusters_length; i++)
{
var this_cluster = clusters[i];
var the_markers = this_cluster.markers.length;
for(var j = 0; j < the_markers; j++)
{
var this_marker = this_cluster.markers[i];
if(this_marker.getPosition().toString() == marker_pos)
{
return this_cluster;
}
}
}
return false;
}
感谢您的帮助。我能够在最初的'MarkerClusterer'库中构建一个辅助函数,它返回它创建的一个簇的数组。从本质上讲,库**不会存储集群,它只是不提供本地功能来访问它们。尽管我会接受你的回答,因为我可以通过研究Plus库的代码来解决问题。 – BenM
是的,'MarkerClusterer'完全保存了簇;我自己经历了这些代码。我试图用“没有提供检索集群的措辞”的措词来表达这一点,但我想这并不完全清楚。无论如何,它帮助你前进,这是最重要的部分。很高兴它为你工作 - –