Слои
Чтобы после создания карты на ней что-то отображалось, необходимо добавить слои.
Слой — это визуальный компонент, который отвечает за отрисовку на карте каких-то объектов. Например, слой маркеров отображает точки на карте, а слой тайлов — саму географическую карту. Слой задается классом YMapLayer.
Слои представляют собой аналогию слоеного пирога. Каждый экземпляр класса YMapLayer может отображаться над/под другим экземпляром того же класса.
Карта может содержать произвольное количество слоев, API вас не ограничивает. Например, вы можете добавить слой, на котором будут отображены картинки с облаками, разместить под ним тайловый слой, а между ними добавить слой пробок.
По умолчанию слои отображаются на карте в том порядке, в котором их добавили. Управлять очередностью их отображения можно двумя способами: через последовательность добавления или с помощью параметра zIndex (по умолчанию используется значение, указанное в параметрах props класса YMapLayer).
Внимание
Слой является отображением того или иного источника данных, поэтому источник важно добавлять на карту до добавления слоя.
Примеры создания:
map.addChild(
new YMapLayer({
source: 'urlSource',
type: 'tiles'
})
);
map.addChild(
new YMapLayer({
source: 'tileGeneratorSource',
type: 'tiles',
zIndex: 2000,
raster: {
// Опция позволяет дожидаться загрузки всех видимых на экране тайлов до отображения.
awaitAllTilesOnFirstDisplay: true,
// Опция задаёт продолжительность анимации отображения загруженных тайлов
tileRevealDuration: 0
}
})
);
map.addChild(
new YMapLayer({
source: 'markerSource',
type: 'markers',
zIndex: 2020
})
);
map.addChild(
new YMapLayer({
source: 'featureSource',
type: 'features',
zIndex: 2010
})
);
Соответственно, порядок отображения будет следующий:
urlSourcetileGeneratorSourcefeatureSourcemarkerSource
Для удобства использования предусмотрены слои по умолчанию:
- YMapDefaultSchemeLayer — объединяет в себе тайловый источник данных и набор слоев для отображения схематической карты Яндекса.
- YMapDefaultFeaturesLayer — объединяет в себе источник данных для геообъектов и слой его отображения.