ru.dgis.sdk.navigation.ZoomFollowSettings | Android SDK | 2GIS Documentation
Android SDK

ZoomFollowSettings

Интерфейс, позволяющий управлять настройками масштабирования карты во время ведения.

Во время ведения масштаб зависит от скорости движения. Значение масштаба выбирается на основании значений SpeedRangeToZoom, которые хранятся в последовательности speed_range_to_zoom_sequence. Последовательность speed_range_to_zoom_sequence должна содержать интервалы скоростей, отсортированные по возрастанию значений min_speed, при этом должно выполняться условие: max_speedi >= min_speedi+1

max_speedi < min_speedi+2 то есть интервалы скоростей должны соприкасаться или даже пересекаться, но значение скорости не должно попадать более чем в два интервала Первый интервал скоростей должен содержать значение min_speed == 0

Масштаб карты выбирается из последовательности speed_range_to_zoom_sequence по алгоритму:

  • На старте ведения выбирается элемент последовательности с index == 0.
  • Во время движение происходит проверка, на то, не вышло ли текущее значение скорости за пределы интервала скоростей, указанных в элементе последовательности с индексом index, если скорость вышла за пределы интервала, то происходит поиск соседнего интервала в который попадает значение скорости и запоминается его индекс.
  • Происходит проверка не проезжаем ли мы маневр, считается, что мы проезжаем маневр, если есть маневр по ходу движения и дистанция до маневра не превышает max_distance_before_maneuver_to_zoom, или мы проехали маневр, но не отдалились от него на дистанцию больше чем max_distance_after_maneuver_to_zoom. Если мы проезжаем маневр, то выбирается масштаб, соответствующие элементу последовательности index - 1; иначе выбирается масштаб, соответствующий элементу index
  • Methods
    Properties

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

    Расстояние, в метрах, до предстоящего маневра, начиная с которого будет выбираться "предыдущее" значение масштаба из speed_ranges_to_style_zoom_sequence (кроме ситуаций когда уже используется первое значение).

    Расстояние, в метрах, после маневра, на протяжении которого будет выбираться "предыдущее" значение масштаба из speed_ranges_to_style_zoom_sequence (кроме ситуаций когда уже используется первое значение).