Calulate only modified segments of route

As far as I can see, if I modify a route, a request to calculate the whole route is sent to server. But during reworking a route this causes unnecessary load on the server and unnecessary amount of transfered data (this is especially not useful when working on mobile devices via mobile data transfer).

Therefore I propose to recalculate only the modified segments of the route on the server.

If this behaviour is the same in K3, it should be changed also (I can not check that because I do not know how to debug network on Android, but nevertheless I tag this thread with K3-beta, can be undone if I am wrong).

Example:

  • base is this route with 6 waypoints: Kurviger
  • via chrome debugger / Network I check “Fetch/XHR”
  • deleting waypoint #2 leads to this request (I removed the part after ‘type=json’ to keep it short):
    https://api.kurviger.de/route?point=49.004364%2C12.644577&point=49.026443%2C12.658997&shaping.1=true&point=49.0332%2C12.700882&shaping.2=true&point=49.019235%2C12.701912&shaping.3=true&point=49.004364%2C12.694016&type=json
  • as you can see, the complete route with 5 remaining waypoints is requested
  • but the route segments from start to waypoint 1 and from waypoint 2 (before: waypoint 3) to end have not been modified, so it might be sufficient to request only the route from waypoint 1 to waypoint 2 (before: waypoint 3) and compile the 3 segments (old start segment, new calculated segment, old end segment) locally on the used device

Other case where this optimization could be done are inserting waypoints, moving waypoints, modifying route segment settings, …

Thanks for the proposal. While I agree that it would be nice if this would be done, there are several issues with this, that make this feature very complicated and sometimes not possible at all.

This is something we have considered multiple times before, but it’s not as easy as it might sound :slight_smile:.

1 Like

Thanks for the feedback - I already assumed that it might be a lot of work and cause problems.

1 Like