nrenner / brouter-web Goto Github PK
View Code? Open in Web Editor NEWWeb client for BRouter, a routing engine based on OpenStreetMap
Home Page: https://brouter.de/brouter-web/
License: MIT License
Web client for BRouter, a routing engine based on OpenStreetMap
Home Page: https://brouter.de/brouter-web/
License: MIT License
First of all, thank you for the great software you have written.
Other web-based routing tools (komoot, openrouteservice) display the amount of unpaved, cobbled, etc percentage of a route. This is a great way of telling how much energy one will need to cycle a planned route beforehand. The mentioned tools also give statistics of how much cycle path the route uses which is obviously an important measure.
I propose to create separate columns in the csv file for the surface and path type, so this statistics is easily generated using excel. If it could be directly integrated into the web-interface, it would be even better.
Hi,
I love BRouter and I love its web interface!! As it is very helpful to use it via smartphone it would be really great to be able to toggle between disabled and enabled drawing mode via a small hitbox in the panel. As you cannot use the hotkeys 'q' and 'd' on the touchscreen this is really beneficial. This would make BRouter Web usable on Android and iPhone.
Together with issue #40 (toggle information panels) or with a resizeable panel BRouter Webs usability on smartphones would significantly increase.
Thank you for your nice service 👍
Currently it is quite irritating to make queries with a custom profile - it is necessary to upload it every time (switch to file manager, find some specific file, open it, copy content, select upload).
Wit saving it in permalink it would be possible to just have bookmark an just use it. It would be also easier to share custom profiles.
Hi!
One feature I am missing quite a lot is, reversing the track.
if you have the following points: Start - A-B-C-D-Finish, clicking the "new" button should trigger the generation of a track: Finish-D-C-B-A-Start
Is is possible to implement?
Thanks Bosdla
It could be great if the BRouter-web was able to search for the points not only by an address or place name, but also by the coordinates in usual formats.
It is very common during solving the routing issues, that users provide coordinates. I have used them indirectly, searching in google maps, locating the place, and searching it in the BRouter-web.
That is not very convenient..
Given this example, it seems that Brouter uses routes that should be ignored since access is prohibited access=no
(on the example, the route is prohibited due to risk of rock falls).
I am not totally sure about that though, so please confirm if I'm wrong here... thanks!
Touch support for controls (stopPropagation for touch events?), see reported issues:
brouter web: Pulldown menu do not work
with default Trekking profile, the BR web allows me to set waypoints, but refuses to calculate even trivial ( short and simple ) routes. ( using latest PaleMoon Browser )
Export and import a route by its waypoints using GPX rte
and rtept
.
Also include no-go areas. For circles, probably as wpt
with radius in name
, using a special naming convention, see readme.txt and BRouter: Via-Points and NoGo-Areas. Also keep line and polygon no-go areas in mind, although drawing is not supported yet (#144).
Extend "Include" section in Export dialog to allow exporting route with or without track and other combinations:
Include [ ] Track
[ ] Route
[ ] No-go areas
[ ] Waypoints
See also:
User requests:
Wünschenswert wäre es, dass man eine GPX Datei erzeugen könnte die nur die "Routen Stützunkte" (VIAS) beinhaltet. Dann diese für eine später Verwendung bzw Änderung der Route oder erzeugen zum erzeugen von Alternativen wieder hochladen bzw. wieder für ein Rerouting verwenden könnte.
https://groups.google.com/d/msg/osm-android-bikerouting/NzTAw2YZnQw/vg3W0assX1MJ
Also including nogos for potential import in BRouter/OsmAnd?
https://groups.google.com/d/msg/osm-android-bikerouting/n0FCP0ixfZ8/qpPbvlp_LJsJ
track + route waypoints?
http://forum.openstreetmap.org/viewtopic.php?pid=556415#p556415
take voice-hints into account
https://groups.google.com/forum/#!msg/osm-android-bikerouting/1ZRP9qzn3-k/xG-g9np0BwAJ
Currently, when mouse moves over the left graphic X-axis distance / Y-axis altitude, the equivalent point is shown on the route as blue point.
But when you do the opposite, it does not work. I would like to use it to see the distance between 2 points on my route so that I can split the route in equivalent steps.
Is this possibility planned.. or did I miss it as #28 :)?
Currently when one opens http://brouter.de/brouter-web, he always get map centered on Frankfurt with zoom level 8 or so, the first thing to do is to move the map over his own position.
It could be great to save the last used position so that when you always bike in the same area, you do not need to re-localize yourself again. I know that permalink can solve this issue, but I'd like to know if a cookie could be saved to store position for default position (like openstreetmap.org does for instance, but also google maps)?
I'd be glad to make a PR for this if you think it's worth it!
edit: a "localize me" button could be nice too, see this demo.
It would be a nice feature for route planning if the ways somehow reflect their "quality". Quality could be some of
Would be possible to refer the cached profile in Permalink similarly as in CSV URL,
and eventually fallback to Trekking one when cache expires ?
BTW, what is cache retention of custom profile ?
I have noticed the CSV download links contains URL reference to used cached custom profile
But Permalinks do not.
I suppose reason is obvious - The profile is cached just temporarily and will not be permanently available to Permalink. But the drawback for that is, that Permalink presented route does not follow the custom profile, but default Trekking profile, so author and recipient of Permalink will see 2 different routes.
I suppose this could be eventually addressed in later BR web versions with feature of saving / restoring / sharing of profiles
Now that brouter supports naviagion instructions, it would be very nice to have an option to display them in brouter-web as well!
Maybe as little symbols which can also be switched off when not needed.
Additionally, a tab in the side panel could show a list with the instructions as clickable items which jump to the junction in the main map view when clicked.
But maybe it's not so easy to implement at the moment, because brouter seems to support instructions only in the gpx output (in various different formats)? I seem to remember that brouter-web uses json format to retrieve the calculated route from brouter? I think turn instructions are not (yet?) available in this format? Does brouter have to be modified to support this?
When comparing different routes, it would be helpful, if the user could see the distance in meter (maybe as tooltip?)
I was successful in configuring BRouter-web to run locally in my Windows. I have added selection of my profiles to the config.js. so I can select them as if they were the standard ones.
See Screenshot of profile selection
All works fine, if I use untouched standard profiles, or my profiles, now "standard" profiles as well.
But if I modify them in the text field and upload them back, so they get , the routing for such profiles never finishes, even if trivially short.
The custom profile with random numeric name is created in the folder specified in BRouter java launch command. So does such custom profile is listed in the command line in the BRouter console window.
What am I doing wrong ?
I run BRouter web as http://localhost:8000/brouter-web/
after running the batch below, placed in server.cmd in BRouter main folder:
@echo off
REM BRouter standalone server
REM java -cp brouter.jar btools.brouter.RouteServer
REM maxRunningTime is the request timeout in seconds, set to 0 to disable timeout
set JAVA_OPTS=-Xmx1024M -Xms512M -Xmn8M -DmaxRunningTime=300
set CLASSPATH=./brouter.jar
start "BRouter server" java %JAVA_OPTS% -cp %CLASSPATH% btools.server.RouteServer .\segments4 .\profiles2 .\customprofiles 17777 1
start "Python file provider" s:\PFiles\Python27-32\python.exe -m SimpleHTTPServer
Leaflet's CDN is down: http://cdn.leafletjs.com/leaflet-0.7.3/leaflet-src.js
Maybe use Cloudflare's instead? (https://cdnjs.com/libraries/leaflet)
The pink line fully covers street names. I noticed that I need separate tab for map to check road names of route.
I propose avoid fully covering road - by making line partly transparent or by offsetting it from road.
Maybe change style only on high zooms.
I prefer old style (I am pretty sure that there was a blue, partially transparent line).
Currently when going on Brouter web, map is always on Germany and you have to zoom on your zone of interest. At least for me, my zone is always my home and so I always start by searching my city location, zoom on my street and then start drawing a new area.
Would it be feasible to store in a cookie (or else?) the latest location when exiting website and restoring it each time Brouter is launched? Or would it be too difficult/not appropriate/another solution is planned?
When modifying the style.css
file, I have to run gulp
manually to get it properly generated even if gulp watch
is running.
I can see in gulpfile.js
various mentions to styles
folder but it is commented: should it be working?
Default website URL is hard to remember and find, while http://brouter.de/ is a working WWW server, but with no real content. It could redirect or simply include current http://brouter.de/brouter-web/ site.
Hi,
Is is possible to specifiy options like subdomains (refer to http://leafletjs.com/reference.html#tilelayer) for custom basemaps overlays in the configuration?
Like...
BR.conf.baseLayers = {'Map name': {url: 'http://{s}.exampleserver.com/?x={x}&y={y}&z={z}', options: {subdomains: '0123', maxZoom: 18} } };
I think about using the following options:
Greetings
I tried to upload the sample profiles and I get an "Upload error:" without any further explanation.
Browser is Safari Version 8.0 (10600.1.25.1)
brouter-web is alpha3
I noticed yesterday evening, an update of the data files at http://brouter.de/brouter/segments3/ from 23.07 to 30.07.
I mapped several cycleways in between, at the 27.07. for example. But I cannot get a route on this way. I moved also a main road a bit. You can see the brouter graph follows an old version.
Currently there is no feedback when a routing request fails, e.g.:
First of all, I would like to thank you for this great project! I saw the current commits and was wondering when/how often the demo website (http://brouter.de/brouter-web/) is updated to a new revision?
Thank you!
Peter
I'm playing around with a custom routing profile based on the fastbike preset. I've extended it with an additional cost for stop signs and traffic lights but I'm having difficulty with debugging it.
Is there any way I can see the initialcosts for nodes? They don't appear to show up anywhere in the CSV export.
Hi,
I tested this alpha version with some success, and it's really fun to build a track by interactively moving via point and no-go areas while seeing the elavation profile evolve.
However, I experience some technical problems in the user-interface that seem to correlate with java-script errors I see in the error-console:
Fehler: L.GPX is not a constructor
Quelldatei: file:///c:/brouter-web/js/router/BRouter.js Zeile: 47
Fehler: routing.routeAllSegments is not a function
Quelldatei: http://nrenner.github.io/brouter-web/js/index.js Zeile: 68
Fehler: i[n].action is undefined
Quelldatei: http://cdn.leafletjs.com/leaflet-0.7/leaflet.js Zeile: 6
Another problem is that index.html has relative references to "bower_components", which is not part of the repo (other than the js and css objetcs), so for beeing able to debug it locally these links need to be prefixed by http://nrenner.github.io/brouter-web
regards, Arndt
Dear Norbert,
for me it would be very useful if the elevation display could show the gradient in percent. Maybe a good position would be below the actual height. In addition, it would also be useful if the route statistics would show the maximum gradient.
The point is that I have a limited development with my gear hub and "cost" and "mean cost" don't tell me if there is a huge slope I cannot climb with my equipment!
Yes, I know I can adapt the uphill cost but sometimes it is difficult to find an adequate alternative route so at least I want to be able to judge the calculated route!
What do you think?
Thanks and best wishes,
Bernd
It makes #10 even worse.
Is it posiible to add tag smoothness (http://wiki.openstreetmap.org/wiki/Pl:Key:smoothness) to supported tags for ways?
See also #36.
It is especially irritating for people that reached location without using permalink or significantly changed location after using permalink - as reloading page will reset location.
I now noticed that it is possible to click on marker to remove it - but it is not obvious.
It would be better to redirect it to some useful page
Already had Leaflet.Spin integrated but disabled it because often it would not stop after calling loaded event.
Need to further investigate or search for an alternative.
Brouter-web with older BRouter 1.4.1 is not compatible with updated syntax of the latest BRouter release 1.4.2, if a profile uses recently implemented operators like e.g. SUB or LESSER.
It would be good to get the BRouter updated.
On mobile devices the information panels on the left side (options, route, download...) take 100% of the screen. I saw it on IPhone 5 and Nexus 4.
A button respectively a http parameter which toggles this information panels off and on could be helpful.
Image the current situation: you send a complicated route to somebody via permalink via mail on his mobile device, but the recipient cannot use it, because he cannot see any map tiles.
Johannes
OpenTopoMap has zoom limit 15.
For higher zooms, it could be more useful to just zoom Z15 tiles, or refuse to zoom, instead of providing blank map.
this Blank Z16 already does have greyed out the zoom in, so it kicks in just 1 level late.
still valid? Look at abrensch/brouter#49
I think, that it could be useful to display the mean route costfactor = total cost / length, instead of, or rather in parallel to the currently displayed total cost.
In context of profile preferences,
the Total cost is an extensive, length dependent parameter, an absolute measure of route optimality, if a user modifies the routing by alternatives, nogos or viapoint. But is say nothing about the route quality in profile context, unless related to the length.
While the Mean costfactor is an intensive, length independent parameter, a measure of route quality, according to profile preferences. Note that it is not exactly the mean costfactor, rather effective mean cosfator, as uphill/downhill cost is involved as well,
Hi,
Is there any way to contact you Norbert? :) I would be greatful if you could contact me at [email protected] . Thank you in advance!
Best regards,
Hello
this is more a feature request: like in GPSies possible, in the brouter-web there is strongly a button missing to delete just the last point (or I am not finding it).
It is possible to delete the whole track, and it is possible to move the last point, but not possible to delete the last point.
Possible to implement?
Thanks
frank
I have this route.
With profile fastbike this has a cost of 3217.
It traverses a few ways tagged as highway=track, tracktype=grade2 with no additional tags: ways 140423237, 277710748 and 140423241.
If I read the profile of fastbike right, an unpaved grade2 has cost 10, paved (not unpaved) grade2 has cost 3
switch tracktype=grade2 switch isunpaved 10 3
When I edit the profile and change this line to switch tracktype=grade2 switch isunpaved 100 3, the route is the same and the cost also stays on 3217. If I do switch tracktype=grade2 switch isunpaved 10 3.1, the cost goes to 3286.
For some reason, the tracks are seen as paved?
Or does the switch not work for some reason?
A declarative, efficient, and flexible JavaScript library for building user interfaces.
🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.
TypeScript is a superset of JavaScript that compiles to clean JavaScript output.
An Open Source Machine Learning Framework for Everyone
The Web framework for perfectionists with deadlines.
A PHP framework for web artisans
Bring data to life with SVG, Canvas and HTML. 📊📈🎉
JavaScript (JS) is a lightweight interpreted programming language with first-class functions.
Some thing interesting about web. New door for the world.
A server is a program made to process requests and deliver data to clients.
Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.
Some thing interesting about visualization, use data art
Some thing interesting about game, make everyone happy.
We are working to build community through open source technology. NB: members must have two-factor auth.
Open source projects and samples from Microsoft.
Google ❤️ Open Source for everyone.
Alibaba Open Source for everyone
Data-Driven Documents codes.
China tencent open source team.