Layer
Расширяет ILayer, IPositioningContext.
Тайловый слой. Позволяет отображать на карте подложку, состоящую из тайлов.
Конструктор | Поля | События | Методы
Конструктор
Layer(tileUrlTemplate[, options])
Параметры:
Параметр | Значение по умолчанию | Описание |
---|---|---|
tileUrlTemplate * | — | Тип: String|Function Строковый шаблон URL тайла, либо функция, которая генерирует URL тайла. Для строкового шаблона поддерживается подстановка:
Функция-шаблон получает на вход три параметра:
|
options | — | Тип: Object Опции. |
options.brightness | 0.5 | Тип: Number Яркость слоя. Задается числом от 0 до 1. 0 соответствует черному цвету, 1 - белому. |
options.notFoundTile | null | Тип: String|null Опция, указывающая по какому url нужно загрузить картинку, если картинка для тайла не загрузилась. Если значение null, то будет показан стандартный тайл с текстовым сообщением. Для прозрачных тайлов опция notFoundTile не применяется, и вместо незагруженных тайлов ничего показываться не будет. |
options.pane | 'layers' | Тип: IPane Родительский контейнер слоёв. |
options.projection | — | Тип: Object Проекция слоя. |
options.tileSize | [256, 256] | Тип: Number[] Размер тайлов слоя. |
options.tileTransparent | false | Тип: Boolean Флаг, показывающий, являются ли тайлы слоя прозрачными. |
options.zIndex | constants.zIndex.layer | Тип: Number Z-index слоя в контейнере слоёв. |
Параметр | Значение по умолчанию | Описание |
---|---|---|
tileUrlTemplate * | — | Тип: String|Function Строковый шаблон URL тайла, либо функция, которая генерирует URL тайла. Для строкового шаблона поддерживается подстановка:
Функция-шаблон получает на вход три параметра:
|
options | — | Тип: Object Опции. |
options.brightness | 0.5 | Тип: Number Яркость слоя. Задается числом от 0 до 1. 0 соответствует черному цвету, 1 - белому. |
options.notFoundTile | null | Тип: String|null Опция, указывающая по какому url нужно загрузить картинку, если картинка для тайла не загрузилась. Если значение null, то будет показан стандартный тайл с текстовым сообщением. Для прозрачных тайлов опция notFoundTile не применяется, и вместо незагруженных тайлов ничего показываться не будет. |
options.pane | 'layers' | Тип: IPane Родительский контейнер слоёв. |
options.projection | — | Тип: Object Проекция слоя. |
options.tileSize | [256, 256] | Тип: Number[] Размер тайлов слоя. |
options.tileTransparent | false | Тип: Boolean Флаг, показывающий, являются ли тайлы слоя прозрачными. |
options.zIndex | constants.zIndex.layer | Тип: Number Z-index слоя в контейнере слоёв. |
* Обязательный параметр/опция.
Пример:
// Добавим на карту слой OSM
map.layers.add(new ymaps.Layer(
'http://tile.openstreetmap.org/%z/%x/%y.png', {
projection: ymaps.projection.sphericalMercator
}));
map.copyrights.add('© OpenStreetMap contributors, CC-BY-SA');
Поля
Имя | Тип | Описание |
---|---|---|
events | IEventManager | Менеджер событий. Унаследовано от IEventEmitter. |
options | IOptionManager | Менеджер опций. Унаследовано от ICustomizable. |
Имя | Тип | Описание |
---|---|---|
events | IEventManager | Менеджер событий. Унаследовано от IEventEmitter. |
options | IOptionManager | Менеджер опций. Унаследовано от ICustomizable. |
События
Имя | Описание |
---|---|
brightnesschange | Событие изменения яркости слоя. Унаследовано от ILayer. |
copyrightschange | Событие изменения доступной информации об авторских правах. Унаследовано от ILayer. |
mapchange | Сменилась карта.
Поля данных:
Унаследовано от IChildOnMap. |
optionschange | Изменение в опциях объекта. Унаследовано от ICustomizable. |
parentchange | Сменился родительский объект. Поля данных:
Унаследовано от IChild. |
zoomrangechange | Событие изменения доступной информации о диапазоне уровней масштабирования. Унаследовано от ILayer. |
Имя | Описание |
---|---|
brightnesschange | Событие изменения яркости слоя. Унаследовано от ILayer. |
copyrightschange | Событие изменения доступной информации об авторских правах. Унаследовано от ILayer. |
mapchange | Сменилась карта.
Поля данных:
Унаследовано от IChildOnMap. |
optionschange | Изменение в опциях объекта. Унаследовано от ICustomizable. |
parentchange | Сменился родительский объект. Поля данных:
Унаследовано от IChild. |
zoomrangechange | Событие изменения доступной информации о диапазоне уровней масштабирования. Унаследовано от ILayer. |
Методы
Имя | Возвращает | Описание |
---|---|---|
clientPixelsToNumber(clientPixelPoint, tileZoom) | Number[] | Returns номер тайла, в который попадает указанная точка при заданном уровне масштаба тайлов. |
fromClientPixels(clientPixelPoint) | Number[] | Преобразует клиентские пиксельные координаты в глобальные. Унаследован от IPositioningContext. |
getBrightness() | Number | Необязательный метод. Возвращает яркость слоя. В зависимости от суммарной яркости слоев, добавленных на карту, выбирается цвет логотипа и копирайтов на карте. Унаследован от ILayer. |
getCopyrights(coords, zoom) | Необязательный метод. Запрашивает информацию об авторских правах в указанной точке с указанным коэффициентом масштабирования. Возвращает объект-promise, который будет подтверждён и передаст в качестве результата массив строк или DOM-элементов с информацией об авторских правах. Унаследован от ILayer. | |
getPane() | Возвращает контейнер, в котором находится слой. | |
getParent() | Returns ссылку на родительский объект. Унаследован от IChildOnMap. | |
getTileSize(zoom) | Number[] | Возвращает размеры тайлов в зависимости от масштаба. |
getTileUrl(tileNumber, tileZoom) | String|null | Returns URL тайла по его номеру и уровню масштабирования или null если для запрашиваемого участка нет данных. |
getTileUrlTemplate() | String|Function | Returns строковый шаблон URL тайла или функцию, которая его генерирует. |
getZoom() | Number | Returns текущий уровень масштабирования, в котором работает контекст позиционирования. Унаследован от IPositioningContext. |
getZoomRange(point) | Необязательный метод. Определяет доступный в указанной точке диапазон уровней масштабирования. Если данные есть, то возвращенный объект-promise будет подтвержден и передаст в качестве результата массив из двух чисел - минимальный и максимальный доступный в точке уровень масштабирования. Если данных нет, то promise отклоняется с указанием ошибки. Унаследован от ILayer. | |
numberToClientBounds(tileNumber, tileZoom) | Number[][] | Преобразует номер и уровень масштаба тайла в занимаемую тайлом область в клиентских координатах родительского контейнера. |
restrict(number, tileZoom) | Integer[]|null | Накладывает ограничения на зону видимости тайлов (в том числе зацикленность карты по осям x, y). |
setParent(parent) | Устанавливает родительский объект. Унаследован от IChildOnMap. | |
setTileUrlTemplate(tileUrlTemplate) | ||
toClientPixels(globalPixelPoint) | Number[] | Преобразует глобальные пиксельные координаты в клиентские. Унаследован от IPositioningContext. |
update() | Удаляет старые тайлы и запрашивает новые. |
Имя | Возвращает | Описание |
---|---|---|
clientPixelsToNumber(clientPixelPoint, tileZoom) | Number[] | Returns номер тайла, в который попадает указанная точка при заданном уровне масштаба тайлов. |
fromClientPixels(clientPixelPoint) | Number[] | Преобразует клиентские пиксельные координаты в глобальные. Унаследован от IPositioningContext. |
getBrightness() | Number | Необязательный метод. Возвращает яркость слоя. В зависимости от суммарной яркости слоев, добавленных на карту, выбирается цвет логотипа и копирайтов на карте. Унаследован от ILayer. |
getCopyrights(coords, zoom) | Необязательный метод. Запрашивает информацию об авторских правах в указанной точке с указанным коэффициентом масштабирования. Возвращает объект-promise, который будет подтверждён и передаст в качестве результата массив строк или DOM-элементов с информацией об авторских правах. Унаследован от ILayer. | |
getPane() | Возвращает контейнер, в котором находится слой. | |
getParent() | Returns ссылку на родительский объект. Унаследован от IChildOnMap. | |
getTileSize(zoom) | Number[] | Возвращает размеры тайлов в зависимости от масштаба. |
getTileUrl(tileNumber, tileZoom) | String|null | Returns URL тайла по его номеру и уровню масштабирования или null если для запрашиваемого участка нет данных. |
getTileUrlTemplate() | String|Function | Returns строковый шаблон URL тайла или функцию, которая его генерирует. |
getZoom() | Number | Returns текущий уровень масштабирования, в котором работает контекст позиционирования. Унаследован от IPositioningContext. |
getZoomRange(point) | Необязательный метод. Определяет доступный в указанной точке диапазон уровней масштабирования. Если данные есть, то возвращенный объект-promise будет подтвержден и передаст в качестве результата массив из двух чисел - минимальный и максимальный доступный в точке уровень масштабирования. Если данных нет, то promise отклоняется с указанием ошибки. Унаследован от ILayer. | |
numberToClientBounds(tileNumber, tileZoom) | Number[][] | Преобразует номер и уровень масштаба тайла в занимаемую тайлом область в клиентских координатах родительского контейнера. |
restrict(number, tileZoom) | Integer[]|null | Накладывает ограничения на зону видимости тайлов (в том числе зацикленность карты по осям x, y). |
setParent(parent) | Устанавливает родительский объект. Унаследован от IChildOnMap. | |
setTileUrlTemplate(tileUrlTemplate) | ||
toClientPixels(globalPixelPoint) | Number[] | Преобразует глобальные пиксельные координаты в клиентские. Унаследован от IPositioningContext. |
update() | Удаляет старые тайлы и запрашивает новые. |
Описание методов
clientPixelsToNumber
{Number[]} clientPixelsToNumber(clientPixelPoint, tileZoom)
Returns номер тайла, в который попадает указанная точка при заданном уровне масштаба тайлов.
Параметры:
Параметр | Значение по умолчанию | Описание |
---|---|---|
clientPixelPoint * | — | Тип: Number Точка в клиентских пиксельных координатах. |
tileZoom * | — | Тип: Number Уровень масштаба тайла. |
Параметр | Значение по умолчанию | Описание |
---|---|---|
clientPixelPoint * | — | Тип: Number Точка в клиентских пиксельных координатах. |
tileZoom * | — | Тип: Number Уровень масштаба тайла. |
* Обязательный параметр/опция.
getPane
{IPane} getPane()
Возвращает контейнер, в котором находится слой.
Returns контейнер.
getTileSize
{Number[]} getTileSize(zoom)
Возвращает размеры тайлов в зависимости от масштаба.
Returns размеры тайла по горизонтали и вертикали для указанного коэффициента масштабирования.
Параметры:
* Обязательный параметр/опция.
Пример:
// Будем показывать тайлы для большего уровня масштабирования,
// растянутые в два раза до размера 512х512 пикселей
// Например, для экономии трафика.
var layer = new ymaps.Layer('', {
projection: ymaps.projection.sphericalMercator
});
layer.getTileUrl = function (tileNumber, zoom) {
return [
'http://tile.openstreetmap.org',
Math.max(zoom - 1, 0), tileNumber[0], tileNumber[1]
].join('/') + '.png';
}
layer.getTileSize = function (zoom) {
if (zoom == 0) {
return [256, 256];
}
return [512, 512];
}
map.copyrights.add('© OpenStreetMap contributors, CC-BY-SA');
getTileUrl
{String|null} getTileUrl(tileNumber, tileZoom)
Returns URL тайла по его номеру и уровню масштабирования или null если для запрашиваемого участка нет данных.
Параметры:
Параметр | Значение по умолчанию | Описание |
---|---|---|
tileNumber * | — | Тип: |
tileZoom * | — | Тип: |
Параметр | Значение по умолчанию | Описание |
---|---|---|
tileNumber * | — | Тип: |
tileZoom * | — | Тип: |
* Обязательный параметр/опция.
Пример:
// Определим свою функцию для формирования URL тайла
var layer = new ymaps.Layer('');
layer.getTileUrl = function (tileNumber, zoom) {
return [
'http://tile.openstreetmap.org',
zoom, tileNumber[0], tileNumber[1]
].join('/') + '.png';
}
getTileUrlTemplate
{String|Function} getTileUrlTemplate()
Returns строковый шаблон URL тайла или функцию, которая его генерирует.
numberToClientBounds
{Number[][]} numberToClientBounds(tileNumber, tileZoom)
Преобразует номер и уровень масштаба тайла в занимаемую тайлом область в клиентских координатах родительского контейнера.
Returns область в клиентских пиксельных координатах.
Параметры:
Параметр | Значение по умолчанию | Описание |
---|---|---|
tileNumber * | — | Тип: Integer[] Номер тайла. |
tileZoom * | — | Тип: Integer Уровень масштаба тайла. |
Параметр | Значение по умолчанию | Описание |
---|---|---|
tileNumber * | — | Тип: Integer[] Номер тайла. |
tileZoom * | — | Тип: Integer Уровень масштаба тайла. |
* Обязательный параметр/опция.
restrict
Накладывает ограничения на зону видимости тайлов (в том числе зацикленность карты по осям x, y).
Returns новый номер тайла с учётом ограничений либо null, если тайл не входит в зону видимости.
Параметры:
Параметр | Значение по умолчанию | Описание |
---|---|---|
number * | — | Тип: Integer[] Номер тайла. |
tileZoom * | — | Тип: Integer Уровень масштабирования тайла. |
* Обязательный параметр/опция.
setTileUrlTemplate
{} setTileUrlTemplate(tileUrlTemplate)
Параметры:
Параметр | Значение по умолчанию | Описание |
---|---|---|
tileUrlTemplate * | — | Тип: String|Function Строковый шаблон URL тайла, либо функция, которая его генерирует. |
Параметр | Значение по умолчанию | Описание |
---|---|---|
tileUrlTemplate * | — | Тип: String|Function Строковый шаблон URL тайла, либо функция, которая его генерирует. |
* Обязательный параметр/опция.
update
{} update()
Удаляет старые тайлы и запрашивает новые.