Клуб API Карт

Не получается сделать кластеризацию

Пост в архиве.

Здравствуйте. Никак не выходит сделать кластеризацию меток на карте

15 комментариев
Пробовала через 
myCollection.add(myPlacemark);
clusterer.add(myCollection);
myMap.myGeoObject.add(clusterer);
});


но не получилось
o.a.boyko,
Не стоит вываливать в пост несколько экранов кода. Выложите ссылку на страницу с этим кодом или соберите пример на jsfiddle.net


Для кластеризации меток их надо добавлять в кластеризатор, а не в коллекцию. Посмотрите примеры кластеризации в песочнице 


https://tech.yandex.ru/maps/jsbox/2.1/clusterer_icon_hover
dimik,
то есть поменять myCollection на Clasterer? потому что я пыталась этот код в свой добавить и метки не отображаются вообще
o.a.boyko,
Значит вы сделали что-то неправильно. Как минимум не Clasterer, а Clusterer. Желательно также владеть языком JavaScript хотя бы на базовом уровне - нужно понимать, что myCollection это экземпляр класса, а Clusterer это конструктор класса
Обновлено 20 июля 2017, 16:22
dimik,
а как метки добавить в Clusterer? через clusterer.add(geoObjects); ? или все названия меток прописывать
o.a.boyko,
Вы хотя бы иногда заглядывайте в документацию,  все методы там описаны.


Метод  Clusterer.add принимает как одну метку, так и массив меток 
https://tech.yandex.ru/maps/doc/jsapi/2.1/ref/reference/Clusterer-docpage/#add


Обычно, когда меток много используют массив.


Создание меток таким образом как у вас - по глобальной переменной myPlacemarkN на каждую - это мягко говоря глупость
dimik,
 в таком виде метки не воспринимаются кластером:

placemarks = [

new ymaps.Placemark([55.888119, 37.588781], {
balloonContentHeader: "",
balloonContentBody: "",
balloonContentFooter: "Заберите Вашу печать в пункте самовывоза: " + d,
hintContent: ""
}),
];
o.a.boyko,
Не могу судить по тому куску кода, что вы привели. Скорее всего вы сделали что-то неправильно. Приведите ссылку на страницу с кодом или пример на jsfiddle.
dimik,
http://печати-штампы-тверь.рф/otvety-na-vashi-voprosy/ тренируюсь здесь и в песочнице Яндекса. На jsfiddle не получается. 
Обновлено 20 июля 2017, 17:15
o.a.boyko,
по приведенной вами ссылке нет этого кода


placemarks = [
new ymaps.Placemark([55.888119, 37.588781], {
balloonContentHeader: "",
balloonContentBody: "",
balloonContentFooter: "Заберите Вашу печать в пункте самовывоза: " + d,
hintContent: ""
}),
];
dimik,
там висит рабочая версия кода. Добавила, карта не отображается вовсе
Обновлено 20 июля 2017, 17:25
o.a.boyko,
у вас синтаксическая ошибка.
Элементы массива разделяются запятыми, а не точкой-с-запятой.


http://javascript.ru/tutorial/foundation/structure#massivy



Используйте отладчик, для поиска подобных ошибок



Обновлено 20 июля 2017, 17:35
dimik,
исправила. спасибо! вот только метки не все красятся в фиолетовый...
o.a.boyko,
в примере в песочнице, что я приводил у меток изначально установлена опция preset: 'islands#violetIcon'
dimik,
все получилось. большое спасибо!!!