Что мне нужно, чтобы положить "URL-адрес" в mapbox addSource - PullRequest
0 голосов
/ 27 января 2019

Я впервые использую mapbox, и я не могу понять, как добавить источник при загрузке карты.

Ниже приведен пример кода .

Я загрузилФайл 'KML' для наборов плиток, и я хочу использовать этот набор плиток для исходного кода, но я не знаю, как написать часть 'url'.

Я также хочу знать, что такое «исходный слой».Что я должен написать в 'исходном слое?

Извините, я знаю, что это очень простой вопрос, но мне действительно нужно знать.Пожалуйста, помогите мне.Спасибо.

map.on('load', function() {
// Add the source to query. In this example we're using
// county polygons uploaded as vector tiles
map.addSource('counties', {
"type": "vector",
"url": "mapbox://mapbox.82pkq93d"  <<---here
});

map.addLayer({
"id": "counties",
"type": "fill",
"source": "counties",
"source-layer": "original",  <<---source layer
"paint": {
"fill-outline-color": "rgba(0,0,0,0.1)",
"fill-color": "rgba(0,0,0,0.1)"
}
}, 'place-city-sm'); // Place polygon under these labels.
}); 

1 Ответ

0 голосов
/ 27 января 2019

EDIT:

Ваш URL-адрес плитки также должен быть таким:

mapbox://{}

Немного сложно найти в документации: при загрузке KML вы создаете tileset , для которого вы должны получить ID карты . С помощью идентификатора карты вы можете запросить отдельные плитки, используя url плитки , например:

/v4/{map_id}/{zoom}/{x}/{y}{@2x}.{format}

Вы можете использовать URL плитки при добавлении источника

map.addSource({
  type: 'vector',
  tiles: ['https://api.mapbox.com/v4/{map_id}/{zoom}/{x}/{y}.mvt']
});

Или вы можете запросить объект метаданных TileJSON и использовать его для добавления источника:

map.addSource({
  type: 'vector',
  url: 'https://api.mapbox.com/v4/{map_id}.json' // <-- tileJSON url
});

Для вашего исходного слоя вопрос: Векторные плитки включают в себя несколько «слоев» данных / геометрии, при добавлении слоя карты вам необходимо определить, к какому исходному слою относится слой карты. Например. у вас может быть один векторный набор плиток, состоящий из линейных строк и точек (два разных исходных слоя), но слой вашей карты должен отображаться только на них. Вы можете либо проверить плитку JSON, чтобы увидеть, какие исходные слои включены в ваш набор плиток, либо создать стиль карты в mapbox studio, используя загруженный набор плиток в качестве источника.

...