我正在使用android google地图实用程序来实现标记的集群。我正在使用10Markers
当我按下按钮时,我会打电话给:
mGoogleMap.moveCamera(CameraUpdateFactory.newLatLngBounds(getMarkerBoundingBox(), MAP_PADDING));
我的8个标记接近一个给定的区域,所以它们是聚集的,我可以看到一个蓝色的球,数字8在中间。
另外两个标记远离另一组,但彼此非常接近。
我现在看到的是一个有八个标记的簇,而远处只有一个标记。只有当我放大一个标记(实际上是两个)的区域,我才能看到两个标记。
我想展示八个标记的簇,但其中两个标记的簇。
如何减少创建群集的距离?在这个限制下,如果标记太近,我希望在缩放级别最后创建一个簇。
我试图在
MAX_DISTANCE_AT_ZOOM
时更改NonHierarchicalDistanceBasedAlgorithm.java
,但没有成功。有什么想法吗?? 最佳答案
尝试覆盖ShouldRenderAsCluster,因此群集仅从两项开始:
声明群集管理器时:
mClusterManager.setRenderer(new CustomRenderer<YOUR_TYPE>(getActivity(), googleMap, mClusterManager));
class CustomRenderer<T extends ClusterItem> extends DefaultClusterRenderer<T> {
public CustomRenderer(Context context, GoogleMap map, ClusterManager<T> clusterManager) {
super(context, map, clusterManager);
}
@Override
protected boolean shouldRenderAsCluster(Cluster<T> cluster) {
//start clustering if at least 2 items overlap
return cluster.getSize() > 1;
}
...
}