Add optimization with fixed stops sequences¶
Add an optimization with fixed stops sequences set (the stops from a sequence will be visited in the fixed specified order) and display the solution on the map.
In this example there are 2 fixed stops sequences: [2,8,6] and [1,3].
Use case¶
Create an optimization where some stops must be visited in an exact order.
How to use the sample¶
First, get an API key token, see the Getting Started guide.
Download the Maps & Navigation SDK for C++ archive file for Linux or WindowsWhen you run the sample, an optimization will be saved, the solution will be returned and showed on the map. In the solution, you can see that stops 2,8,6 and 1,3 will be visited one after another exactly in this order.
How it works¶
Create a
vrp::StopList
and add the stops to it.Create a
vrp::ConfigurationParameters
and set the fixed stops sequences to it.Set the
vrp::StopList
and thevrp::ConfigurationParameters
to avrp::Optimization
object.Create a
ProgressListener
,vrp::Service
andvrp::RouteList`
, in which the solution will be returned.Call the
addOptimization()
method fromvrp::Service
using the list from 4.), thevrp::Optimization
from 3.) and the progress listener.Once the operation completes, the list from 4.) will contain the solution of the optimization.
To display the stops and route on the map¶
Create a
MapServiceListener
,OpenGLContext
andMapView
.Create a
LandmarkList
,CoordinatesList
andPolygonGeographicArea
.Instruct the
MapView
to highlight theLandmarkList
from 2.) to print the stops.Instruct the
MapView
to center on thePolygonGeographicArea
.Create a
MarkerCollection
of typePolyline
and add the route’s shape to it.Set the newly created
MarkerCollection
in the markers collections of the map view preferences.Allow the application to run until the map view is fully loaded.