RoutingVisualization
public protocol RoutingVisualization : ConformanceLocked
                The Entry point for all methods related to the routing visualization.
Instances of RoutingVisualization are created using create(map:styleConfiguration:).
RoutingVisualization shouldn’t be conformed outside the TomTom SDK frameworks.
Inheritance from TomTomSDKCommon/ConformanceLocked makes it impossible to create RoutingVisualization instances outside the TomTomSDK frameworks.
You should call methods on these instances from the main thread only, otherwise an exception can occur.
A RoutingVisualization instance is used by first providing a RoutePlan with displayRoutePlan(_:).
After that, the TomTomSDKRoute/Routes contained in the RoutePlan are displayed on the map, and you can use setActiveRoute(_:) to select a route to be navigated on.
You can access the list of route primitives displayed on the map using routes.
The active route and the alternative routes are styled with the properties contained in the StyleConfiguration provided to create(map:styleConfiguration:).
You can then call clearRoutePlan() to remove all the primitives that have been added to the map by the module.
Visualization of on-route traffic incidents can be enabled or disabled using areTrafficIncidentsEnabled.
Visualization of the last reachable point on the route, denoted as a marker, can be toggled on or off using isReachableDistanceMarkerVisible.
If a TomTomSDKRoute/Routecontained in the RoutePlan has traffic data available and areTrafficIncidentsEnabled is true, traffic incidents are displayed on the map on top of that TomTomSDKRoute/Route.
If a TomTomSDKRoute/Routecontained in the RoutePlan has reachability information and isReachableDistanceMarkerVisible is true, the reachable range marker is displayed on the map on top of that TomTomSDKRoute/Route.
You can access the list of traffic incidents that are on a route using trafficIncidents(on:).
- 
                  
                  
The list of
TomTomSDKRoute/Routes displayed on the map. During display of aRoutePlan, this list contains the active and alternative routes. This list is empty after callingclear.Important
This is a Public Preview API. It may be changed or removed at any time.Declaration
Swift
var plannedRoutes: [TomTomSDKRoute.Route] { get } - 
                  
                  
The active
TomTomSDKMapDisplay/Route. This is nil before aRoutePlanhas been displayed withdisplayRoutePlan(_:), or after callingclearRoutePlan().setActiveRoute(_:)For setting a different route to be navigated.Declaration
Swift
var activeRoute: TomTomSDKMapDisplay.Route? { get } - 
                  
                  
The selected
TomTomSDKRoute/Route. This is nil before aRoutePlanhas been displayed withdisplayRoutePlan(_:), or after callingclearRoutePlan().selectRoute(_:)For setting a different route to be navigated.Important
This is a Public Preview API. It may be changed or removed at any time.Declaration
Swift
var selectedRoute: TomTomSDKRoute.Route? { get } - 
                  
                  
Configures whether automatic zoom is enabled. The default is true.
Declaration
Swift
var isZoomToRoutePlanEnabled: Bool { get set } - 
                  
                  
Configures whether automatic zoom is enabled. The default is true.
Important
This is a Public Preview API. It may be changed or removed at any time.Declaration
Swift
var zoomToRoutesEnabled: Bool { get set } - 
                  
                  
Enables or disables visualization of on-route traffic incidents. This function can be called at any moment of the
RoutingVisualizationlifecycle. For example, if it is called when no traffic incidents are available (e.g., before displaying a route plan), the new visibility status (either enabled or disabled) is saved and applied later when traffic incidents are available. If it is called when traffic incidents are available (e.g., during the route planning phase), the new status takes effect immediately on the traffic incidents.Declaration
Swift
var areTrafficIncidentsEnabled: Bool { get set } - 
                  
                  
Provides access to traffic visualization functionalities for the routes displayed on the map.
This property allows you to interact with the visualization of traffic incidents on the routes managed by the
RoutingVisualizationinstance. It is useful for customizing how traffic information is displayed and for responding to user interactions with traffic incidents.Important
This is a Public Preview API. It may be changed or removed at any time.Declaration
Swift
var traffic: TrafficVisualization { get } - 
                  
                  
Displays a
RoutePlanon the map. Adds aTomTomSDKRoute/Routeinstance to the map for eachTomTomSDKRoute/Routecontained in the route plan. By default, the first route of the plan is active, but you can set a different route usingsetActiveRoute(_:). Consecutive calls of this method replace the previousRoutePlanbeing displayed. If the providedRoutePlancontains an empty list of routes, then this method does nothing.Declaration
Swift
func displayRoutePlan(_ routePlan: RoutePlan)Parameters
routePlanThe
RoutePlanto be displayed on the map. - 
                  
                  
Gets the list of
TrafficIncidents that are being displayed on a certainTomTomSDKRoute/Route.Declaration
Swift
func trafficIncidents(on route: TomTomSDKMapDisplay.Route) -> [TrafficIncident]Parameters
routeThe
TomTomSDKMapDisplay/Routeto get traffic incidents from.Return Value
The list of
TrafficIncidents on the route, ornilif the route is not inroutes. - 
                  
                  
Set as active a
TomTomSDKMapDisplay/Routefrom the routes displayed on the map. If the providedTomTomSDKMapDisplay/Routeis not a route from theRoutePlandisplayed withdisplayRoutePlan(_:), then this method does nothing.Declaration
Swift
func setActiveRoute(_ route: TomTomSDKMapDisplay.Route)Parameters
routeThe
TomTomSDKMapDisplay.Routeto be active. - 
                  
                  
Selects a
TomTomSDKRoute/Routefrom the routes displayed on the map. If the providedTomTomSDKRoute/Routeis not a route from theRoutePlandisplayed withdisplayRoutePlan(_:), then this method does nothing.Important
This is a Public Preview API. It may be changed or removed at any time.Declaration
Swift
func selectRoute(_ routeId: UUID)Parameters
routeIdThe
UUIDofTomTomSDKRoute.Routeto be selected. - 
                  
                  
Removes all routes and markers added with
displayRoutePlan(_:)from the map and setsactiveRouteto nil.Warning
Do not remove manually the routes or markers which were added duringdisplayRoutePlan(_:)usingTomTomSDKMapDisplay/TomTomMapmethods. It may cause unpredictable behavior.Declaration
Swift
func clearRoutePlan() - 
                  
                  
Removes all alternative routes and corresponding traffic incidents added with
displayRoutePlan(_:)from the map and keeps theactiveRoute.Declaration
Swift
func clearAlternativeRoutes() - 
                  
                  
Adds a
RouteTapObserver, which will inform when a route primitive is tapped.Important
This is a Public Preview API. It may be changed or removed at any time.Declaration
Swift
func addRouteTapObserver(_ observer: RouteTapObserver)Parameters
observerThe
RouteTapObserverto be added. - 
                  
                  
Removes previously added
RouteTapObserver.Important
This is a Public Preview API. It may be changed or removed at any time.Declaration
Swift
func removeRouteTapObserver(_ observer: RouteTapObserver)Parameters
observerThe
RouteTapObserverto be removed. 
        
 
          TomTom SDK for iOS (0.51.1)
        
          RoutingVisualization