Документация
Справочник JavaScript API
2.1.64 (текущая версия)
collection
interactivityModel
Интерфейсы

Rectangle

Расширяет GeoObject.

Прямоугольник. Представляет собой геообъект с геометрией geometry.Rectangle.

См.: GeoObject geometry.Rectangle

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

Конструктор

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

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

Параметры:

ПараметрЗначение по умолчаниюОписание
geometry *
[no-highlight[

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

]no-highlight]

Тип: Number[][]|Object|IRectangleGeometry

Координаты двух противоположных углов, хэш-объект с параметрами геометрии или ссылка на объект геометрии прямоугольника.

properties

Тип: Object|IDataManager

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

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

options

Тип: Object

Опции прямоугольника. Используя этот параметр можно задавать как опции самого прямоугольника, так и опции его составных частей:

options.cursor "pointer"

Тип: String

Вид курсора над прямоугольником.

options.draggable false

Тип: Boolean

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

options.fill true

Тип: Boolean

Наличие заливки фигуры.

options.fillColor "0066ff99"

Тип: String

Цвет заливки.

options.fillImageHref

Тип: String

Фоновое изображение. При включении данной опции в режиме заливки stretch значение опции fillColor игнорируется.

options.fillMethod 'stretch'

Тип: String

Тип заливки фоном. Может принимать одно из двух значений:

  • stretch - фоновое изображение растягивается по размеру оверлея.
  • tile - Фоновое изображение повторяется без изменений размера. Аналог background-repeat в css. Можно использовать для заливки фигуры неким шаблоном.

options.fillOpacity 1

Тип: Number

Прозрачность заливки.

options.hasBalloon true

Тип: Boolean

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

options.hasHint true

Тип: Boolean

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

options.interactiveZIndex false

Тип: Boolean

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

options.interactivityModel "default#geoObject"

Тип: String

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

options.opacity 1

Тип: Number

Прозрачность.

options.openBalloonOnClick true

Тип: Boolean

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

options.openEmptyBalloon false

Тип: Boolean

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

options.openEmptyHint false

Тип: Boolean

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

options.openHintOnHover true

Тип: Boolean

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

options.outline true

Тип: Boolean

Наличие обводки фигуры.

options.pane "places"

Тип: String

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

options.rectangleOverlay "default#rectangle"

Тип: String|Function

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

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

options.strokeColor "0066ffff"

Тип: String|String[]

Цвет линии или обводки. Можно задать несколько значений для множественной обводки.

options.strokeOpacity 1

Тип: Number|Number[]

Прозрачность линии или обводки. Можно задать несколько значений для множественной обводки.

options.strokeStyle

Тип: String|Object|String[]|Object[]

Стиль линии или обводки. Можно задать несколько значений для множественной обводки.

options.strokeWidth 1

Тип: Number|Number[]

Толщина линии или обводки. Можно задать несколько значений для множественной обводки.

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 прямоугольника при наведении на него указателя мыши.

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

Пример:

// Создаем геодезический круг радиусом 1000 километров.
var circle = new ymaps.Circle([[50, 50], 1000000], {}, {
    draggable: true
});
// Добавляем круг на карту.
myMap.geoObjects.add(circle);

// Создаем прямоугольник на основе границы круга.
var rectangle = new ymaps.Rectangle(circle.geometry.getBounds(), {}, {
    fill: false,
    coordRendering: "boundsPath",
    strokeWidth: 4
});
// Добавляем прямоугольник на карту.
myMap.geoObjects.add(rectangle);

// При изменении геометрии круга обновляем координаты прямоугольника.
circle.geometry.events.add("change", function (event) {
    this.geometry.setCoordinates(event.get("target").getBounds());
}, rectangle);

Поля

ИмяТипОписание
balloon geoObject.Balloon

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

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

editor null

Редактор геометрии "Прямоугольник" на данный момент не реализован.

events event.Manager

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

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

geometry geometry.Rectangle

Геометрия типа "Прямоугольник".

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

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

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

contextmenu

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

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

dblclick

Двойное нажатие левой кнопки мыши на объекте. При использовании следует иметь в виду, что при сенсорном вводе события мыши будут эмулироваться. Более детально описание в 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

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

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

mouseenter

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

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

mouseleave

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

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

mousemove

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

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

mouseup

Отпускание кнопки мыши над объектом. При использовании следует иметь в виду, что при сенсорном вводе события мыши будут эмулироваться. Более детально описание в 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

Скролл мышкой. При использовании следует иметь в виду, что при сенсорном вводе события мыши будут эмулироваться. Более детально описание в 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

{null} editor

Редактор геометрии "Прямоугольник" на данный момент не реализован.

geometry

Геометрия типа "Прямоугольник".