Placemark

Расширяет GeoObject.

Метка. Представляет собой геообъект с геометрией geometry.Point.

См.: GeoObjectgeometry.Point

Конструктор | Поля | События | Методы

Конструктор

Placemark(geometry[, properties[, options]])

Создает экземпляр метки.

Параметры:

Параметр

Значение по умолчанию

Описание

geometry*

Тип: Number[]|Object|IPointGeometry

Координаты метки или хэш с описанием геометрии, или ссылка на объект точечной геометрии.

properties

Тип: Object|IDataManager

Данные метки. Могут задаваться как экземпляр класса, реализующего интерфейс IDataManager, либо в виде хэша. При значениях опций по умолчанию геообъектом трактуются следующие поля данных:

  • iconContent — содержимое иконки геообъекта;
  • iconCaption — подпись иконки геообъекта;
  • hintContent — содержимое всплывающей подсказки геообъекта;
  • balloonContent — содержимое балуна геообъекта;
  • balloonContentHeader — содержимое заголовка балуна геообъекта;
  • balloonContentBody — содержимое основой части балуна геообъекта;
  • balloonContentFooter — содержимое нижней части балуна геообъекта.
    Поле balloonContent является кратким обозначением для поля balloonContentBody, но при одновременном задании balloonContentBody более приоритетен. Также вы можете дополнить данные метки своими собственными полями и использовать их везде, где это возможно. Например в макете метки или макете балуна.

options

Тип: Object

Опции метки.

Для изменения стиля и цвета иконки используются следующие опции:

  • preset — ключ предустановленных стилей метки. Список доступных ключей содержится в описании option.presetStorage. Опцию preset можно задавать совместно с опцией iconColor, только если она принимает одно из следующих значений:

    • 'islands#icon'
    • 'islands#dotIcon'
    • 'islands#circleIcon'
    • 'islands#circleDotIcon'
  • iconColor — цвет иконки метки. Можно задавать в любом формате, допустимом в CSS (например, по названию или в формате RGB). Эта опция применяется для стандартных иконок в браузерах, поддерживающих SVG.

    Примечание

    В IE8 данная опция не работает.

Если требуется задать собственный макет иконки, то необходимо указать следующие опции:

  • iconLayout — макет иконки. Тип: конструктор объекта с интерфейсом ILayout или его ключ в хранилище. Список доступных макетов:

    • 'default#image' — пользовательское изображение иконки;
    • 'default#imageWithContent' — пользовательское изображение иконки с содержимым;
  • дополнительные опции классов "layout.Image" и "layout.ImageWithContent с префиксом icon.

Примечание

Для задания макета тени иконки используется тот же набор опций, но с префиксом iconShadow. Например, iconShadowLayout.

Также через класс Placemark можно задать опции отдельных объектов:

Ниже приведены остальные опции данного класса.

options.cursor

"pointer"

Тип: String

Вид курсора над меткой.

options.draggable

false

Тип: Boolean

Определяет возможность перетаскивания метки.

options.hasBalloon

true

Тип: Boolean

Определяет наличие поля balloon у метки.

options.hasHint

true

Тип: Boolean

Определяет наличие поля hint у метки.

options.hideIconOnBalloonOpen

true

Тип: Boolean

Скрывать метку при открытии балуна.

options.iconOffset

Тип: Number[]

Пиксельное смещение иконки относительно заданной позиции.

options.iconShape

Тип: IGeometryJson|null

Фигура активной области метки. Задается в виде JSON-описания пиксельной геометрии иконки. Эту опцию нужно использовать при создании своих HTML макетов. Координаты геометрии фигуры отсчитываются от точки привязки.

options.interactiveZIndex

true

Тип: Boolean

Включает режим автоматического изменения z-index метки в зависимости от ее состояния.

options.interactivityModel

"default#geoObject"

Тип: String

Модель интерактивности. Доступные ключи и их значения перечислены в описании interactivityModel.storage.

options.openBalloonOnClick

true

Тип: Boolean

Определяет, показывать ли балун при щелчке на метке.

options.openEmptyBalloon

false

Тип: Boolean

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

options.openEmptyHint

false

Тип: Boolean

Определяет, показывать ли пустой хинт при наведении указателя мыши на метку.

