我目前正在使用Google Maps MarkerClusterer v3(http://google-maps-utility-library-v3.googlecode.com/svn/trunk/markerclusterer/docs/reference.html),到目前为止,该功能给我留下了深刻的印象。
但是,我现在希望在地图中添加一个附加功能。当用户将鼠标悬停在标记列表上时,标记图像将更改。当标记没有聚类时,这很好用,但是由于我也在使用聚类器,因此我需要能够返回特定标记所属的聚类。
有人知道这是否可能吗?我检查了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
库没有提供检索群集的方法。但是有一个增强的库MarkerClustererPlus版本,它提供了更多功能。使用MarkerClustererPlus ,您可以使用MarkerClusterer.getClusters()
函数来检索Array
类实例的Cluster
。然后,您可以使用Cluster.getMarkers()
函数检索该Array
中标记的Cluster
。因此,您应该拥有前进的需要。
关于javascript - Google Maps MarkerClusterer v3返回标记簇,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/10515686/