YMaps.Hotspots.Overlay

Расширяет YMaps.IInteractiveGeoObject, YMaps.IOverlay.

Активная области на карте, заданная в географических координатах.

Активные области используются для разметки объектов, непосредственно нарисованных на карте. API Яндекс.Карт автоматически обсчитывает движения мыши и, если какое-то действие произошло над активной областью, генерирует соответствующие события и выполняет стандартные сценарии - показ всплывающей подсказки, балуна, автоматическая смена курсора.

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

Конструктор

Имя Описание
YMaps.Hotspots.Overlay(geometry, options) Создает активную область.

Поля

Имя Описание
Events

Список событий активной области.

Наследуемые поля

Из YMaps.IGeoObject:
description, id, metaDataProperty, name

События

Имя Описание
BalloonClose

Событие закрытия балуна области.

Обработчик события получает параметром ссылку на активную область.

BalloonOpen

Событие открытия балуна области.

Обработчик события получает параметром ссылку на активную область.

Click

Щелчок мыши по области.

Обработчик события получает следующие параметры:

  • ссылку на активную область;
  • объект YMaps.MouseEvent, описывающий событие;
  • геометрическую фигуру YMaps.Hotspots.IShape в составе активной области, над которой произошло событие.
DblClick

Двойной щелчок мыши по области.

Обработчик события получает следующие параметры:

  • ссылку на активную область;
  • объект YMaps.MouseEvent, описывающий событие;
  • геометрическую фигуру YMaps.Hotspots.IShape в составе активной области, над которой произошло событие.
MouseDown

Над областью нажата кнопка мыши.

Обработчик события получает следующие параметры:

  • ссылку на активную область;
  • объект YMaps.MouseEvent, описывающий событие;
  • геометрическую фигуру YMaps.Hotspots.IShape в составе активной области, над которой произошло событие.
MouseEnter

Курсор наведен на область.

Обработчик события получает следующие параметры:

  • ссылку на активную область;
  • объект YMaps.MouseEvent, описывающий событие;
  • геометрическую фигуру YMaps.Hotspots.IShape в составе активной области, над которой произошло событие.
MouseLeave

Курсор убран с области.

Обработчик события получает следующие параметры:

  • ссылку на активную область;
  • объект YMaps.MouseEvent, описывающий событие;
  • геометрическую фигуру YMaps.Hotspots.IShape в составе активной области, над которой произошло событие.
MouseMove

Движение мышью над областью.

Обработчик события получает следующие параметры:

  • ссылку на активную область;
  • объект YMaps.MouseEvent, описывающий событие;
  • геометрическую фигуру YMaps.Hotspots.IShape в составе активной области, над которой произошло событие.
MouseUp

ажатая кнопка мыши отпущена.

Обработчик события получает следующие параметры:

  • ссылку на активную область;
  • объект YMaps.MouseEvent, описывающий событие;
  • геометрическую фигуру YMaps.Hotspots.IShape в составе активной области, над которой произошло событие.

Методы

Имя Возвращает Описание
getGeometry() Object[] Возвращает геометрию активной области.
getMap() YMaps.Map Возвращает карту, на которую добавлена активная область.
getNumShapes() Integer Возвращает число геометрических фигур, описывающих активную область.
getOptions() YMaps.Hotspots.OverlayOptions Возвращает опции области.
getShape(index) YMaps.Hotspots.IShape Возвращает представление геометрической фигуры в составе активной области по ее индексу. Координаты точек отдаются в пикселах на текущем масштабе.
openBalloon(content, options, point) Открывает балун над активной областью. Если не передана точка открытия, то балун открывается в геометрическом центре первой фигуры области.
setGeometry(geometry) Устанавливает активной области новую геометрию.
setOptions(options, restoreDefault) Задает опции области.

Наследуемые методы

Из YMaps.IOverlay:
onAddToMap, onMapUpdate, onRemoveFromMap
Из YMaps.IInteractiveGeoObject:
closeBalloon, getBalloon, getBalloonContent, getBalloonOptions, getHintContent, getHintOptions, setBalloonContent, setBalloonOptions, setHintContent, setHintOptions, update
Из YMaps.IGeoObject:
getBounds, getComputedStyle, getParentGroup, getStyle, onAddToGroup, onRemoveFromGroup, setBounds, setStyle

Подробное описание конструктора

YMaps.Hotspots.Overlay(geometry, options)
Создает активную область.

Пример:

var hOverlay = new YMaps.Hotspots.Overlay([
 {
     shape: 'rect', // shape - вид фигуры; 'rect' соответствует прямоугольнику
     // coords - координаты фигуры; для прямоугольника указываются юго-западный и северо-восточный углы
     coords: [ new YMaps.GeoPoint(10, 10), new YMaps.GeoPoint(20, 20) ]
 },
 // такое объявление - сокращенный способ задания прямоугольника
 [ new YMaps.GeoPoint(30, 10), new YMaps.GeoPoint(40, 20) ],
 {
     shape: 'cpoly', // 'cpoly' соответствует выпуклому многоугольнику
     coords: [
         // coords - массив координат вершин многоугольника
         new YMaps.GeoPoint(50, 10),
         new YMaps.GeoPoint(60, 30),
         new YMaps.GeoPoint(70, 20),
         new YMaps.GeoPoint(60, 10)
     ]
 },
 {
     shape: 'npoly', // 'npoly' соответствует невыпуклому многоугольнику
     coords: [
         // coords - массив координат вершин многоугольника.
         new YMaps.GeoPoint(80, 10),
         new YMaps.GeoPoint(90, 30),
         new YMaps.GeoPoint(100, 10),
         new YMaps.GeoPoint(90, 20)
     ]
 }
]);

