2017-03-01 6 views

答えて

1

コードに提案のための

var layers = [ 
    [150], 
    [20], 
    [0] 
]; 
layers.forEach(function(layer, i) { 
    map.addLayer({ 
     "id": "cluster-" + i, 
     "source": "markers", 
     "type": "symbol", 
     "layout": { 
      "text-field": "{point_count}", 
      "text-font": [ 
       "Arial Unicode MS Bold" 
      ], 
      "text-size": 13, 
      "text-anchor": "bottom", 
      "icon-image": "emptyMarker", 
      "icon-size": 0.25 
     }, 
     "paint": { 
      "text-color": "white" 
     }, 
     "filter": i === 0 ? [">=", "point_count", layer[0]] : ["all", [">=", "point_count", layer[0]], 
      ["<", "point_count", layers[i - 1][0]] 
     ] 
    }); 
}); 
map.addLayer({ 
    "id": "cluster-count", 
    "type": "symbol", 
    "source": "markers" 
}); 
0

私は解決策があると思う:
1.あなたはズーム動作を制御する必要があり、すべてのセンターのバウンド子どものマーカーのを計算
およびクラスタのマーカー
2として保管し、
それならばまた15よりも低いならば、あなただけ、あなただけクラスターのマーカーを表示し、他の
子供のマーカーを表示15より大きいです

+0

おかげで、次のことによって解決:) –

関連する問題