View Source GoogleApi.ContentWarehouse.V1.Model.GeostoreSegmentProto (google_api_content_warehouse v0.4.0)

--------------------------------------------------------------------------- WARNING - if you add new fields to SegmentProto (or to other protos used by SegmentProto), you need to: - ensure that the ShortSegmentsMerger class (in geostore/tools/internal/mr-mergesegments.cc) is aware of them, otherwise the new fields will be discarded randomly. - consider whether they should be cleared in the ClearFeature() function (in maps/render/process-high-priority-roads.cc) if they are irrelevant for rendering high priority roads at far-out zoom levels. - update the test cases that ensure these two packages know all the SegmentProto fields in both mr-mergesegments_test.cc and maps/render/process-high-priority-roads_test.cc or you will break the VersaTile build. ---------------------------------------------------------------------------

Attributes

  • surface (type: String.t, default: nil) - clang-format on LINT.ThenChange(//depot/google3/geostore/base/proto/lane.proto) Specific lanes may override this segment-level surface type.
  • visibleLandmark (type: list(GoogleApi.ContentWarehouse.V1.Model.GeostoreLandmarkReferenceProto.t), default: nil) - A collection of landmarks that are visible when traveling along this segment and useful for wayfinding to users following routes using this segment. The landmark need not be on the segment. Each segment in a pair of siblings specifies its landmarks independently. A landmark applicable to both appears in both.
  • advisoryMaximumSpeed (type: list(GoogleApi.ContentWarehouse.V1.Model.GeostoreAppliedSpeedLimitProto.t), default: nil) -
  • constructionStatus (type: String.t, default: nil) -
  • bicycleFacility (type: String.t, default: nil) - clang-format on
  • barrier (type: String.t, default: nil) - clang-format on
  • covered (type: boolean(), default: nil) - Whether the segment is covered by a roof etc. If this field is missing, the status is unknown.
  • endpointMetadata (type: GoogleApi.ContentWarehouse.V1.Model.GeostoreFieldMetadataProto.t, default: nil) - Field-level metadata for the endpoint.
  • distanceToEdgeMetadata (type: GoogleApi.ContentWarehouse.V1.Model.GeostoreFieldMetadataProto.t, default: nil) - Field-level metadata for distance_to_edge.
  • pedestrianFacility (type: String.t, default: nil) - clang-format on
  • constructionBeginDate (type: GoogleApi.ContentWarehouse.V1.Model.GeostoreDateTimeProto.t, default: nil) - If known, the date that construction is scheduled to begin.
  • constructionStatusMetadata (type: GoogleApi.ContentWarehouse.V1.Model.GeostoreFieldMetadataProto.t, default: nil) - Field-level metadata for the construction status.
  • bicycleSafety (type: String.t, default: nil) -
  • usage (type: String.t, default: nil) - clang-format on LINT.ThenChange(//depot/google3/maps/pathfinder/pgraph/pgraph-segment-categories.cc)
  • avgSpeedKphMetadata (type: GoogleApi.ContentWarehouse.V1.Model.GeostoreFieldMetadataProto.t, default: nil) - Field-level metadata for the average speed.
  • barrierMetadata (type: GoogleApi.ContentWarehouse.V1.Model.GeostoreFieldMetadataProto.t, default: nil) - Field-level metadata for the barrier.
  • roadMonitor (type: list(GoogleApi.ContentWarehouse.V1.Model.GeostoreFeatureIdProto.t), default: nil) - The road monitors that monitor this segment for traffic violations.
  • altitude (type: list(number()), default: nil) - RESERVED
  • sweep (type: list(GoogleApi.ContentWarehouse.V1.Model.GeostoreSweepProto.t), default: nil) - The geometric sweeps between this segment and nearby segments, used for real road width rendering. A sweep describes the surface that connects to segments.
  • maxPermittedSpeedKph (type: number(), default: nil) - LINT.IfChange(speed_limits) The maximum speed that is permitted on this segment, in kilometers per hour. This should be the segment's legal speed limit; however, note that it may contain estimated values based on country-wide defaults and other heuristics (see 'is_max_permitted_speed_derived' below). Before exposing this field to users as the legal speed limit please consult with Google lawyers.
  • pedestrianGrade (type: String.t, default: nil) -
  • distanceToEdge (type: number(), default: nil) - Average distance between the segment's polyline and edge of the road on this side in meters. It need not be equal to the sum of width of all lanes in this direction. This width includes on-street bicycle lanes but excludes off-street lanes such as sidewalks. The edge of the road is the rightmost edge for segments in right side driving countries and leftmost edge for left side driving countries. Width of the road is sum of this and sibling's distance_to_edge.
  • pedestrianCrossing (type: GoogleApi.ContentWarehouse.V1.Model.GeostorePedestrianCrossingProto.t, default: nil) - Defines the pedestrian crossing(s) between the end point of this segment and the start point of this segment's sibling.
  • tollRoad (type: boolean(), default: nil) - If this segment is part of a toll road. It would be nice to have data about the toll cost, locations of toll booths, and so forth. Sadly, we don't have this data at this time.
  • constructionEndDate (type: GoogleApi.ContentWarehouse.V1.Model.GeostoreDateTimeProto.t, default: nil) - If known, the date that construction is scheduled to end.
  • conditionMetadata (type: GoogleApi.ContentWarehouse.V1.Model.GeostoreFieldMetadataProto.t, default: nil) - Field-level metadata for the condition.
  • route (type: list(GoogleApi.ContentWarehouse.V1.Model.GeostoreFeatureIdProto.t), default: nil) - The route(s) to which this segment belongs.
  • roadSign (type: list(GoogleApi.ContentWarehouse.V1.Model.GeostoreFeatureIdProto.t), default: nil) - The road sign(s) which this segment refers to. These are features of TYPE_ROAD_SIGN that are applicable to this segment. For example, a sign that says "TO KIRKLAND" might apply to several segments on a freeway off-ramp (until the end of the ramp). Note that this field makes it easy to find the signs for a given road segment. The feature for the sign lists the segments that refer to it.
  • onRight (type: boolean(), default: nil) - Specifies whether this segment carries right-hand traffic (cars keep to the right side of the road) instead of left-hand traffic (cars keep to the left side). This is true for US roads and false for UK roads, for example. See go/wikip/Left-_and_right-hand_traffic.
  • ramp (type: GoogleApi.ContentWarehouse.V1.Model.GeostoreSegmentProtoRampProto.t, default: nil) - May only be set when the segment's usage is USAGE_RAMP.
  • surfaceMetadata (type: GoogleApi.ContentWarehouse.V1.Model.GeostoreFieldMetadataProto.t, default: nil) - Field-level metadata for the surface.
  • condition (type: String.t, default: nil) -
  • edgeFollowsSegmentEndFraction (type: number(), default: nil) -
  • routeAssociation (type: list(GoogleApi.ContentWarehouse.V1.Model.GeostoreRouteAssociationProto.t), default: nil) - Holds metadata about the associations between this segment and the route features listed in the route field. This metadata need not be present; the only consistency requirement is that every feature ID that appears inside 'route_association' must also appear in the repeated 'route' field. If a route does not appear in route_association, consumers should assume that it has a default initialized RouteAssociationProto.
  • internal (type: GoogleApi.ContentWarehouse.V1.Model.GeostoreInternalSegmentProto.t, default: nil) - Internal-only data.
  • endpoint (type: String.t, default: nil) - clang-format on
  • elevationMetadata (type: GoogleApi.ContentWarehouse.V1.Model.GeostoreFieldMetadataProto.t, default: nil) - Field-level metadata for the elevation.
  • gradeLevel (type: list(GoogleApi.ContentWarehouse.V1.Model.GeostoreGradeLevelProto.t), default: nil) - Detailed information about grade levels along the segment. If a GradeLevelProto is not present for any point (index) along the segment, the default grade level is zero. In between two points (indexes), the grade level of the segment is taken to be the max of the grade levels on either side of it. See gradelevel.proto for semantics of repeated indexes.
  • priority (type: String.t, default: nil) - LINT.ThenChange(//depot/google3/maps/pathfinder/pgraph/pgraph-segment-categories.cc)
  • interpolationOffsetMeters (type: number(), default: nil) - If specified, the perpendicular offset in meters from a road segment to an interpolated address along that road segment. See go/synthetic-address-positions.
  • slope (type: list(GoogleApi.ContentWarehouse.V1.Model.GeostoreSlopeProto.t), default: nil) - Each slope instance is tied to a point along the segment polyline (unrelated to the vertices in the segment's polyline) and represents the slope of the segment between that point and the point tied to the next slope istance, or the end of the segment if it's the last slope instance. A segment should have at least one slope.
  • legalMinimumSpeed (type: list(GoogleApi.ContentWarehouse.V1.Model.GeostoreAppliedSpeedLimitProto.t), default: nil) - LINT.ThenChange(//depot/google3/geostore/base/internal/segment.cc:has_speed_limit)
  • intersection (type: GoogleApi.ContentWarehouse.V1.Model.GeostoreFeatureIdProto.t, default: nil) - The intersection feature corresponding to the destination of this segment. Intersections are used to represent the connectivity between segments. Each intersection stores the segment ids of all the incoming and outgoing segments that meet at that intersection. Turns can be made from this segment to any of the outgoing segments of its intersection, unless there is a restriction that explicitly disallows the turn (see below). Every segment has an intersection object, even if there are no other segments to connect to (i.e., a cul-de-sac or dead end).
  • sibling (type: GoogleApi.ContentWarehouse.V1.Model.GeostoreFeatureIdProto.t, default: nil) - The other segment of this segment pair (see above). The segment that is referenced by the sibling field refers to this feature back via the same sibling field. Both segment and sibling should have the same properties such as geometry, country code, elevation, level relation, priority etc. Since routes are required to have segment and sibling at the same time, the set of routes on a segment is same to that of the sibling.
  • isMaxPermittedSpeedDerived (type: boolean(), default: nil) - Specifies whether the max_permitted_speed_kph was derived from a heuristic as opposed to coming from an authoritative source.
  • lane (type: list(GoogleApi.ContentWarehouse.V1.Model.GeostoreLaneProto.t), default: nil) - Detailed information about each lane in this direction, if available. Lanes are numbered from inside of the road outward, i.e. the lane next to the center line has lane_number 0. Note that lanes that are valid for travel in both directions appear in both segments of a segment pair (left turn lanes, one-lane roads, some passing lanes, reversing lanes). Some lanes may not be usable by cars, such as bike lanes. Also, some lanes may not exist along the entire segment, e.g. left- or right-turn lanes that appear just before the intersection.
  • maxPermittedSpeedKphMetadata (type: GoogleApi.ContentWarehouse.V1.Model.GeostoreFieldMetadataProto.t, default: nil) - Field-level metadata for the maximum permitted speed.
  • avgSpeedKph (type: number(), default: nil) - The average speed that should be expected along this route under normal conditions, in kilometers per hour. (Hopefully we'll replace this with something a lot more sophisticated.)
  • separatedRoadways (type: boolean(), default: nil) - Indicates whether the segment's opposing lanes of traffic are separated from this segment, and hence have been represented in a separate feature. This means that there are two pairs of siblings instead of one.
  • edgeFollowsSegmentBeginFraction (type: number(), default: nil) - These indicate for what portion of the segment does the outer curb of the segment follow the segment polyline - i.e., where do the sweep curves connect along the outer curb. If unspecified, may be assumed to be equal to lane retraction, preferring outermost lane.
  • priorityMetadata (type: GoogleApi.ContentWarehouse.V1.Model.GeostoreFieldMetadataProto.t, default: nil) - Field-level metadata for the priority.
  • legalMaximumSpeed (type: list(GoogleApi.ContentWarehouse.V1.Model.GeostoreAppliedSpeedLimitProto.t), default: nil) - The legal maximum, legal minimum, and advisory (recommended but non-legally binding) maximum speed limits that are permitted on this segment. These should be the segment's legal limits; however, note that it may contain estimated values based on country-wide defaults and other heuristics (see 'AppliedSpeedLimitProto.trust_level'). Before exposing these fields to users as the legal speed limit please consult with Google lawyers.
  • restriction (type: list(GoogleApi.ContentWarehouse.V1.Model.GeostoreRestrictionProto.t), default: nil) - The set of restrictions that apply to this segment. Restrictions may make a single segment, turn, or more complex maneuver along a set of segments unroutable for the specified travel modes, or may only add penalties or warnings, depending on the restriction type. Turn restrictions are one example of a restriction. By default, turns are allowed onto all outgoing segments from this segment's intersection (including the sibling of this segment, i.e. U-turns are allowed by default). If any of these turns are disallowed they will be listed as "subpath restrictions". A subpath restriction disallows travel on given sequence of segments. In the case of a disallowed turn, the subpath simply consists of the source and destination feature ids. There may also be restrictions that apply to all travel on this segment (e.g. chains required, or closed in winter), or restrictions that just apply to certain lanes (e.g. high occupancy vehicle lanes).
  • elevation (type: String.t, default: nil) - clang-format on

Summary

Functions

Unwrap a decoded JSON object into its complex fields.

Types

@type t() :: %GoogleApi.ContentWarehouse.V1.Model.GeostoreSegmentProto{
  advisoryMaximumSpeed:
    [GoogleApi.ContentWarehouse.V1.Model.GeostoreAppliedSpeedLimitProto.t()]
    | nil,
  altitude: [number()] | nil,
  avgSpeedKph: number() | nil,
  avgSpeedKphMetadata:
    GoogleApi.ContentWarehouse.V1.Model.GeostoreFieldMetadataProto.t() | nil,
  barrier: String.t() | nil,
  barrierMetadata:
    GoogleApi.ContentWarehouse.V1.Model.GeostoreFieldMetadataProto.t() | nil,
  bicycleFacility: String.t() | nil,
  bicycleSafety: String.t() | nil,
  condition: String.t() | nil,
  conditionMetadata:
    GoogleApi.ContentWarehouse.V1.Model.GeostoreFieldMetadataProto.t() | nil,
  constructionBeginDate:
    GoogleApi.ContentWarehouse.V1.Model.GeostoreDateTimeProto.t() | nil,
  constructionEndDate:
    GoogleApi.ContentWarehouse.V1.Model.GeostoreDateTimeProto.t() | nil,
  constructionStatus: String.t() | nil,
  constructionStatusMetadata:
    GoogleApi.ContentWarehouse.V1.Model.GeostoreFieldMetadataProto.t() | nil,
  covered: boolean() | nil,
  distanceToEdge: number() | nil,
  distanceToEdgeMetadata:
    GoogleApi.ContentWarehouse.V1.Model.GeostoreFieldMetadataProto.t() | nil,
  edgeFollowsSegmentBeginFraction: number() | nil,
  edgeFollowsSegmentEndFraction: number() | nil,
  elevation: String.t() | nil,
  elevationMetadata:
    GoogleApi.ContentWarehouse.V1.Model.GeostoreFieldMetadataProto.t() | nil,
  endpoint: String.t() | nil,
  endpointMetadata:
    GoogleApi.ContentWarehouse.V1.Model.GeostoreFieldMetadataProto.t() | nil,
  gradeLevel:
    [GoogleApi.ContentWarehouse.V1.Model.GeostoreGradeLevelProto.t()] | nil,
  internal:
    GoogleApi.ContentWarehouse.V1.Model.GeostoreInternalSegmentProto.t() | nil,
  interpolationOffsetMeters: number() | nil,
  intersection:
    GoogleApi.ContentWarehouse.V1.Model.GeostoreFeatureIdProto.t() | nil,
  isMaxPermittedSpeedDerived: boolean() | nil,
  lane: [GoogleApi.ContentWarehouse.V1.Model.GeostoreLaneProto.t()] | nil,
  legalMaximumSpeed:
    [GoogleApi.ContentWarehouse.V1.Model.GeostoreAppliedSpeedLimitProto.t()]
    | nil,
  legalMinimumSpeed:
    [GoogleApi.ContentWarehouse.V1.Model.GeostoreAppliedSpeedLimitProto.t()]
    | nil,
  maxPermittedSpeedKph: number() | nil,
  maxPermittedSpeedKphMetadata:
    GoogleApi.ContentWarehouse.V1.Model.GeostoreFieldMetadataProto.t() | nil,
  onRight: boolean() | nil,
  pedestrianCrossing:
    GoogleApi.ContentWarehouse.V1.Model.GeostorePedestrianCrossingProto.t()
    | nil,
  pedestrianFacility: String.t() | nil,
  pedestrianGrade: String.t() | nil,
  priority: String.t() | nil,
  priorityMetadata:
    GoogleApi.ContentWarehouse.V1.Model.GeostoreFieldMetadataProto.t() | nil,
  ramp:
    GoogleApi.ContentWarehouse.V1.Model.GeostoreSegmentProtoRampProto.t() | nil,
  restriction:
    [GoogleApi.ContentWarehouse.V1.Model.GeostoreRestrictionProto.t()] | nil,
  roadMonitor:
    [GoogleApi.ContentWarehouse.V1.Model.GeostoreFeatureIdProto.t()] | nil,
  roadSign:
    [GoogleApi.ContentWarehouse.V1.Model.GeostoreFeatureIdProto.t()] | nil,
  route: [GoogleApi.ContentWarehouse.V1.Model.GeostoreFeatureIdProto.t()] | nil,
  routeAssociation:
    [GoogleApi.ContentWarehouse.V1.Model.GeostoreRouteAssociationProto.t()]
    | nil,
  separatedRoadways: boolean() | nil,
  sibling: GoogleApi.ContentWarehouse.V1.Model.GeostoreFeatureIdProto.t() | nil,
  slope: [GoogleApi.ContentWarehouse.V1.Model.GeostoreSlopeProto.t()] | nil,
  surface: String.t() | nil,
  surfaceMetadata:
    GoogleApi.ContentWarehouse.V1.Model.GeostoreFieldMetadataProto.t() | nil,
  sweep: [GoogleApi.ContentWarehouse.V1.Model.GeostoreSweepProto.t()] | nil,
  tollRoad: boolean() | nil,
  usage: String.t() | nil,
  visibleLandmark:
    [GoogleApi.ContentWarehouse.V1.Model.GeostoreLandmarkReferenceProto.t()]
    | nil
}

Functions

@spec decode(struct(), keyword()) :: struct()

Unwrap a decoded JSON object into its complex fields.