Слои

Чтобы после создания карты на ней что-то отображалось, необходимо добавить слои.

Слой — это визуальный компонент, который отвечает за отрисовку на карте каких-то объектов. Например, слой маркеров отображает точки на карте, а слой тайлов — саму географическую карту. Слой задается классом 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
  })
);

Соответственно, порядок отображения будет следующий:

  1. urlSource
  2. tileGeneratorSource
  3. featureSource
  4. markerSource

Для удобства использования предусмотрены слои по умолчанию:

  • YMapDefaultSchemeLayer — объединяет в себе тайловый источник данных и набор слоев для отображения схематической карты Яндекса.
  • YMapDefaultFeaturesLayer — объединяет в себе источник данных для геообъектов и слой его отображения.
Предыдущая
Следующая