RouteProgress

open class RouteProgress : Codable

RouteProgress stores the user’s progress along a route.

  • Intializes a new RouteProgress.

    Declaration

    Swift

    public init(route: Route, options: RouteOptions, legIndex: Int = 0, spokenInstructionIndex: Int = 0, routeShapeIndex: Int = 0, legShapeIndex: Int = 0)

    Parameters

    route

    The route to follow.

    options

    The route options that were attached to the route request.

    legIndex

    Zero-based index indicating the current leg the user is on.

    routeShapeIndex

    Index relative to route shape, representing the point the user is currently located at.

    legShapeIndex

    Index relative to leg shape, representing the point the user is currently located at.

  • Current RouteOptions, optimized for rerouting.

    This method is useful for implementing custom rerouting. Resulting RouteOptions skip passed waypoints and include current user heading if possible.

    Declaration

    Swift

    public func reroutingOptions(from location: CLLocation) -> RouteOptions

    Parameters

    location

    Current user location. Treated as route origin for rerouting.

    Return Value

    Modified RouteOptions.

  • Returns the current RouteOptions.

    Declaration

    Swift

    public let routeOptions: RouteOptions
  • Total distance traveled by user along all legs.

    Declaration

    Swift

    public var distanceTraveled: CLLocationDistance { get }
  • Total seconds remaining on all legs.

    Declaration

    Swift

    public var durationRemaining: TimeInterval { get }
  • Number between 0 and 1 representing how far along the Route the user has traveled.

    Declaration

    Swift

    public var fractionTraveled: Double { get }
  • Total distance remaining in meters along route.

    Declaration

    Swift

    public var distanceRemaining: CLLocationDistance { get }
  • The waypoints remaining on the current route.

    This property does not include waypoints whose Waypoint.separatesLegs property is set to false.

    Declaration

    Swift

    public var remainingWaypoints: [Waypoint] { get }
  • Upcoming RouteAlerts as reported by the navigation engine.

    The contents of the array depend on user’s current progress along the route and are modified on each location update. This array contains only the alerts that the user has not passed. Some events may have non-zero length and are also included while the user is traversing it. You can use this property to get information about incoming points of interest.

    Declaration

    Swift

    public internal(set) var upcomingRouteAlerts: [RouteAlert] { get }
  • Returns an array of CLLocationCoordinate2D of the coordinates along the current step and any adjacent steps.

    Important

    The adjacent steps may be part of legs other than the current leg.

    Declaration

    Swift

    public var nearbyShape: LineString { get }
  • Returns the remaining steps left on the current route

    Declaration

    Swift

    public var remainingSteps: [RouteStep] { get }
  • The step prior to the current step along this route.

    The prior step may be part of a different RouteLeg than the current step. If the current step is the first step along the route, this property is set to nil.

    Declaration

    Swift

    public var priorStep: RouteStep? { get }
  • The step following the current step along this route.

    The upcoming step may be part of a different RouteLeg than the current step. If it is the last step along the route, this property is set to nil.

    Declaration

    Swift

    public var upcomingStep: RouteStep? { get }