Получить / список исходных слоев из векторного источника Mapbox GL JS - PullRequest
0 голосов
/ 30 апреля 2020

В Mapbox GL JS Я добавляю векторный источник плиток из локально размещенного файла mbtiles. Добавить этот источник к моему экземпляру карты очень просто, как показано ниже.

map.addSource("polylinesSource",{
      "type":"vector",      
      "tiles": [
       "http://localhost:8000/polylinesJoined/{z}/{x}/{y}.pbf"
      ]
    })

Исходные слои из этого сервиса будут динамическими c, и я надеюсь найти способ ссылаться на все эти слои, как только источник загружен. Можно ли перечислить все слои в источнике после загрузки?

1 Ответ

1 голос
/ 04 мая 2020

Это на удивление неудобно. Mapbox-GL- JS не предоставляет никаких методов для вывода списка исходных слоев векторных листов, доступных в наборе плиток.

Я построил векторный инспектор , чтобы решить эту проблему. Приведенный здесь код демонстрирует процесс извлечения этой информации из файла .pbf: https://github.com/stevage/vector-inspector-api/blob/master/server.js

В качестве альтернативы, поскольку у вас есть локальный файл mbtiles, другой вариант - извлечь его локально. Используя другой инструмент, который я построил, tileinfo .

Кроме того, если вы обслуживаете плитки, используя что-то вроде tessera , вы можете получить доступ к информации о слоях непосредственно в Tile JSON конечная точка.

...