LayerCollection

Расширяет ILayer, IMapObjectCollection.

Коллекция слоев.

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

Конструктор

LayerCollection([options])

Коллекция слоев.

Параметры:

Параметр

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

Описание

options

Тип: Object

Опции слоя.

Поля

Имя

Тип

Описание

events

IEventManager

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

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

options

IOptionManager

Менеджер опций.

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

События

Имя

Описание

add

Произошло добавление дочернего объекта.

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

brightnesschange

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

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

copyrightschange

Событие изменения доступной информации об авторских правах.

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

mapchange

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

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

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

optionschange

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

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

parentchange

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

Поля данных:

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

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

remove

Произошло удаление дочернего объекта.

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

tileloadchange

Событие изменения состояния загрузки тайла. Поля данных:

  • readyTileNumber-количество готовых тайлов. Тайл считается готовым, когда она загружен и отрисован. Тип: Number.
  • totalTileNumber-общее количество видимых тайлов. Тип: Number.

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

zoomrangechange

Событие изменения доступной информации о диапазоне уровней масштабирования.

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

Методы

Имя

Возвращает

Описание

add(child)

LayerCollection

Добавляет в коллекцию дочерний объект.

each(callback[, context])

Перебирает все элементы коллекции, вызывая для каждого функцию-обработчик.

getBrightness()

Number

Возвращает яркость слоя в виде числа от 0 до 1.

getCopyrights([coords[, zoom]])

vow.Promise

Запрашивает информацию об авторских правах в указанной точке с указанным коэффициентом масштабирования. Если точка и коэффициент масштабирования не указаны, будут использованы центр и коэффициент масштабирования карты.

getIterator()

IIterator

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

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

getMap()

Map

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

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

getParent()

IParentOnMap|null

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

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

getZoomRange([coords])

vow.Promise

Определяет доступный в указанной точке диапазон уровней масштабирования. Если данные есть, то возвращенный объект-promise будет подтвержден и передаст в качестве результата массив из двух чисел - минимальный и максимальный доступный в точке уровень масштабирования. Если данных нет, то promise отклоняется с указанием ошибки. Если у коллекции нет ни одного потомка, предоставляющего информацию о диапазоне уровней масштабирования, то promise будет отклонён с сообщением 'noProvider'.

remove(child)

LayerCollection

Удаляет из коллекции дочерний объект.

removeAll()

Collection

Удаляет все элементы коллекции.

setParent(parent)

IChildOnMap

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

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

Описание методов

add

{LayerCollection} add(child)

Добавляет в коллекцию дочерний объект.

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

Параметры:

Параметр

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

Описание

child*

Тип: ILayer|String

Слой (ключ из хранилища layer.storage или экземпляр класса ILayer), который нужно добавить.

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

Пример:

// Допустим, мы хотим добавить в свою коллекцию несколько слоев.
var layerCollection = new ymaps.LayerCollection();
var customLayer = new ymaps.Layer('http://tile.openstreetmap.org/%z/%x/%y.png', {
    projection: ymaps.projection.sphericalMercator
});
// Слой можно задать ключом из layer.storage.
var satelliteLayer = 'yandex#satellite';
// Добавим слои в нашу коллекцию.
layerCollection
    .add(customLayer)
    .add(satelliteLayer);

each

{} each(callback[, context])

Перебирает все элементы коллекции, вызывая для каждого функцию-обработчик.

Параметры:

Параметр

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

Описание

callback*

Тип: Function

Функция-обработчик.

context

Тип: Object

Контекст исполнения функции.

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

getBrightness

{Number} getBrightness()

Возвращает яркость слоя в виде числа от 0 до 1.

getCopyrights

{vow.Promise} getCopyrights([coords[, zoom]])

Запрашивает информацию об авторских правах в указанной точке с указанным коэффициентом масштабирования. Если точка и коэффициент масштабирования не указаны, будут использованы центр и коэффициент масштабирования карты.

Возвращает Promise объект, который будет подтверждён массивом строк или DOM-элементов с информацией об авторских правах.

Параметры:

Параметр

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

Описание

coords

Тип: Number[]

Точка на карте, для которой запрашивается информация об авторских правах.

zoom

Тип: Number

Уровень масштабирования, для которого запрашивается информация об авторских правах.

Пример:

// Пусть у нас есть сервис, умеющий по координатам
// и уровню масштабирования возвращать копирайты.
myLayer.getCopyrights = function (coords, zoom) {
    var deferred = ymaps.vow.defer();
    $.ajax('url/to/copyrights/provider?ll=' +
        (coords || map.getCenter()).join(',') + '&z=' +
        (zoom || map.getZoom()),
    function (res) {
        deferred.resolve(res || []);
    });
    return deferred.promise();
};

getZoomRange

{vow.Promise} getZoomRange([coords])

Определяет доступный в указанной точке диапазон уровней масштабирования. Если данные есть, то возвращенный объект-promise будет подтвержден и передаст в качестве результата массив из двух чисел - минимальный и максимальный доступный в точке уровень масштабирования. Если данных нет, то promise отклоняется с указанием ошибки. Если у коллекции нет ни одного потомка, предоставляющего информацию о диапазоне уровней масштабирования, то promise будет отклонён с сообщением 'noProvider'.

Возвращает объект-promise.

Параметры:

Параметр

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

Описание

coords

Тип: Number[]

Координаты точки. Если не указана, берётся текущий центр карты.

Пример:

// Допустим, наш слой отрисован для масштабов 2-15 по всей земле.
myLayer.getZoomRange = function () {
    return ymaps.vow.resolve([2, 15]);
}

remove

{LayerCollection} remove(child)

Удаляет из коллекции дочерний объект.

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

Параметры:

Параметр

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

Описание

child*

Тип: ILayer|String

Слой (строка-ключ из layer.storage или экземпляр класса ILayer), который нужно удалить.

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

removeAll

{Collection} removeAll()

Удаляет все элементы коллекции.

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

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