Using multi-stop navigation
Multi-stop navigation has been introduced with the release of 4.5.0. This allows users to be navigated to multiple stops within a single route.
Querying a multi-stop route
To query a multi-stop route, describe an array of either MPLocation
or MPPoint
on the MPDirectionsQuery
. These points will be visited in order they are defined in, by default. You can enable an optimized ordering of the stops by setting the optimizeRoute
property to true
. If they multi-stop route is optimized, use the orderedStopIndexes
property on the resulting MPRoute
to determine how the original stop ordering maps to the now optimized ordering.
Showing and configuring a multi-stop route on the map
With the introduction of the multi-stop routes. There has also been added new functionality to the MPDirectionsRenderer
to facilitate the new multi-stop routes.
In addition to how a regular route would be shown on the map - multi-stop routes have a default visualization for the stops along the route. Each stop gets assigned a pin marker, with a number indicating its place in the order of stops along the route.
![](https://docsbeta.mapsindoors.com/~gitbook/image?url=https%3A%2F%2F2554025873-files.gitbook.io%2F%7E%2Ffiles%2Fv0%2Fb%2Fgitbook-x-prod.appspot.com%2Fo%2Fspaces%252FYZLXDaaclvaSK6Q7eigW%252Fuploads%252FH9Whh3G2JXQODsFLKJVX%252FScreenshot_20240521-141733.png%3Falt%3Dmedia%26token%3D16fef52e-6040-4b73-8ce3-1eb7e962517a&width=768&dpr=4&quality=100&sign=1db88af2&sv=1)
You can customize the visualization of stops in two ways. Firstly, you can use the default implementation of the MPRouteStopIconProvider
protocol, MPRouteStopIconConfig
. This allows for customization of the pin color, whether the pins should be numbered and if it should show a simple label string.
![](https://docsbeta.mapsindoors.com/~gitbook/image?url=https%3A%2F%2F2554025873-files.gitbook.io%2F%7E%2Ffiles%2Fv0%2Fb%2Fgitbook-x-prod.appspot.com%2Fo%2Fspaces%252FYZLXDaaclvaSK6Q7eigW%252Fuploads%252FmB5ouM1BlnrcLjy4UCGt%252FScreenshot_20240521-140958.png%3Falt%3Dmedia%26token%3D1b0fc58e-aab7-4d60-8ff8-a96035e2c760&width=768&dpr=4&quality=100&sign=57e33a5b&sv=1)
This will apply to all stops along the route. Alternatively, you can choose how each individual stop should be visualized.
This will show the first stop on the route as a red pin, the second a green pin and the third as a blue pin - all numbered accordingly. The last pin will display the label "Third stop".
You can take it a step further and provide your own implementation of the MPRouteStopIconProvider
to either the render
method or the defaultRouteStopIcon
property on the MPDirectionsRenderer
. This way, you may provide your own imagery either for all stops, or for each individual stop.
Last updated