Клуб API Карт

Как сделать сделать, на яндекс карте, вывод всех размещенных на ней объектов...

sadzeburo
25 мая 2012, 15:45

На сайте есть фиксированная область в которой выводится яндекс карта. На яндекс карту выводятся балуны, с адресами (допустим магазинов)...

 

Все красиво, вот только если магазины разнесены между собой на большое расстояние, часть из них видна на карте, а часть чтобы увидеть нужно : уменьшить масштаб, или проскролировать карту...

 

Есть ли способ заставить карту ))), выводить в видимой области все объекты(балуны), с автоподстройкой масштаба, если эти объекты не вмещаются в видимую область (область выводимая картой).

запутанно, но понятнее не напишу (

9 комментариев
Подписаться на комментарии к посту

можно добавить все объекты в коллекцию, которая умеет расчитывать эту область, например, такую

Большое спасибо, сейчас займусь ))!!!

Может я что-то не понял, но есть вот такая замечательная функция ymaps.util.bounds.getCenterAndZoom читать про нее тут http://api.yandex.ru/maps/doc/jsapi/2.x/ref/reference/util.bounds.fromCenterAndZoom.xml

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

 

А как определить минимальную и максимальную координату, не подскажите?

Попробывал сделать но не получается, вот ссылка , не понимаю почему в myCollection.getBounds() (строка 41) возвращает одинаковые значения ...

Помогите разобраться)

у вас там в коллекции всего одна точка

и масштаб получается очень подробный (на котором уже нет тайлов)

Можно добавить в вызове метода map.setBounds опцию checkZoomRange: true,

и тогда масштаб выставится максимально возможный на котором тайлы есть

 

Сделал как сказали, сработало! o_O, только он выделяет очень крупно, я так понял теперь что этот способ не для одной метки, а для охвата нескольких.

А что делать если мне нужно например поставить метку в центре города или улицы, и при этом чтобы охватывался весь город или улица, (как это сделано в конструкторе) подскажите если не сложно или направьте :-(:-)

 

можно прогеокодировать название города/улицы и выставить масштаб по наденному объекту