options.openHintOnHover

true

Тип: Boolean

Определяет, показывать ли хинт при наведении указателя мыши на метку.

options.pane

"places"

Тип: String

Ключ пейна, в который помещается оверлей метки.

options.pointOverlay

"default#placemark"

Тип: String|Function

Ключ-идентификатор из хранилища overlay.storage или класс оверлея. Функция-генератор принимает три параметра:

  • geometry: IPixelPointGeometry — непосредственно пиксельная геометрия;
  • data: IDataManager или Object - данные оверлея;
  • options: Object - опции оверлея.
    Функция возвращает объект vow.Promise.

options.syncOverlayInit

false

Тип: Boolean

Включает синхронное добавление оверлея на карту. По умолчанию добавление оверлея осуществляется асинхронно, что позволяет предотвратить зависания браузера при добавлении на карту большого числа геообъектов. Однако, асинхронное добавление не позволяет получать доступ к оверлею сразу после добавления метки на карту.

options.useMapMarginInDragging

true

Тип: Boolean

При перетаскивании объекта к краю карты происходит автоматическое изменение центра карты. Нужно ли учитывать отступы карты при автоматическом смещении центра карты map.margin.Manager.

options.visible

true

Тип: Boolean

Определяет видимость метки.

options.zIndex

Тип: Number

z-index иконки метки в обычном состоянии. Наименее приоритетный.

options.zIndexActive

Тип: Number

z-index иконки метки с открытым балуном. Наиболее приоритетный.

options.zIndexDrag

Тип: Number

z-index иконки метки при перетаскивании.

options.zIndexHover

Тип: Number

z-index иконки метки при наведении на него указателя мыши.

* Обязательный параметр/опция.

Примеры:

1.

// Создадим метку.
var placemark = new ymaps.Placemark([55.75, 37.61], {
    balloonContent: '<img src="http://img-fotki.yandex.ru/get/6114/82599242.2d6/0_88b97_ec425cf5_M" />',
    iconContent: "Азербайджан"}
, {
    preset: "islands#yellowStretchyIcon",
    // Отключаем кнопку закрытия балуна.
    balloonCloseButton: false,
     // Балун будем открывать и закрывать кликом по иконке метки.
    hideIconOnBalloonOpen: false
});
geoMap.geoObjects.add(placemark);

2.

var placemark = new ymaps.Placemark([55.75, 37.61], {}, {
    // Задаем стиль метки (метка в виде круга).
    preset: "islands#circleDotIcon",
    // Задаем цвет метки (в формате RGB).
    iconColor: '#ff0000'
});
geoMap.geoObjects.add(placemark);

Поля

Имя

Тип

Описание

balloon

geoObject.Balloon

Балун геообъекта.

Унаследовано от GeoObject.

editor

geometryEditor.Point

Редактор геометрии "Точка".

events

event.Manager

Менеджер событий.

Унаследовано от GeoObject.

geometry

geometry.Point

Геометрия типа "Точка".

hint

geoObject.Hint

Хинт геообъекта.

Унаследовано от GeoObject.

options

option.Manager

Менеджер опций геообъекта.

Унаследовано от GeoObject.

properties

data.Manager

Менеджер данных геообъекта.

Унаследовано от GeoObject.

state

data.Manager

Состояние геообъекта. Определяется следующими полями:

  • active: Boolean - признак того, что на геообъекте открыт балун.
  • hover: Boolean - признак того, что в данный момент на геообъект наведен указатель мыши;
  • drag: Boolean - признак того, что в данный момент геообъект перетаскивается.

Унаследовано от GeoObject.

События

Имя

Описание

balloonclose

Закрытие балуна. Экземпляр класса Event.

Унаследовано от GeoObject.

balloonopen

Открытие балуна на геообъекте. Экземпляр класса Event.

Унаследовано от GeoObject.

beforedrag

Событие, предшествующее событию drag. Экземпляр класса Event. Имена полей, доступных через метод Event.get:

  • position - координаты относительно документа. Массива вида [pageX, pageY];
  • pixelOffset - массив из двух чисел, описывающий пиксельный сдвиг на данном шаге;
  • domEvent - исходное DOM-событие (в виде объекта DomEvent), если оно имеется.
    Имена методов, доступных через метод Event.callMethod:
  • setPixelOffset - метод, позволяющий скорректировать значение пиксельного сдвига, который будет фактически применен. В качестве аргумента принимает новый пиксельный сдвиг в виде массива из двух чисел.
    Если у данного события вызвать метод Event.preventDefault, то последующее событие "drag" будет отменено.

