[GRASS-dev] [GRASS GIS] #3468: r.drain: replace with new r.path, support multiple directions
GRASS GIS
trac at osgeo.org
Tue Dec 19 14:02:57 PST 2017
#3468: r.drain: replace with new r.path, support multiple directions
-------------------------+---------------------------------
Reporter: mmetz | Owner: grass-dev@…
Type: enhancement | Status: new
Priority: normal | Milestone: 7.5.0
Component: Raster | Version: svn-releasebranch74
Keywords: r.drain | CPU: All
Platform: All |
-------------------------+---------------------------------
r.drain is a clone of r.fill.dir, with the added functionality to extract
a path from a given start point to the nearest outlet, using internally
calculated directions. Later on, the option to supply a direction map was
added in order to support output from r.cost, r.walk, and r.watershed.
This code duplication should be avoided. A new module r.path could be
added that uses a direction map with optional surface map to trace paths.
r.drain could then be converted to a script calling r.path. If no
direction map is supplied, r.fill.dir can be used by r.drain to create a
direction map.
r.fill.dir uses a bitmask to encode multiple directions from a single
cell, as described by Jenson and Domingue (1988). These multiple
directions are internally resolved to find the main (single) flow
direction which is then recoded to a standard direction format using
degrees. This bitmask to encode multiple directions from a single cell
could be used and exposed by various other modules, i.e. r.cost, r.walk,
r.watershed, to be used as input for r.path. As a result, the least costly
path from a single start point to a single stop point can split and merge
repeatedly (see attached multiple-directions-path.png).
--
Ticket URL: <https://trac.osgeo.org/grass/ticket/3468>
GRASS GIS <https://grass.osgeo.org>
More information about the grass-dev
mailing list