Параметры:

Имя Тип Необязательный По умолчанию Описание
geometry Object[] Описание геометрии области. Область состоит из множества геометрических фигур. Каждая фигура описывается объектом с двумя полями: shape - форма фигуры, coords - массив точек YMaps.ICoordPoint. Допустимые значения поля shape: 'rect' - прямоугольник (задается двумя точками: левой нижней и правой верхней), 'cpoly' - выпуклый многоугольник, 'npoly' - невыпуклый многоугольник.
options YMaps.Hotspots.OverlayOptions Опции.

Подробное описание полей

Events

Object Events

Список событий активной области.

Подробное описание событий

BalloonClose

BalloonClose

Событие закрытия балуна области.

Обработчик события получает параметром ссылку на активную область.

BalloonOpen

BalloonOpen

Событие открытия балуна области.

Обработчик события получает параметром ссылку на активную область.

Click

Click

Щелчок мыши по области.

Обработчик события получает следующие параметры:

  • ссылку на активную область;
  • объект YMaps.MouseEvent, описывающий событие;
  • геометрическую фигуру YMaps.Hotspots.IShape в составе активной области, над которой произошло событие.

DblClick

DblClick

Двойной щелчок мыши по области.

Обработчик события получает следующие параметры:

  • ссылку на активную область;
  • объект YMaps.MouseEvent, описывающий событие;
  • геометрическую фигуру YMaps.Hotspots.IShape в составе активной области, над которой произошло событие.

MouseDown

MouseDown

Над областью нажата кнопка мыши.

Обработчик события получает следующие параметры:

  • ссылку на активную область;
  • объект YMaps.MouseEvent, описывающий событие;
  • геометрическую фигуру YMaps.Hotspots.IShape в составе активной области, над которой произошло событие.

MouseEnter

MouseEnter

Курсор наведен на область.

Обработчик события получает следующие параметры:

  • ссылку на активную область;
  • объект YMaps.MouseEvent, описывающий событие;
  • геометрическую фигуру YMaps.Hotspots.IShape в составе активной области, над которой произошло событие.

MouseLeave

MouseLeave

Курсор убран с области.

Обработчик события получает следующие параметры:

  • ссылку на активную область;
  • объект YMaps.MouseEvent, описывающий событие;
  • геометрическую фигуру YMaps.Hotspots.IShape в составе активной области, над которой произошло событие.

MouseMove

MouseMove

Движение мышью над областью.

Обработчик события получает следующие параметры:

  • ссылку на активную область;
  • объект YMaps.MouseEvent, описывающий событие;
  • геометрическую фигуру YMaps.Hotspots.IShape в составе активной области, над которой произошло событие.

MouseUp

MouseUp

ажатая кнопка мыши отпущена.

Обработчик события получает следующие параметры:

  • ссылку на активную область;
  • объект YMaps.MouseEvent, описывающий событие;
  • геометрическую фигуру YMaps.Hotspots.IShape в составе активной области, над которой произошло событие.

Подробное описание методов

getGeometry

{Object[]} getGeometry()

Возвращает геометрию активной области.

Возвращает:

Тип Описание
Object[] Описание геометрии.

getMap

{YMaps.Map} getMap()

Возвращает карту, на которую добавлена активная область.

Возвращает:

Тип Описание
YMaps.Map Карту.

getNumShapes

{Integer} getNumShapes()

Возвращает число геометрических фигур, описывающих активную область.

Возвращает:

Тип Описание
Integer Число фигур.

getOptions

Возвращает опции области.

Возвращает:

Тип Описание
YMaps.Hotspots.OverlayOptions Опции области.

getShape

{YMaps.Hotspots.IShape} getShape(index)

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

Параметры:

Имя Тип Описание
index Integer Индекс фигуры, считая с 0.

Возвращает:

Тип Описание
YMaps.Hotspots.IShape Фигура.

openBalloon

openBalloon(content, options, point)

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

Параметры:

Имя Тип Необязательный По умолчанию Описание
content String|HTMLElement Содержимое балуна.
options YMaps.MapBalloonOptions Опции балуна.
point YMaps.ICoordPoint Точка открытия балуна.

setGeometry

setGeometry(geometry)

Устанавливает активной области новую геометрию.

Параметры:

Имя Тип Описание
geometry Object[] Описание геометрии.

setOptions

setOptions(options, restoreDefault)

Задает опции области.

Параметры:

Имя Тип Описание
options YMaps.Hotspots.OverlayOptions Опции области.
restoreDefault Boolean Восстановить значения по умолчанию.