[GRASS-user] Elevation above a river

Vaclav Petras wenzeslaus at gmail.com
Sun Sep 16 20:31:03 PDT 2018

Hi Shane,

On Fri, Sep 14, 2018 at 5:03 PM Shane Carey <careyshan at gmail.com> wrote:

> Does anyone know is it possible to calculate the elevation above a river
> channel (actual river network that was digitised as opposed to being
> extracted from a DTM) from a DTM and create a polygon from it.
> I need to calculate heights of 1m and 3m above a river channel on both
> sides of the channel and create a polygon from it.

Maybe Height Above Nearest Drainage (HAND) is what you are looking for. It
is basically done using:

r.stream.distance stream_rast=streams direction=drainage
elevation=elevation method=downstream difference=above_stream

See full workflow here:


You will need to do some post processing with r.lake or r.mapcalc and
r.to.vect to get the polygons.

Since you already have the streams and you want to use them, you need to
convert them to raster and then also get stream direction for
r.stream.distance by reclassifying, e.g. with r.mapcalc, output from
something like this:

v.to.rast in=streams output=streams_dir use=dir

which you can see in context here (different hydrology tool):


However, I would be careful about how the streams fit with the terrain you
are using to be sure results make sense.

-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://lists.osgeo.org/pipermail/grass-user/attachments/20180916/ac0ea372/attachment.html>

More information about the grass-user mailing list