Mapbox GL Vector плитки + динамические свойства

У меня есть картографическое приложение, которое использует Mapbox.com для обслуживания векторных плиток границ почтовых индексов Великобритании. Файлы границ имеют большой размер и не подходят для загрузки с использованием чего-то вроде TopoJSON. Это прекрасно работает.

Я также использую стили на основе данных для форматирования внешнего вида карты. Теперь я хочу отображать пользовательские данные поверх общих граничных данных. Насколько я могу судить, мне нужно будет обслуживать отдельные векторные плитки, сгенерированные из пользовательских данных, а не проецировать их данные на существующие векторные данные с выборкой из плиток. Я не могу создать уникальный векторный набор тайлов в Mapbox для всех пользователей.

Кажется, что повторная выборка геометрической информации - пустая трата полосы пропускания, когда изменились только свойства. Можно ли каким-то образом «спроецировать» набор свойств, специфичный для сеанса, на полученные данные?


person AlasdairC    schedule 23.05.2016    source источник


Ответы (2)


Похоже, что лучшим решением вашей проблемы может быть добавление источника GeoJSON, содержащий данные для каждого пользователя в дополнение к источнику векторных листов, содержащий границы почтового индекса. Вы можете добавить неограниченное количество источников на любую карту.

person Lucas Wojciechowski    schedule 23.05.2016
comment
Привет, Лукас, спасибо за ответ. Я подумал об этом, просто надеялся, что можно будет каким-то образом использовать существующие геометрические данные. Однако я попробую. - person AlasdairC; 23.05.2016

Кажется, что mapbox / tile-decorator позволяет изменять данные плитки на стороне клиента:

Модуль JavaScript для декодирования векторных листов Mapbox, внесения различных изменений в JS и обратного перекодирования.

Это позволит вам объединить пользовательские данные с данными вашей плитки.

Отказ от ответственности: я не пробовал. Но они специально упоминают вариант использования вопроса:

Оно может:

  • добавить новые свойства к слою (updateLayerProperties)
  • ...
person AdamAL    schedule 28.01.2019
comment
Ах, звучит здорово. К сожалению, я больше не работаю над этим проектом, но буду помнить об этом. - person AlasdairC; 28.01.2019