2012-10-08 34 views
5

Tôi đang tìm kiếm một số lời khuyên về việc bắt đầu từ đâu với điều này:sửa đổi các biểu tượng MarkerClusterer cho điểm cao nhất, chứ không phải là số điểm đánh dấu

Tôi hiện đang có "vanilla" MarkerClusterer và chạy trong một môi trường dev (aprox 3000 đánh dấu).

Mỗi điểm đánh dấu có điểm liên kết với điểm đánh dấu và tôi muốn thay đổi điểm đánh dấu sao cho điểm đánh dấu cụm đại diện cho điểm số cao nhất của điểm đánh dấu mà chúng chứa (thay vì chỉ biểu thị số điểm đánh dấu).

Tôi nên đi đâu và làm cách nào để thực hiện thay đổi này?

Cảm ơn!

Trả lời

10

sử dụng phương thức setCalculator() để xác định cách bạn muốn tính toán. Đây là mã sử dụng original function. Tinh chỉnh nó để tính toán theo cách bạn muốn. Chức năng máy tính được gọi một lần cho mỗi cụm, do đó kết quả là văn bản bạn muốn trong cụm và chỉ mục của kiểu cần có.

your_clusterer.setCalculator(function(markers, numStyles) { 
    var index = 0; 
    var count = markers.length; 
    var dv = count; 
    while (dv !== 0) { 
    dv = parseInt(dv/10, 10); 
    index++; 
    } 

    index = Math.min(index, numStyles); 
    return { 
    text: count, 
    index: index 
    }; 
}); 
+0

tuyệt vời - dấu cảm ơn: chỉ cần những gì tôi cần – user1051849

Các vấn đề liên quan