Унаследовано от GeoObject.

beforedragstart

Событие, предшествующее событию dragstart. Экземпляр класса Event. Имена полей, доступных через метод Event.get:

  • position - координаты относительно документа. Массива вида [pageX, pageY];
  • domEvent - исходное DOM-событие (в виде объекта DomEvent), если оно имеется.
    Если у данного события вызвать метод Event.preventDefault, то последующее перетаскивание, как и событие "dragstart", будет отменено.

Унаследовано от GeoObject.

click

Однократное нажатие левой кнопки мыши на объекте. При использовании следует иметь в виду, что при сенсорном вводе события мыши будут эмулироваться. Экземпляр класса MapEvent. Более детальное описание доступно в domEvent.manager.

Унаследовано от IDomEventEmitter.

contextmenu

Вызов контекстного меню на элементе. При использовании следует иметь в виду, что при сенсорном вводе события мыши будут эмулироваться. Экземпляр класса MapEvent. Более детальное описание доступно в domEvent.manager.

Унаследовано от IDomEventEmitter.

dblclick

Двойное нажатие левой кнопки мыши на объекте. При использовании следует иметь в виду, что при сенсорном вводе события мыши будут эмулироваться. Экземпляр класса MapEvent. Более детальное описание доступно в domEvent.manager.

Унаследовано от IDomEventEmitter.

drag

Перетаскивание геообъекта. Экземпляр класса Event. Имена полей, доступных через метод Event.get:

  • position - координаты относительно документа. Массива вида [pageX, pageY];
  • pixelOffset - массив из двух чисел, описывающий пиксельный сдвиг на данном шаге;
  • domEvent - исходное DOM-событие (в виде объекта DomEvent), если оно имеется.

Унаследовано от GeoObject.

dragend

Завершение перетаскивания геообъекта. Экземпляр класса Event. Имена полей, доступных через метод Event.get:

  • position - координаты относительно документа. Массива вида [pageX, pageY];
  • domEvent - исходное DOM-событие (в виде объекта DomEvent), если оно имеется.

Унаследовано от GeoObject.

dragstart

Начало перетаскивания геообъекта. Экземпляр класса Event. Имена полей, доступных через метод Event.get:

  • position - координаты относительно документа. Массива вида [pageX, pageY];
  • domEvent - исходное DOM-событие (в виде объекта DomEvent), если оно имеется.

Унаследовано от GeoObject.

editorstatechange

Изменение состояния редактора геометрии геообъекта. Экземпляр класса Event. Имена полей, доступных через метод Event.get:

  • originalEvent - оригинальное событие редактора геометрии.

Унаследовано от GeoObject.

geometrychange

Изменение геометрии геообъекта. Экземпляр класса Event. Имена полей, доступных через метод Event.get:

  • originalEvent: IEvent - оригинальное событие геометрии.

Унаследовано от IGeoObject.

hintclose

Закрытие хинта. Экземпляр класса Event.

Унаследовано от GeoObject.

hintopen

Открытие хинта на геообъекте. Экземпляр класса Event.

Унаследовано от GeoObject.

mapchange

Сменилась карта. Поля данных:

  • oldMap - старая карта;
  • newMap - новая карта.

Унаследовано от IParentOnMap.

mousedown

Нажатие кнопки мыши над объектом. При использовании следует иметь в виду, что при сенсорном вводе события мыши будут эмулироваться. Экземпляр класса MapEvent. Более детальное описание доступно в domEvent.manager.

Унаследовано от IDomEventEmitter.

mouseenter

Наведение курсора на объект. При использовании следует иметь в виду, что при сенсорном вводе события мыши будут эмулироваться. Экземпляр класса MapEvent. Более детальное описание доступно в domEvent.manager.

Унаследовано от IDomEventEmitter.

mouseleave

Вывод курсора за пределы объекта. При использовании следует иметь в виду, что при сенсорном вводе события мыши будут эмулироваться. Экземпляр класса MapEvent. Более детальное описание доступно в domEvent.manager.

