Поворот объекта во время выполнения и обновление слоя - PullRequest
0 голосов
/ 23 января 2019

У меня есть несколько объектов на карте (скажем, автомобили).Эти автомобили производят свое собственное местоположение и соответственно несут обновления.Всякий раз, когда мы получаем обновления данных для объектов, мы создаем новые

Feature feature = Feature.fromGeometry(
                Point.fromLngLat(car.getLongitude(), car.getLatitude())
);

, собираем FeatureCollection из всех автомобильных функций и обновляем наш источник (в нашем случае GeoJsonSource).

Моя проблема в том, что я хочу повернуть символы на car.getBearing(), чтобы указать направление движения автомобиля.Я проверил объяснение стиля выполнения (https://docs.mapbox.com/mapbox-gl-js/example/animate-point-along-route/) и попытался добиться того же поведения в Android, но в отличие от gl-js:

  • - это свойство icon-rotate длясимвольный слой, но он ожидает поворот значения при настройке слоя (по умолчанию здесь просто 0)
  • нет встроенного свойства "bearing" для объекта объекта, который можно установить (не в Feature, FeatureCollection или Point)

Есть ли в Android идея создавать слой каждый раз при обновлении источника данных? Я уже нашел обходной путь с помощью Annotations, но это похоже на) можно получить нужную функцию с помощью SymbolLayer и b) это будет гораздо лучшим подходом, когда речь идет о больших наборах данных.

Кажется, что репозитории mapbox-gl-native github имеютrotate свойство для symbol_instance, но я не могу понять, как это использовать.

Спасибо за любой совет по этой теме.

Br, Ben

...