Клуб API Карт

Маркеры в API Яндекс.Карт. 2.0

maxim.koronchik
27 марта 2013, 16:24

Перехожу с первой версии API на эту и возникла проблема с отрисовкой стилизированный маркеров с собственной картинкой маркера. Как это реализуется в версии 2.0?

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

 

Объявляете собственные пресеты для маркеров в виде

ymaps.option.presetStorage.add('my#preset1', {
iconLayout:"default#imageWithContent",
  iconImageHref: 'путь_к_графическому файлу',
  iconImageSize: [x, y], // размеры картинки
  iconImageOffset: [x1, y1], // смещение картинки
  iconContentOffset:[x2, y2]
});

потом просто присваиваете метке этот пресет и все

myPlacemark.options.set("preset", "my#preset1")

 

 

как мне объясняли - имя для пресета можно выбирать произвольное, но формат ааа#ббб лучше сохранять, так что можно задавать любое для вас удобное. что-нибдуь вроде my#market, my#bus и т.д.

 iconImageHref - путь к собственно изображению маркера, я пробовала картинки gif, jpg, png - срабатывает все 

 

  iconImageSize - размер этого изображения

 iconImageOffset... если ваш маркер имеет какой-то указующий хвостик или вы просто хотите, чтобы он отностиельно своей позиции был куда-то сдвинут, то тут выставляете - куда и на сколько сдвинут. при 0,0 если я ничего не путаю, в координаты метки картинка будет упираться верхним левым углом. (-x,-y) соответственно сдвинет картинку левее и выше точки координат

 

  iconContentOffset - если предполагается в метку накладывать например, какую-то надпись (с помощью iconContent), то оффсет повзволяет сдвинуть это наложенное содержимое, при необходимости

 

 

 

 

 

Да, спасибо. Примерно так и реализовал. Еще, как я нашел, есть возможность использовать спрайты с помощью iconImageClipRect

Еще можно унести такие картиночные метки на canvas

О, это что-то из новенького, пропустила. Спасибо, изучу