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

A crossing describes a path from the end point of a segment to the start point of its sibling. Each individual crossing should uniquely represent a physically distinct crossing in the real world. Pedestrian crossings are bidirectional. This proto represents "simple" crossings. More complicated crossings (such as the diagonal crosswalk at Shibuya Station in Tokyo) will be represented using a separate pedestrian network. Example 1: Standard four way crossing. Assume each road (A/B/C) has a crosswalk (denoted by a '-') right before intersection X. Assume crossing at D is prohibited (denoted by a '%'). Assume "prime" roads (A',B',...) are OUT segments relative to X. A\A' B//B' \ // \ // - - X - % // \ // \ C'//C D'\D A CROSSABLE PedestrianCrossing should be added to A, B and C. An UNCROSSABLE PedestrianCrossing should be added to D. Example 2: Simple intersection with one crossing. Assume intersection X was added to accommodate the crosswalk (through X, denoted by '-'). Assume "prime" roads (A',B',...) are OUT segments relative to X. A\A' \ \ -X- \ \ B'\B * A CROSSABLE PedestrianCrossing must be added to either A or B, but not both because each real-world crossing should be represented exactly once. Duplicative crossings may be arbitrarily removed.

Attributes

  • angleDegrees (type: float(), default: nil) - This value specifies the angle of the crosswalk. Zero degrees represents a crosswalk perpendicular to the direction of travel, towards the right side of the segment. The crosswalk angle, winds clockwise. Range [-90, 90]. The following crosswalk would have a 15 degree angle: / / <--/-------------------------------- / /
  • crossAnywhere (type: boolean(), default: nil) - This value enables crossing anywhere (not just at the segment’s endpoint), typically used on long, low-traffic residential streets. This attribute is only respected for trivial segment -> sibling routes. All other routes can cross at a MapFacts intersection.
  • crossingType (type: String.t, default: nil) - Crossing type is used as a restriction and can also be used for rendering.
  • offset (type: number(), default: nil) - The crossing offset defines a fraction between the distance from the segment endpoint to the centerline of the crosswalk and the length of the segment. For example, the segment length is 20 meters and the distance from segment end to center of crosswalk is 2 meters, the value of offset will be 0.1.
  • restriction (type: list(GoogleApi.ContentWarehouse.V1.Model.GeostoreRestrictionProto.t), default: nil) - Restrictions for this crossing (such as constructions on the crosswalk). They must not have subpath or travel_mode.
  • width (type: number(), default: nil) - This value defines the full width of the crossing in the direction perpendicular to the direction which pedestrians walk on the crossing (in meters). The crossing is allowed to "spill" into the next segment (0.5 * width can be greater than the offset). Cannot be a negative value.

Summary

Functions

Unwrap a decoded JSON object into its complex fields.

Types

@type t() :: %GoogleApi.ContentWarehouse.V1.Model.GeostorePedestrianCrossingProto{
  angleDegrees: float() | nil,
  crossAnywhere: boolean() | nil,
  crossingType: String.t() | nil,
  offset: number() | nil,
  restriction:
    [GoogleApi.ContentWarehouse.V1.Model.GeostoreRestrictionProto.t()] | nil,
  width: number() | nil
}

Functions

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

Unwrap a decoded JSON object into its complex fields.