I have a stream network and for that network, I want to find the points at regular intervals which lie at 10m distance perpendicular from the stream.The final goal is to find the buffer of that 10m elevation around the stream.

I have tried hub distance, elevation, point sampling plugins, etc. One of my approaches was to convert the DEM to points then convert the stream network to points. Then I used point sampling to attach the stream points their respective elevation information. Now I want to make a line between the stream points and DEM points based on higher elevation and perpendicular distance.

Is there any plugin or code which can help to achieve? Also, I think that there must be a better way to find higher elevation info from Vector (Stream) and Raster (DEM) layer and the buffer if you can point to any such plugin/code/algorithm that will be a great help. I need to automate the process as well.

Sample image for reference:- Expected Output

  • Maybe you can detrend your surface and then create a 10m contour. gis.stackexchange.com/questions/11440/…
    – GBG
    Mar 5, 2019 at 0:19
  • Search for height above nearest drainage, maybe.
    – FelixIP
    Mar 5, 2019 at 0:35
  • Thanks for the insights. One possible solution can be:- 1)Find Contours 2)Divide Stream Layer into points 3)Draw Perpendicular line from the above points 4)Intersect the line with contour at only higher 10m elevation Now I need to figure out how to automate the above process.
    – Swapnil
    Mar 5, 2019 at 11:56

1 Answer 1


Here are some suggestions that might get you on track:

There is a GRASS GIS module v.transects that creates transect lines at a specified distance, perpendicular to a line feature. You can run it from the Processing Toolbox in QGIS.

Next, I suggest you install the "RiverGIS" plugin. This plugin helps to prepare all the geography data necessary for HEC-RAS (flood modeling) More info here. Among the procedures in RiverGIS, there is "Cross section attributes", where the module calculates elevations of the cross sections from a DEM layer. You will use the transects created above as input to this procedure. You'll find this process under the Plugin menu "RAS Geometry -> XSCutline Attributes". You specify a DEM file, and the plugin extracts elevations along each cross section cutline.

I should mention that RiverGIS requires an active PostGIS connection where all the prepared HEC-RAS geography data are stored. So you'll have to go thru the steps of installing PostgreSQL and the PostGIS extension. But this is worthwhile anyway, and RiverGIS will then help with several flood modeling jobs.

  • Thanks for the input @Micha. I was successful in performing v.transects and installing RiverGIS with PostGIS connection. Can you please elaborate a bit on "cross-section attributes" part?
    – Swapnil
    Mar 19, 2019 at 8:54
  • I've added an extra few comments
    – Micha
    Mar 20, 2019 at 19:04

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service and acknowledge you have read our privacy policy.

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