5

I need to calculate the mean slope of roads between nodes with QGIS. I have a DEM and a vector (PostGIS) with the roads, nodes are additionally displayed as point shape and also contain an elevation field derived from DEM:

enter image description here

I am looking for the mean slope between those nodes which are connected with a line.

As there are many roads to calculate (see the picture below), I need a workflow which processes all calculations at once.Either output as raster (with slope values on the roads and NoData for others) or shapefiles containing the the slope are useful for my purpose.

How can I do this?

enter image description here

I have a ArcGIS solution in mind (3D Analyst / interpolate shape), but I'd prefer a QGIS / open source solution!

I tried the Profile Tool Plugin, which only processes one line at once. Further, I was thinking of using a slope raster and failed because of the direction of the slope (contour line streets).

I was looking for other approaches, but it didn't work or I didn't understand them, e.g.:

2

You can do it with a python script. Basically, for each line, you iterate the nodes. for each pair of nodes, you sample the elevation from the raster, and then you calculate the slope.

My plugin "Walking time", uses a very similar approach. maybe you can read its code and adapt:

https://github.com/SrNetoChan/WalkingTime/blob/master/walkingtime.py#L160

  • yeah I tried your pretty cool plugin! But unfortunately I don't use QGIS enough to understand python. – Kevkev770 Feb 7 '18 at 12:17

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service, privacy policy and cookie policy

Not the answer you're looking for? Browse other questions tagged or ask your own question.