package l5kit.maps

Mouse Melon logoGet desktop application:
View/edit binary Protocol Buffers messages

message AccessRestriction

road_network.proto:109

Used in: Lane

enum AccessRestriction.Type

road_network.proto:110

Used in: AccessRestriction

message AnnotatedShape

road_network.proto:836

Represents polygonal data that are either physical (e.g. buildings) or imaginary (e.g. political boundaries) and their associated properties.

Used in: MapElement.Element

message AnnotatedShape.Building

road_network.proto:842

Used in: AnnotatedShape

enum AnnotatedShape.Building.Type

road_network.proto:843

Used in: Building

message AnnotatedShape.Region

road_network.proto:869

An area of focus or interest for map updates and metrics. e.g. Lyft service regions.

Used in: AnnotatedShape

message Condition

road_network.proto:151

Conditional values, e.g. time-based turn restrictions, "when children are present", etc.

Used in: MapElement.AssociatedConditions

message DailyTimeInterval

road_network.proto:122

Contains of DayOfTheWeek, start/end time of day and timezone.

Used in: Condition, Schedule

enum DailyTimeInterval.DayOfTheWeek

road_network.proto:124

Used in: DailyTimeInterval

message GeoFrame

road_network.proto:67

A GeoFrame defines a local Cartesian coordinate system at a point on the Earth, with the Z axis pointing "up". Here is one example of how one could convert from local coordinates in the frame to an "Earth Center Frame" with origin at the center of the Earth, Z pointing to the North pole, and X pointing to the prime meridian (https://en.wikipedia.org/wiki/ECEF), using the WGS84 ellipsoid (a flattened sphere, with the "height" ~0.3% shorter than the equatorial radius). https://en.wikipedia.org/wiki/World_Geodetic_System#A_new_World_Geodetic_System:_WGS_84 https://en.wikipedia.org/wiki/Geographic_coordinate_conversion First convert all int E7 degree values to double & multiply by e7DegreesToRadians Using Geodetic coordinates, the orientation of the local frame is equal to that on the sphere. unit_sphere_pt = [cos(lng) * cos(lat); sin(lng) * cos(lat); sin(lat)] up = unit_sphere_pt east = ([0; 0; 1] x up).normalize() north = up x east ox = cos(bearing) * east - sin(bearing) * north oy = sin(bearing) * east + cos(bearing) * north oz = up The location gets shifted to the point on the ellipsoid where the surface normal matches the sphere normal at that latitude ("geodetic" latitude) normal = a / sqrt(1 - e^2 * sin^2(lat)) // Distance along ellipsoid normal to the OZ axis, not O origin = [up.x * normal; up.y * normal; up.z * (normal * (1 - e^2))] + alt * up ecfCoords = origin + [ox | oy | oz] * cmToMeters * localCoordsCm Constants: a = WGS84 equatorial radius; b = WGS64 polar radius; e^2 = excentricity = 1 - b^2 / a^2

Used in: Lane, TrafficControlElement

message GeoLocation

road_network.proto:18

Used in: GeoFrame, LatLngBox, Polygon, RoadNetworkNode, RoadNetworkSegment

message GlobalId

road_network.proto:13

Id from a globally unique space. Can correspond to objects from different entity classes, e.g. nodes, segments, etc.

Used in: Junction, Lane, LaneSequence, MapElement, RoadNetworkNode, RoadNetworkSegment, SegmentSequence.SegmentWithOrientation, TrafficControlElement.AuxiliaryElement, TrafficControlElement.PedestrianCrosswalk, TrafficControlElement.TrafficLight, TrafficControlElement.TrafficLightFaceState.YieldSet

message Junction

road_network.proto:390

Used in: MapElement.Element

message Lane

road_network.proto:414

Next available tag: 15

Used in: MapElement.Element

message Lane.Boundary

road_network.proto:443

Used in: Lane

enum Lane.Boundary.DividerType

road_network.proto:458

Used in: Boundary

enum Lane.TurnType

road_network.proto:427

Used in: Lane

message LaneSequence

road_network.proto:810

A chain of lanes where each lane "follows" the previous one to describe a possible car path.

Used in: LaneSequences, TrafficControlElement

message LaneSequences

road_network.proto:815

LaneSequences is a collection of lane sequences.

message LatLngBox

road_network.proto:892

A Latitude, Longitude bounding box. SW latitude is always expected < NE latitude. SW longitude CAN be larger than NE longitude, indicating a box spanning the date line. Accordingly, this can only represent bounding boxes smaller than a hemisphere (180deg longitude).

Used in: MapElement

message LocalizedString

road_network.proto:79

Used in: AnnotatedShape, RoadNetworkSegment

message MapElement

road_network.proto:901

A basic unit of the map, of any type, that can be referenced via an ID.

Used in: MapFragment

message MapElement.AssociatedConditions

road_network.proto:925

A set of conditional values that are treated as a single condition. When all the conditions are satisfied, the fields of the corresponding element message will be merged into the main element fields. We'll need to be careful with repeated fields - such fields that need element-wise instead of the default list concatenation behavior for proto merge will need special treatment in code. Example: Trucks over a given tonnage are excluded at certain times of day.

Used in: MapElement

message MapElement.Element

road_network.proto:904

Used in: MapElement, AssociatedConditions

message MapFragment

road_network.proto:942

A collection of map elements, typically (but not necessarily) representing several map layers for a given region. A "Basemap" collection of elements would typically contain segments, nodes, and junctions, but not lane elements or traffic control elements (though it would have lane counts as part of the segments).

message MultiPolygon

road_network.proto:830

A collection of polygons, used to represent more complex map areas.

Used in: AnnotatedShape

message Polygon

road_network.proto:820

Simple representation of a 2D polygon, described by its vertices.

Used in: MultiPolygon

message RoadNetworkNode

road_network.proto:90

Map "intersections". There may be several nodes per junction, to represent sub-connections between different streets merging first etc

Used in: MapElement.Element

message RoadNetworkSegment

road_network.proto:161

The part of the road between 2 "intersections" (nodes), can be a curved road, using multiple (lan,lng) points on a chain.

Used in: MapElement.Element

enum RoadNetworkSegment.BikeAccess

road_network.proto:374

Describes the access a cyclist has on a road segment in either direction. Please note that BikeAccess uses a different nomenclature to describe bike access than BikeLaneAccess. The nomenclature below derives from the bike routing usecase where as BikeLaneAccess describes lane level allowances for cyclists. NOT_ALLOWED => Disallowed for cyclists (e.g. highway lanes) ALLOWED => Legal allowance for cyclists and other vehicles. This is the default for most road classes. SHARED => The segment has a lane that is designated to be shared with cyclists. This is usually designated by markings. e.g. sharrows. DEDICATED => The segment has a dedicated bike lane primarily intended for cyclists. PROTECTED => The segment has a protected bike lane that is phyiscally isolated from other vehicles.

Used in: RoadNetworkSegment

message RoadNetworkSegment.LaneSet

road_network.proto:179

Number and direction of lanes. Roads segments are split when the number of lanes changes.

Used in: RoadNetworkSegment

enum RoadNetworkSegment.LaneSet.BikeLaneAccess

road_network.proto:213

Describes the level of access a cyclist has for a lane. NO => Disallowed for cyclists (e.g. highway lanes) SHARED => Allowed for cyclists and other vehicles (This is the standard lane) DESIGNATED => Lane primarily intended for cyclists, but cars may merge into in situations like right-turns. (DESIGNATED bike lanes can be between driving lanes or on edge of road) DESIGNATED_BACKWARDS => Lane that is DESIGNATED and has bike traffic run opposite of driving lanes of the same LaneSet DESIGNATED_SHARED => A lane that is designated to be shared with cyclists. This is usually designated by markings. e.g. sharrows. More information can be found at https://wiki.openstreetmap.org/wiki/Key:cycleway

Used in: LaneSet

enum RoadNetworkSegment.RoadClass

road_network.proto:260

Road importance classification, following OSM convention: https://wiki.openstreetmap.org/wiki/United_States_Road_Classification

Used in: RoadNetworkSegment

enum RoadNetworkSegment.SideOfSegment

road_network.proto:350

The side of a segment, consistent with segment start-to-end node directionality. EITHER_SIDE_OF_SEGMENT implies accessibility from either side of the segment.

Used in: RoadNetworkSegment

enum RoadNetworkSegment.TravelDirection

road_network.proto:319

Used in: Lane, RoadNetworkSegment

message Schedule

road_network.proto:146

Schedule is a set of daily schedules.

message SegmentSequence

road_network.proto:787

An ordered collection of connected segments, indicating that it is either illegal, or conversely, the only option, to proceed along that path when starting from the first segment. Typically used to represent turn restrictions, with 2 or more segments in the sequence. For complicated intersections, the sequence can have more segments, with the intermediate ones just joining nodes that are all in the intersection. In some instances, it is more concise to represent the only path that can be taken, as opposed to all the paths that cannot be taken. The reason for keeping orientation is to present the directionality; one example is where a turn restriction is on the same from and to segment, and the restriction is only on one side of the segment. With only list of segments, it's not possible to represent this restriction, as we have to distinguish one end from the other end.

Used in: MapElement.Element

message SegmentSequence.SegmentWithOrientation

road_network.proto:795

Used in: SegmentSequence

enum SegmentSequence.SegmentWithOrientation.Orientation

road_network.proto:798

Used in: SegmentWithOrientation

enum SegmentSequence.Type

road_network.proto:788

Used in: SegmentSequence

message TrafficControlElement

road_network.proto:522

Traffic signals, e.g. traffic lights or individual "faces" of traffic lights, stop signs, yield signs, etc. controlling the exit from the lane onto one of the lanes ahead.

Used in: MapElement.Element

message TrafficControlElement.AuxiliaryElement

road_network.proto:550

A traffic control element that is only sometimes present, intended to provide additional information for another traffic control element. Examples may include painted pavement lines where vehicles have to stop when observing some other element, such as a stop sign, yield sign, or crosswalk where the actual crossing area is separated from the stop line.

Used in: TrafficControlElement

enum TrafficControlElement.GeometryType

road_network.proto:748

Ways to connect a sequence of points to form a geometric shape.

Used in: TrafficControlElement

message TrafficControlElement.PedestrianCrosswalk

road_network.proto:532

Pedestrian crosswalks are expected to be modeled to include the line at which cars need to stop in front of the crosswalk, when it exists. From the point of view of AV planning, the car needs to stop before entering the convex hull of the points corresponding to the element. The local X axis of the element's geo_frame is expected to be roughly aligned with the direction of the street that the crosswalk crosses.

Used in: TrafficControlElement

message TrafficControlElement.TrafficLight

road_network.proto:581

Used in: TrafficControlElement

message TrafficControlElement.TrafficLightFaceState

road_network.proto:559

One individual physical light (e.g. red, yellow, green) of a traffic light, or a particular state of the same physical object, when it can take multiple states besides On and OFF (e.g. off / green / green arrow). When that happens, there would be several TrafficLightFaceState, with physically overlapping geometry.

Used in: TrafficControlElement

message TrafficControlElement.TrafficLightFaceState.YieldSet

road_network.proto:560

Used in: TrafficLightFaceState