Zh YandexMap CustomMapType/ru
Создание пользовательского типа карты
Создание пользовательского типа для простых карт
Этот тип карт, которые вы не создавали (не создавали тайлы), но хотите использовать в компоненте (или плагине).
Например, создадим пользовательский тип карт для 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 если хотите использовать данный тип по умолчанию.
И как результат наша карты будет выглядеть так
При переключении типа карты