2

我正在使用Google Map Clustering演示应用程序example来玩它。根据示例偏移如下:谷歌地图集群不适用于小数目的坐标

private void readItems() throws JSONException { 
    InputStream inputStream = getResources().openRawResource(R.raw.radar_search); 
    List<MyItem> items = new MyItemReader().read(inputStream); 
    for (int i = 0; i < 5; i++) { 
     double offset = i/60d; 
     for (MyItem item : items) { 
      LatLng position = item.getPosition(); 
      double lat = position.latitude + offset; 
      double lng = position.longitude + offset; 
      MyItem offsetItem = new MyItem(lat, lng); 
      mClusterManager.addItem(offsetItem); 
     } 
    } 
} 

聚类对于大量坐标(=> 5)完美工作。要了解我们采取两种方案:

  • 第一种情形 我通过以下数据文件加载两个坐标:中{ "lat" : 28.5102148, "lng" : 77.411671 }那算

    [ 
    { "lat" : 28.5092163, "lng" : 77.4135367 }, 
    { "lat" : 28.5102148, "lng" : 77.411671 }, 
    { "lat" : 28.5092163, "lng" : 77.4135367 }, 
    { "lat" : 28.5102148, "lng" : 77.411671 }, 
    { "lat" : 28.5092163, "lng" : 77.4135367 }, 
    { "lat" : 28.5092163, "lng" : 77.4135367 }, 
    { "lat" : 28.5092163, "lng" : 77.4135367 }, 
    { "lat" : 28.5102148, "lng" : 77.411671 }, 
    { "lat" : 28.5102148, "lng" : 77.411671 }, 
    { "lat" : 28.5102148, "lng" : 77.411671 }, 
    { "lat" : 28.5102148, "lng" : 77.411671 }, 
    { "lat" : 28.5102148, "lng" : 77.411671 }, 
    { "lat" : 28.5102148, "lng" : 77.411671 }, 
    { "lat" : 28.5102148, "lng" : 77.411671 } 
    ] 
    

    正如我们可以看到上面的数据文件是9和计的{ "lat" : 28.5092163, "lng" : 77.4135367 },是5.截图模拟器的:

enter image description here

  • 第二种情况 我通过以下数据文件加载两个坐标:中{ "lat" : 28.5102148, "lng" : 77.411671 }那算

    [ 
    { "lat" : 28.5102148, "lng" : 77.411671 }, 
    { "lat" : 28.5092163, "lng" : 77.4135367 }, 
    { "lat" : 28.5102148, "lng" : 77.411671 }, 
    { "lat" : 28.5092163, "lng" : 77.4135367 }, 
    { "lat" : 28.5092163, "lng" : 77.4135367 }, 
    { "lat" : 28.5092163, "lng" : 77.4135367 }, 
    { "lat" : 28.5102148, "lng" : 77.411671 }, 
    { "lat" : 28.5102148, "lng" : 77.411671 }, 
    { "lat" : 28.5102148, "lng" : 77.411671 }, 
    { "lat" : 28.5102148, "lng" : 77.411671 }, 
    { "lat" : 28.5102148, "lng" : 77.411671 }, 
    { "lat" : 28.5102148, "lng" : 77.411671 }, 
    { "lat" : 28.5102148, "lng" : 77.411671 } 
    ] 
    

    我们可以看到上面的数据文件是9和{ "lat" : 28.5092163, "lng" : 77.4135367 },数为4的屏幕截图模拟器:

enter image description here

所以,问题是每当我传递相同的Lat,Lng少于5个协调员。谷歌地图不会显示群集。它应该显示为94

我试图按照文档,但没有什么是heling我出来。我在这里做错了什么?

感谢您的帮助。

+0

你有没有尝试过'for'循环之后执行mClusterManager.cluster()来强制重新集群? – antonio

+0

我试过但得到了同样的结果 –

回答

1

经过这么多的尝试。我看着Clustercode,结果发现:

private int mClusterSize = 4; 

将其更改为按你的方便。