Map and route matching
Map matching snaps an inaccurate GPS probe to the road network obtained from map tiles so roads are represented by collections of coordinates. Route matching is a special case of map matching which snaps an inaccurate GPS probe to the given route. The reference route is represented by a collection of coordinates. The route can be calculated using the Routing API or provided manually.
Sample use case: You have a speed radar application that is used when driving. To have a proper user experience, you want to match GPS positions with the road data obtained from map tiles.
Sample use case: You want to match/place the chevron with the right road.
Sample use case: A user plans and displays a route on the map in your app. The vehicle position is being matched along the planned route.
First you need to create a proper MatchingDataProvider
based on your use case.
To create the MatchingDataProvider
from a route:
To create the MatchingDataProvider
for map matcher:
After you obtain the MatchingDataProvider
, you can create and register matcher in the following
manner:
It is important to remove the matcher instance if it is not going to be used. Otherwise memory leaks may occur:
To update map matcher with a new GPS position:
To process map matcher results: