More realistic "route simulation" position provider
Open, NormalPublic

Description

RouteSimulationPositionProviderPlugin currently iterates over m_lineString, the positions of the route set as m_lineString = m_marbleModel->routingManager()->routingModel()->route().path();. It does not do any interpolation and therefore the speed varies a lot in between each update depending on how far each point on the route is away from each other. This should be changed to either 1) an interpolated linestring with fixed distances between each point or 2) an interpolated linestring with distances that result in a realistic speed of e.g. a car. To implement 2) the bearing change needs to be taken into account such that the speed is reduced in curves. Note that this is much more complicated to implement.

Test your implementation and submit a review request using Differential here in phabricator.kde.org