MapMatchingEngine
Interface to a Map Matcher Engine.
Map Matcher is a component that tries to match position input (includes GNSS data, existing route) to a point on a map. The output of MapMatchingEngine is a map-matching result that contains an accurate (matched) location along with additional information such as alternative and predicted locations. If no input position is currently available (e.g., the vehicle is in a tunnel and GNSS signal is lost), the old matched location is extrapolated. If there is no previous matched location, the map-matching result is null.
The Navigation SDK provides factories to create map matcher engines. One of them is the com.tomtom.sdk.navigation.mapmatching.tilestore.TileStoreMapMatchingEngineFactory which creates a map matcher engine. This factory creates an engine that attempts to match the position input to the navigation tile data (provided by an online map). To do so, it uses a map-based com.tomtom.sdk.datamanagement.navigationtile.NavigationTileStore. A client application must specify the data store when creating the engine.
To create a com.tomtom.sdk.datamanagement.navigationtile.NavigationTileStore an API key is required. With the key you configure the store by setting up the com.tomtom.sdk.datamanagement.navigationtile.NavigationTileStoreConfiguration:
val navigationTileStoreConfiguration = NavigationTileStoreConfiguration(apiKey = TOMTOM_API_KEY)
val navigationTileStore = NavigationTileStore.create(context, navigationTileStoreConfiguration)
To create a map-matching engine, use the com.tomtom.sdk.navigation.mapmatching.tilestore.TileStoreMapMatchingEngineFactory class:
val mapMatcherEngine = TileStoreMapMatchingEngineFactory.create(navigationTileStore)
To match the location to a position on a map, use the matchLocation function:
val mapMatchingResult = mapMatcherEngine.matchLocation(navigationSnapshot)
To extrapolate the location, use the extrapolateLocation function:
val mapMatchingResult = mapMatcherEngine.extrapolateLocation(navigationSnapshot)
Important: This is a Public Preview API. It may be changed or removed at any time.
Functions
Attempts to extrapolate location based on the navigation snapshot, provided we have a previously map-matched result. The method should be used when there is no GNSS input data available (in the tunnel for example).
Attempts to match location based on the navigation snapshot, provided we have GNSS input data.