I am using OSM (OpenStreetMap) plugin for Qt 5.9, to make route calculation in my desktop application.
I have an OSRM local server running that receives the requests from the application.
I noticed a weird flickering in route calculations, and found out that the request hitting the server side does not have the precise GPS coordinates that I passed to the QGeoRoutingManager::calculateRoute request.
The coordinates are only 3-4 decimal places, while the original request had 7 decimal places for the GPS points.
This imprecision causes a drift in position (causing often placement on the other direction of the road), and thus result in a jump in route calculation.
Is there some way to set the precision?
It's a bug in QT, I had to download the source files, and rebuild it.
The bug is how the routingUrl appends the GPS lat/long in the request URL in the function QGeoRouteParserOsrmV5Private::requestUrl in file qgeorouteparseosrmv5.cpp