Унаследовано от IDomEventEmitter.

mousemove

Перемещение курсора над объектом. При использовании следует иметь в виду, что при сенсорном вводе события мыши будут эмулироваться. Экземпляр класса MapEvent. Более детальное описание доступно в domEvent.manager.

Унаследовано от IDomEventEmitter.

mouseup

Отпускание кнопки мыши над объектом. При использовании следует иметь в виду, что при сенсорном вводе события мыши будут эмулироваться. Экземпляр класса MapEvent. Более детальное описание доступно в domEvent.manager.

Унаследовано от IDomEventEmitter.

multitouchend

Окончание мультисенсорного управления. Данное событие доступно только на устройствах, которые поддерживают множественные сенсорные прикосновения. Возвращает реализацию интерфейса IMultiTouchEvent.

Унаследовано от IDomEventEmitter.

multitouchmove

Повторящееся событие при мультисенсорном управлении. Данное событие доступно только на устройствах, которые поддерживают множественные сенсорные прикосновения. Возвращает реализацию интерфейса IMultiTouchEvent c информацией о прикосновениях. Определяет свойство touches, которое содержит список прикосновений. Каждое прикосновение описано объектом, которое содержит поля:

  • clientX - координата касания X относительно видимой области браузера;
  • clientY - координата касания Y относительно видимой области браузера;
  • pageX - координата касания X касания относительно начала документа;
  • pageY - координата касания Y касания относительно начала документа.

Унаследовано от IDomEventEmitter.

multitouchstart

Начало мультисенсорного управления. Данное событие доступно только на устройствах, которые поддерживают множественные сенсорные прикосновения. Возвращает реализацию интерфейса IMultiTouchEvent c информацией о прикосновениях. Определяет свойство touches, которое содержит список прикосновений. Каждое прикосновение описано объектом, которое содержит поля:

  • clientX - координата касания X относительно видимой области браузера;
  • clientY - координата касания Y относительно видимой области браузера;
  • pageX - координата касания X касания относительно начала документа;
  • pageY - координата касания Y касания относительно начала документа.

Унаследовано от IDomEventEmitter.

optionschange

Изменение в опциях объекта.

Унаследовано от ICustomizable.

overlaychange

Изменение оверлея геообъекта. Экземпляр класса Event. Имена полей, доступных через метод Event.get:

  • overlay: IOverlay|null - ссылка на оверлей;
  • oldOverlay: IOverlay|null - предыдущий оверлей геообъекта.

Унаследовано от IGeoObject.

parentchange

Сменился родительский объект.

Поля данных:

  • oldParent - старый родитель;
  • newParent - новый родитель.

Унаследовано от IChild.

propertieschange

Изменение данных геообъекта. Экземпляр класса Event. Имена полей, доступных через метод Event.get:

  • originalEvent: IEvent - оригинальное событие менеджера данных.

Унаследовано от IGeoObject.

wheel

Скролл мышкой. При использовании следует иметь в виду, что при сенсорном вводе события мыши будут эмулироваться. Экземпляр класса MapEvent. Более детальное описание доступно в domEvent.manager.

Унаследовано от IDomEventEmitter.

Методы

Имя

Возвращает

Описание

getMap()

Map

Возвращает ссылку на карту.

Унаследован от IParentOnMap.

getOverlay()

vow.Promise

Возвращает объект-обещание, который подтверждается объектом оверлея в момент его фактического создания, либо отклоняется с передачей соответствующей ошибки.

Унаследован от IGeoObject.

getOverlaySync()

IOverlay|null

Метод предоставляет синхронный доступ к оверлею.

Унаследован от IGeoObject.

getParent()

IParentOnMap|null

Возвращает ссылку на родительский объект или null, если родительский элемент не был установлен.

Унаследован от IChildOnMap.

setParent(parent)

IChildOnMap

Устанавливает родительский объект. Если передать значение null, то элемент управления будет только удален из текущего родительского объекта.

Унаследован от IChildOnMap.

Описание полей

editor

{geometryEditor.Point} editor

Редактор геометрии "Точка".

geometry

{geometry.Point} geometry

Геометрия типа "Точка".

Предыдущая
Следующая