Method: annotatePaths (Automotive)

Zwraca wejściowe ścieżki oparte na segmentach z adnotacjami dla atrybutów dynamicznych na ścieżkach.

Żądanie HTTP

POST https://routes.googleapis.com/annotations/v2:annotatePaths

Adres URL używa składni transkodowania gRPC.

Treść żądania

Treść żądania zawiera dane o następującej strukturze:

Zapis JSON
{
  "paths": [
    {
      object (Path)
    }
  ],
  "annotationOptions": {
    object (AnnotationOptions)
  }
}
Pola
paths[]

object (Path)

Wymagane. Żądane trasy, które mają zostać wypełnione danymi atrybutów dynamicznych. Wszystkie ścieżki powinny mieć ten sam fragment początkowy, który jest obecnie częścią pojazdu. Przyjmujemy, że pojazd znajduje się na początku pierwszego segmentu. Jeśli ścieżki nie rozpoczynają się na tym samym segmencie, zostanie zwrócony błąd.

annotationOptions

object (AnnotationOptions)

Wymagane. Żądane atrybuty danych dynamicznych, które powinny zostać dodane do ścieżek wejściowych. Jeśli pole jest puste, do żądania nie zostanie dodana adnotacja.

Treść odpowiedzi

Odpowiedź AnnotatePathsResponse zawiera ścieżki wejściowe z dodatkowymi danymi dla wszystkich żądanych adnotacji.

W przypadku powodzenia treść żądania zawiera dane o następującej strukturze:

Zapis JSON
{
  "annotatedPaths": [
    {
      object (AnnotatedPath)
    }
  ]
}
Pola
annotatedPaths[]

object (AnnotatedPath)

Ścieżki z danych wejściowych oznaczonych adnotacjami z żądanymi atrybutami.

Ścieżka

Ścieżka, do której wysyłane są żądania atrybutów dynamicznych.

Ścieżka powinna mieć połączone ze sobą fragmenty, które można przejechać. Przyjmuje się, że segmenty ścieżki mają charakter logiczny, a jeśli nie można ich znaleźć w segmentach wejściowych, zwracany jest błąd. Jeśli np. segmenty w ścieżce nie mają połączonych punktów końcowych lub ścieżka jest pusta, wystąpi błąd.

Długość ścieżki jest obecnie ograniczona do 15 km. Trasa jest mierzona od początku pierwszego segmentu, czyli przyjętej lokalizacji pojazdu. Jeśli fragment na ścieżce zaczyna się dalej niż 15 km od jego początku, zostanie zwrócony błąd. Dopuszczalny jest ostatni odcinek, który zaczyna się przed 15 km, a kończy po 15 km. Odpowiedzi częściowe nie zostaną zwrócone.

Ścieżka może zawierać te same segmenty co inna ścieżka, ale adnotacje segmentu mogą zawierać różne odpowiedzi w zależności od różnic między innymi częściami ścieżki.

Zapis JSON
{
  "segments": [
    {
      object (Segment)
    }
  ]
}
Pola
segments[]

object (Segment)

Wymagane. Uporządkowana lista segmentów, które tworzą ścieżkę.

Segmenty

Segment należący do ścieżki.

Zapis JSON
{
  "polyline": {
    object (Polyline)
  },

  // Union field id can be only one of the following:
  "placeId": string
  // End of list of possible types for union field id.
}
Pola
polyline

object (Polyline)

Wymagane. Linia łamana segmentu, która służy do identyfikowania segmentu, gdy nie można znaleźć identyfikatora, oraz do rozróżniania 2 segmentów o tym samym identyfikatorze. Linia łamana jest kodowana przy użyciu standardowego formatu algorytmu łamanego zakodowanego w Google Maps Platform.

Pole sumy id. Służy do identyfikowania tego segmentu w przestrzeni tożsamości. Wymagane. id może być tylko jedną z tych wartości:
placeId

string

Identyfikator miejsca dla tego segmentu drogi. Używane w interfejsach API.

AnnotationOptions

Żądane adnotacje dla ścieżek danych wejściowych.

Zapis JSON
{
  "includeLevelOfService": boolean
}
Pola
includeLevelOfService

boolean

Opcjonalnie. Jeśli zasada ma wartość Prawda, do segmentów w odpowiedzi są oznaczane adnotacje z przewidywanymi wartościami ruchu. „Poziom usługi” jest ogólnie używanym terminem do kategoryzacji przepływu ruchu, ale poziomy definicji usług w tym interfejsie API należą tylko do tego interfejsu API.

AnnotatedPath

Kopia ścieżki wejściowej zwróconej z prognozowanymi atrybutami.

Zapis JSON
{
  "annotatedSegments": [
    {
      object (AnnotatedSegment)
    }
  ]
}
Pola
annotatedSegments[]

object (AnnotatedSegment)

Uporządkowana lista segmentów, która tworzy główną ścieżkę, z adnotacjami żądanych atrybutów.

AnnotatedSegment

Segment, który tworzy ścieżkę z adnotacjami z dynamicznymi atrybutami danych.

Zapis JSON
{
  "segment": {
    object (Segment)
  },
  "segmentSpanAttributes": [
    {
      object (SegmentSpanAttribute)
    }
  ]
}
Pola
segment

object (Segment)

Szczegóły segmentu służące do odróżnienia go od innych segmentów.

segmentSpanAttributes[]

object (SegmentSpanAttribute)

Atrybuty przypisane do segmentu. Te atrybuty mogą się różnić w zależności od ścieżki, na której znajduje się segment. Rozpiętość może obejmować cały segment. Okresy atrybutów są uporządkowane w kolejności od lokalizacji pojazdu do końca ścieżki.

SegmentSpanAttribute

Atrybut SegmentSpanAttribute zawiera adnotacje zwrócone przez interfejs API.

Zapis JSON
{
  "segmentSpan": {
    object (SegmentSpan)
  },
  "levelOfService": enum (LevelOfService)
}
Pola
segmentSpan

object (SegmentSpan)

Wskazuje, w którym miejscu segmentu znajdują się adnotacje.

levelOfService

enum (LevelOfService)

Przewidywany poziom natężenia ruchu w danym zakresie, określony na podstawie prędkości ruchu oczekiwanych na tym segmencie, gdy pojazd znajdzie się na jego początku.

SegmentSpan

Służy do oddzielania podsekcji segmentu. Jeśli span obejmuje cały segment, wartość startMeters będzie wynosić 0, a parametr endMeters będzie długości segmentu.

Zapis JSON
{
  "startMeters": integer,
  "endMeters": integer
}
Pola
startMeters

integer

Miejsce, w którym początek rozpiętości znajduje się w punkcie początkowym linii łamanej segmentu.

endMeters

integer

Gdzie koniec rozpiętości znajduje się od punktu początkowego linii łamanej segmentu.

LevelOfService

Prognozowane wartości zasobników ruchu do wykorzystania w funkcjach ADAS, które mapują się na ogólne poziomy ruchu. Wartości zwracane przez ten interfejs API są niezależne i nie należy na nich korespondować z innymi interfejsami API.

Wartości w polu enum
LEVEL_OF_SERVICE_UNSPECIFIED Wartość domyślna. Ta wartość oznacza, że prognozowana wartość ruchu nie jest dostępna.
LEVEL_OF_SERVICE_STOPPED Ruch został zatrzymany.
LEVEL_OF_SERVICE_STOP_AND_GO Ruch zostaje zatrzymany.
LEVEL_OF_SERVICE_SLOW Przewidujemy korek, ale nie przewiduje się korków.
LEVEL_OF_SERVICE_NORMAL Normalna prędkość, brak korków.