3. Метки и элементы управления
marker
Создание маркера.
src/ui/marker.js
Параметры
Название | Тип | Описание |
---|---|---|
element | HTMLElement | Использовать DOM-элемент в качестве маркера. По умолчанию используется голубой, каплевидный SVG-маркер (light blue, droplet-shaped). |
anchor | string default: center | Определяет позицию иконки относительно ее центра. Доступные значения: center , top , bottom , left , right , top-left , top-right , bottom-left и bottom-right . |
offset | PointLike | Смещение применяемое относительно центра элемента. Отрицательные значения указывают влево и вверх. |
color | string default: #3FB1CE | Если options.element не указан, то будет использоваться этот цвет. По умолчанию используется светло-синий цвет. |
scale | number default: 1 | Если options.element не указан, то будет использоваться этот масштаб. По умолчанию шкала соответствует высоте 41px и ширине 27px. |
draggable | boolean default: false | Если true , то можно перетаскивать маркеры на новое место (drag and drop) |
clickTolerance | number default: 0 | Максимальное количество пикселей, на которое пользователь может переместить указатель мыши во время щелчка по маркеру, чтобы он считался допустимым щелчком (в отличие от перетаскивания маркера). По умолчанию используется наследование clickTolerance карты. |
rotation | number default: 0 | Угол поворота маркера относительно его соответствующей rotationAlignment . Положительное значение будет вращать маркер по часовой стрелке. |
pitchAlignment | string default: auto |
|
rotationAlignment | string default: auto |
|
См. пример ниже.
var marker = new mmrgl.Marker()
.setLngLat([30.5, 50.5])
.addTo(map);
// Set options
var marker = new mmrgl.Marker({
color: "#FFFFFF" ,
draggable: true
}).setLngLat([30.5, 50.5])
.addTo(map);
Методы
Название | Описание |
---|---|
addTo(map) | Прикрепляет маркер к объекту карты. См. пример ниже.
|
getElement() | Возвращает HTML-элемент маркера. |
getLngLat() | |
| Получите географическое местоположение маркера. Долгота результата может отличаться кратно 360 градусам от долготы, ранее установленной setLngLat , потому что Маркер обертывает якорную долготу по копиям мира, чтобы сохранить маркер на экране. |
getOffset() | Возвращает смещение маркера. |
getPitchAlignment() | Возвращает текущее свойство маркера pitchAlignment . |
getPopup() | Возвращает экземпляр всплывающего окна, привязанный к маркеру. См. пример ниже.
|
getRotation() | Возвращает текущий угол поворота маркера (в градусах). |
getRotationAlignment() | Возвращает текущее свойство rotationAlignment маркера. |
isDraggable() | Возвращает true , если маркер можно перетащить. |
remove() | Удаляет маркер с карты См. пример ниже.
|
setDraggable(shouldBeDraggable) | Задает перетаскиваемое свойство и функциональность маркера. Используется параметр shouldBeDraggable:boolean (по умолчанию false ). Включает/выключает функцию перетаскивания. |
setLngLat(lnglat) | Устанавливает географическое положение маркера и перемещает его. Используется параметр См. пример ниже.
|
setOffset(offset) | Устанавливает смещение маркера Используется параметр |
setPitchAlignment(alignment?) | Задает свойство Используется параметр |
setPopup(popup) | Привязывает всплывающее окно к маркеру. Используется параметр См. пример ниже.
|
setRotation(rotation) | Задает свойство поворота маркера. Используется параметр |
setRotationAlignment(alignment) | Задает свойство Используется параметр |
togglePopup() | Открывает или закрывает экземпляр всплывающего окна, привязанный к маркеру, в зависимости от текущего состояния всплывающего окна. См. пример ниже.
|
События
Название | Описание |
---|---|
drag | Срабатывает во время перетаскивания. |
dragend | Срабатывает, когда перетаскивание заканчивается. |
dragstart | Срабатывает при начале перетаскивания. |
popup
Создание всплывающего блока.
src/ui/popup.js