Locus Map - forum

Support => Troubles & Questions => Topic started by: jknut on April 28, 2020, 15:19:10

Title: Route Planner takes incorrect loop / turn
Post by: jknut on April 28, 2020, 15:19:10
When trying to route between the two following poins, I get an incorrect roundabout loop.  See attached image "Roundabout loop.jpg"  I would expect something like the attached image "Expected.jpg" which I drew using "draw manually" at the turn.

Does anyone have any suggestions?  I tried both BRouter and GraphHopper along with various routing profiles, but all gave the roundabout loop with incorrect turn.

Point 1:
41.08228, -74.23585

Point 2:
41.08489, -74.23561
Title: Re: Route Planner takes incorrect loop / turn
Post by: menion on April 28, 2020, 15:29:16
Hello,
unfortunately roads draw in OpenStreetmaps are not correctly connected as you may see here: https://www.openstreetmap.org/edit#map=18/41.08389/-74.23751 . So this issue needs to be fixed to compute the route correctly.
Title: Re: Route Planner takes incorrect loop / turn
Post by: freischneider on April 30, 2020, 09:02:51
And do not forget. When the data is corrected in OSM. Do the routing data of BRouter have to be updated (with GraphHopper?) BRouter has new data every 7 days. Correct the OSM, max. Wait 7 days and then renew routing data. Unfortunately, this is not automatic.
It is therefore very important that the users maintain the OSM data and enter it correctly.
Title: Re: Route Planner takes incorrect loop / turn
Post by: poutnikl on April 30, 2020, 11:45:19
.......BRouter has new data every 7 days. Correct the OSM, max. Wait 7 days and then renew routing data. Unfortunately, this is not automatic.......

This is not true anymore.

BRouter has already implemented daily differential updating of rd5 files not older than 8 days.  For rd5 files older than 8 days, the  download of the full updated file has to be done as was done before. The updating must be still trigerred manually by the user in BRouter download manager.

For illustration, my home BRouter rd5 square  E15_N45 has size about 80 MB.   rd5diff files for rd5 1-8 days old have sizes  1-3.5 MB. See E15-E45 rd5files (http://brouter.de/brouter/segments4/diff/E15_N45/)

The 8 day diff update limit is IMHO  reasonable trade off between downloaded data amount and processing time, as rd5diff file dowload is much faster than the following data processing. For longer intervals, like updating after few weeks, the processing could take longer than the full file downloading.

For advanced users, already downloading rd5 files manually, or by scripts as my getmap.sh (https://raw.githubusercontent.com/poutnikl/Brouter-profiles/master/getmap.sh) or similar , diff updating is not as straight forward.  For the diff updating out of BRouter application, it must use brouter.jar java application. e.g. on Linux or Windows.. See for more at BRouter Github issue Checksum of segment files #234 (https://github.com/abrensch/brouter/issues/234)   

It is possible to do so directly on Android device as via my private improved getmap script, but the additional prerequisites to the ones for getmap.sh is installed java and proot in termux (some details also in the above Github link). I can provide the script on request, but it is not for everybody. I am not sure, if anybody ever used my original full downloading script.

As an illustration, this is the working proof of concept, before updating of my getmap script:
Code: [Select]
md5 = $(md5sum -b E15_N45.rd5 | head -c32)
wget -N "http://brouter.de/brouter/segments4/diff/E15_N45/$md5.rd5diff"
proot -0 java -cp brouter.jar btools.mapaccess.Rd5DiffTool E15_N45.rd5 $md5.rd5diff E15_N45.new.rd5
Title: Re: Route Planner takes incorrect loop / turn
Post by: freischneider on April 30, 2020, 18:45:01
Now that's too much IT for me. I load the data every 4 weeks via the app.
Does that mean I always have max. Are 1 day old. If I download on the 13th, will I have dates from the 12th?
Title: Re: Route Planner takes incorrect loop / turn
Post by: poutnikl on April 30, 2020, 18:59:03
Well, the IT is in the 2nd part only. :-) I have posted it for general audience, as some may take it as useful info, others not so much.

Yes, the BRouter servers take from OSM the daily difference files, process them and make the related daily BRouter differential and full updates.

You can check yourself:
http://brouter.de/brouter/segments4/

For usual users nothing changes, they just notice in BRouter download manager less of data downloading and more of data processing.

The daily/frequent  updating makes sense mainly on the current data square only a/o if one impatiently waits for OSM update propagation.

Or, if one wants/needs to cut down the updating network data for whatever reason.

Sent from my Xiaomi MI A2 / Android 10, via Tapatalk