Кластеризация решает потенциальные проблемы с производительностью, однако H.map.Group используется для связывания маркеров вместе, а метод group.getBounds () - для нахождения минимального ограничивающего прямоугольника, в котором хранится все содержимое группы. Затем map.viewBounds () можно обновить.
function addMarkersAndSetViewBounds() {
// create map objects
var toronto = new H.map.Marker({lat:43.7, lng:-79.4}),
boston = new H.map.Marker({lat:42.35805, lng:-71.0636}),
washington = new H.map.Marker({lat:38.8951, lng:-77.0366}),
group = new H.map.Group();
// add markers to the group
group.addObjects([toronto, boston, washington]);
map.addObject(group);
// get geo bounding box for the group and set it to the map
map.getViewModel().setLookAtData({
bounds: group.getBoundingBox()
});
}
forEachDataPoint (callback)
Этот метод вызывает указанный обратный вызов для каждой точки данных в данном кластере, который может работать для обновленияТочки данных.
Алгоритм кластеризации группирует точки данных путем объединения двух или более точек, расположенных близко друг к другу на экране, в одну точку кластеризации. Все остальные (не свернутые) точки все еще видны на карте как точки шума.
Если это действительно подходит для варианта использования, перейдите к кластеризации. Это помогает поднять проблему производительности. за более подробной информацией обращайтесь: developer.here.com/documentation/maps/topics/clustering.html