0
我正在考慮實施集羣。我們有一個列表,當點擊某個項目時,我們希望將它置於視圖中,並在該針上彈出一個信息框。事情是,如果引腳當前聚集在一起,信息框將出現在位置上,因爲該聚類是平均位置。必應地圖如何辨別正常引腳在哪個集羣引腳內
有沒有辦法從集羣層獲取聚集引腳?
發現我的解決方案
var PinYouAreMatching;//wherever you have this coming from
var primitives = clusterLayer.getPrimitives();
for(var i = 0;i < primitives.length;i++)
{
if(primitives[i] instanceof Microsoft.Maps.ClusterPushpin)
{
var contained = primitives[i].containedPushpins;
for(var j = 0;j < contained.length;j++)
{
if(PinYouAreMatching === contained[j])
{
//You found the cluster your pin is at eg. primitives[i].
}
}
}
}
可以結合起來,與在您的主銷集羣引用時羣集圖釘回調加快速度。加快O(n^2)或O(n)降至O(n)或O(1)的某些東西的速度。
不幸的是,這涉及到從羣集圖釘的位置單擊。我希望點擊來自不直接附加到地圖上的菜單項。有一個足夠小的數量的項目線性搜索應該罰款。我只是沒有看到從集羣層獲取所有當前羣集引腳的方法。 – user2927848
我想通了,我可以使用instanceof Microsoft.Maps.ClusterPushpin時,通過原語,我很好。當我創建自定義羣集推針以加快速度時,還要添加一些引用。感謝rbrundritt。 – user2927848