Hi, I was using graphhopper to plan a hiking tour and i noticed that the elevation data is only taken into account with bicycle but not with Foot .
Here is an example of a steep GraphHopper Route“6.46km will take 1h 17min 1208m 57m”
In reality this tour would be about 3 hours (on steep trails you have an elevation gain of about 400 meter/hour instead of 4km/hour.
Does anyone know what’s holding GraphHopper back from taking into account the elevation data when calculating walking time? And do you know who is dedicated to this part of the GraphHopper project?
I really hope, this feature will be added soon, since the OSM and GraphHopper based maps are simply the best ones for walkers and hikers!
Hi, welcome to our community. And yes, the elevation is not yet taken into account for hiking (like it is done for “bike2”)
Does anyone know what’s holding GraphHopper back from taking into account the elevation data when calculating walking time
It is basically two things: developing this feature and bringing it into production takes lots of time. I.e. we currently concentrate on other features and hope to get contributions e.g. from people like you
Since there is already a duration estimation and the elevation level shown it does look to me (as someome whose biggest code was a “chronogram counter” in PHP) like a minor edit to the code:
Change the formula estimate = distance * 4km/h
by something like this (beware, this is pseudocode)
// Used Variables
UpSpeed=300 // according to DAV-Normative
DownSpeed=500 // according to DAV-Normative
HorizontalSpeed=4000 // (meters/hour) according to DAV-Normative
Distance (Meters, calculated by graphhopper)
Ascend (Meters, calculated by graphhopper)
Descend (Meters, calculated by graphhopper)
//Formula
verticaltime = Ascend / UpSpeed + Descend / Downspeed
horizontaltime = Distance / HorizontalSpeed
if (verticaltime > horizontaltime)
estimate = horizontaltime/2 + verticaltime
else
estimate = verticaltime/2 + horizontaltime
Since I have no experience in a serius project (like graphhopper) I may not be aware of additional work this change would cause. In that case I beg to bear with me.