Zh YandexMap CustomMapType/ru

From Documentation
Revision as of 09:34, 25 December 2019 by Admin (talk | contribs)
(diff) ← Older revision | Latest revision (diff) | Newer revision → (diff)
Jump to navigation Jump to search

Создание пользовательского типа карты

Создание пользовательского типа для простых карт

Этот тип карт, которые вы не создавали (не создавали тайлы), но хотите использовать в компоненте (или плагине).

Например, создадим пользовательский тип карт для Open Street Map (который включен в компонент как предопределенный тип)


Переходим к Map Types

Создаем новый тип

В подробностях типпа карт вы должны заполнить обязательные поля

  • Title - это Наименование вашего типа в элементе управления типами карт
  • minZoom и maxZoom - минимальный и максимальный масштаб (вы должны знать для какого масштаба существуют тайлы)
  • размер тайлов
  • функция Get Tile URL используется Yandex Maps API для получения тайлов
  • Projection - вы должны знать, какая проекция используется при создании тайлов
  • Layer Type - способ отображения карты
    • Map - выводит только ваши тайлы
    • Overlay - выводит ваши тайлы поверх основной карты. Это удобно когда ваши тайлы покрывают только часть поверхности, но все остальное вы тоже хотите видеть.


В нашем случае мы имеем следующий URL для получения тайлов

http://tile.openstreetmap.org/%z/%x/%y.png

В этом случае наша функция Get Tile URL будет

function (tileNumber, zoom) {    
  return ['http://tile.openstreetmap.org', zoom, tileNumber[0], tileNumber[1]].join('/') + '.png';
}

Сохраняем, закрываем.

Как Вы можете увидеть, идентификатор (ID) нашего нового типа равен 1


После этого нам необходимо разрешить использование данного типа карты с нашей картой.

Переходим к нашей карте, открываем подробности карты.


Устанавливаем Allow Custom Map Types в соответствующее значение

  • Yes - разрешаем использование пользовательских типов карты, но не выводим их в элементе управления типами карт
  • Map Type Control - разрешаем использование пользовательских типов карты и выводим их в элементе управления типами карт

Указываем идентификатор типа карты в поле Custom Map Types List

Вы также можете установить Map Type в First Custom Map Type если хотите использовать данный тип по умолчанию.

И как результат наша карты будет выглядеть так

При переключении типа карты