Оформление карты

В этом документе описано, как настроить внешний вид карты, а также управлять видимостью данных и параметрами области просмотра. Это можно сделать следующими способами:

  • Используйте облачное оформление карт.
  • Задавайте параметры стиля карты непосредственно в собственном коде.

Оформите карту с помощью облачных инструментов для оформления карт.

Чтобы применить стиль карты к вашей JavaScript-карте для совместного использования поездок, укажите mapId и любые другие mapOptions при создании объекта JourneySharingMapView .

Следующие примеры показывают, как применить стиль карты с помощью идентификатора карты.

JavaScript

const mapView = new google.maps.journeySharing.JourneySharingMapView({
  element: document.getElementById('map_canvas'),
  locationProviders: [locationProvider],
  mapOptions: {
    mapId: 'YOUR_MAP_ID'
  }
  // Any other styling options.
});

Машинопись

const mapView = new google.maps.journeySharing.JourneySharingMapView({
  element: document.getElementById('map_canvas'),
  locationProviders: [locationProvider],
  mapOptions: {
    mapId: 'YOUR_MAP_ID'
  }
  // Any other styling options.
});

Сопоставление стилей непосредственно в вашем собственном коде

Вы также можете настроить стиль карты, задав параметры карты при создании JourneySharingMapView . В следующих примерах показано, как настроить стиль карты с помощью параметров карты. Для получения дополнительной информации о том, какие параметры карты можно установить, см. mapOptions в справочнике по JavaScript API Google Maps.

JavaScript

const mapView = new google.maps.journeySharing.JourneySharingMapView({
  element: document.getElementById('map_canvas'),
  locationProviders: [locationProvider],
  mapOptions: {
    styles: [
      {
        "featureType": "road.arterial",
        "elementType": "geometry",
        "stylers": [
          { "color": "#CCFFFF" }
        ]
      }
    ]
  }
});

Машинопись

const mapView = new google.maps.journeySharing.JourneySharingMapView({
  element: document.getElementById('map_canvas'),
  locationProviders: [locationProvider],
  mapOptions: {
    styles: [
      {
        "featureType": "road.arterial",
        "elementType": "geometry",
        "stylers": [
          { "color": "#CCFFFF" }
        ]
      }
    ]
  }
});

Управляйте видимостью данных задачи для SDK.

Вы можете управлять видимостью определенных объектов задач на карте с помощью правил видимости.

Видимость данных задачи по умолчанию

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

В этой таблице показана видимость по умолчанию для каждого типа задач. Вы можете настроить видимость для многих задач, но не для всех. Более подробную информацию о типах задач см. в разделе «Типы задач» в руководстве по запланированным задачам .

Тип задачи Видимость по умолчанию Можно настроить? Описание
Задачи, связанные с недоступностью Не видно Нет Используется для перерывов водителя и заправки. Если маршрут к заданию на доставку также включает другую остановку транспортного средства, эта остановка не отображается, если маршрут включает только недоступность заданий. Расчетное время прибытия и расчетное время выполнения задания по-прежнему отображаются для самого задания на доставку.
Задачи по открытию транспортных средств Видимый Да Отображение задачи прекращается после ее завершения или отмены. Вы можете настроить отображение незавершенных задач, связанных с транспортными средствами. См. раздел «Настройка отображения незавершенных задач, связанных с транспортными средствами» .
Задачи для закрытых транспортных средств Не видно Нет Вы не можете настроить видимость задач, связанных с закрытыми транспортными средствами.

Настройте отображение открытых задач, связанных с транспортными средствами.

Интерфейс TaskTrackingInfo предоставляет ряд элементов данных о задачах, которые можно отобразить с помощью Consumer SDK.

Настраиваемые элементы данных задачи

Полилинии маршрута

Примерное время прибытия

Расчетное время выполнения задачи

Оставшееся расстояние до места выполнения задачи (в милях от дома)

Осталось остановок.

местоположение транспортного средства

Параметры видимости для каждой задачи

Вы можете настроить параметры видимости для каждой задачи отдельно, задав параметр TaskTrackingViewConfig при создании или обновлении задачи в Fleet Engine. Используйте следующие параметры видимости для создания критериев определения видимости элемента задачи:

Параметры видимости

Осталось остановок.

Продолжительность до расчетного времени прибытия

Оставшееся расстояние на автомобиле

Всегда видимый

Никогда не виден

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

Элемент данных для корректировки Видимость Критерий
Полилиния маршрута Показывать Транспортное средство находится в пределах 3 остановок.
ЭТА Показывать Оставшееся расстояние для проезда составляет менее 5000 метров.
Осталось остановок. Никогда не показывай Транспортное средство находится в пределах 3 остановок.

Следующий пример демонстрирует данную конфигурацию:

"taskTrackingViewConfig": {
  "routePolylinePointsVisibility": {
    "remainingStopCountThreshold": 3
  },
  "estimatedArrivalTimeVisibility": {
    "remainingDrivingDistanceMetersThreshold": 5000
  },
  "remainingStopCountVisibility": {
    "never": true
  }
}

Полилинии маршрута и правила видимости местоположения транспортного средства

Полилинии маршрута не могут быть видны, если не видно местоположение транспортного средства; в противном случае местоположение транспортного средства можно определить по концу полилинии.

Эти рекомендации помогут вам подобрать допустимое сочетание параметров видимости полилинии маршрута и местоположения транспортного средства.

Те же параметры видимости Критерий видимости Руководство
В параметрах полилиний маршрута установлено значение «всегда видимы». Установите параметр «Местоположение транспортного средства» так, чтобы оно всегда было видно.
Местоположение транспортного средства установлено таким образом, что оно никогда не будет отображаться. Установите для полилиний маршрута параметр «никогда не отображаться».
Доступны следующие варианты отображения:
  • оставшееся количество остановок
  • продолжительность до предполагаемого времени прибытия
  • оставшееся расстояние на автомобиле

Установите для параметров полилинии маршрута значение меньшее или равное значению, заданному для местоположения транспортного средства. Например:

    "taskTrackingViewConfig": {
      "routePolylinePointsVisibility": {
        "remainingStopCountThreshold": 3
      },
      "vehicleLocationVisibility": {
        "remainingStopCountThreshold": 5
      },
    }
    
Различные варианты видимости Критерии видимости Руководство
Местоположение транспортного средства видно.

Это происходит только в том случае, если выполняются оба условия: указание местоположения транспортного средства и отображение полилинии. Например:

  "taskTrackingViewConfig": {
    "routePolylinePointsVisibility": {
      "remainingStopCountThreshold": 3
    },
    "vehicleLocationVisibility": {
      "remainingDrivingDistanceMetersThreshold": 3000
    },
  }

В этом примере местоположение транспортного средства отображается только в том случае, если количество оставшихся остановок составляет не менее 3 И оставшееся расстояние до места назначения составляет не менее 3000 метров.

Отключить автоматическую установку

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

JavaScript

const mapView = new
    google.maps.journeySharing.JourneySharingMapView({
  element: document.getElementById('map_canvas'),
  locationProviders: [locationProvider],
  automaticViewportMode:
      google.maps.journeySharing
          .AutomaticViewportMode.NONE,
  ...
});

Машинопись

const mapView = new
    google.maps.journeySharing.JourneySharingMapView({
  element: document.getElementById('map_canvas'),
  locationProviders: [locationProvider],
  automaticViewportMode:
      google.maps.journeySharing
          .AutomaticViewportMode.NONE,
  ...
});

Что дальше?