[GRASSLIST:9457] Re: r.walk and r.drain, and some other questions
Markus Neteler
neteler at itc.it
Tue Dec 13 20:02:45 EST 2005
On Thu, Dec 08, 2005 at 10:12:35PM -0700, Tom Russo wrote:
> Funny, just today I was starting to think about how to develop a friction
> cost map using an elevation model and other data to compute a least-cost
> path for walking in wilderness areas (i.e. with no established roads or
> trails -- just finding the easiest way to get from here to there given
> the terrain, vegetation, hydrography, etc.). Tonight I updated CVS and found
> a new module called r.walk that appears (from what info there is so far) to be
> very much related to exactly what I was pondering. Marcus, get out of
> my head!
:-)
I also added the description now.
> Anyhow, even without the mysterious and timely arrival of this new module,
strange things happen on this planet...
> I still had a question about how to accomplish something that I'd just
> read about today as a related task in ArcGIS. Perhaps someone can
> help me?
I BCC to a colleague here who is probably thinking about the same
thing. Maybe he'll answer you or to the list.
> The paper I was reading was about computing paths through wilderness areas
> to minimize the work needed to visit a small number (N) of sites starting from
> the N+1th site. They did it by computing a friction surface for the region,
> and generating N+1 cost surfaces (each one the cost surface with a given site
> at origin). They used the N cost surfaces to compute N(N+1) least-cost
> paths from each point to each of the others.
>
> So far so good --- I see that in GRASS I'd have used r.cost if I were using
> their particular friction surface (which I think is far too simplistic as
> it is isotropic), and r.drain to compute a raster version of the least cost
> path. And now that there's an r.walk (if it does what it seems to say it does) I won't have to figure out how to use r.spread and r.spreadpath to do this
> with anisotropic costs due to the terrain.
>
> But *then* they generated a vector network of paths and used network analysis
> to compute the optimum route that minimized the work needed to visit the
> various sites --- a travelling salesman problem, basically, but not only
> trying to pick the right order of things to visit, but the best path
> through the terrain to use to get there with the least effort and time.
>
> I can see how I might generate such a vector network, by using r.to.vect
> on each of the r.drain output rasters and then patching together the
> vectors --- but how in the world could one attach cost columns to the vectors?
> r.drain appears to be able to produce a raster where the pixels in the
> least-cost path are the cost to get from the origin to that pixel, but
> it doesn't seem like there's any way to get that information into a
> vector created from that raster. Hints?
I'm too tired now to clearly read above but I will submit a patch tomorrow
to make r.drain accept a vector path. Maybe it's what you need, maybe not.
> Assuming that there is in fact a way to convert the r.drain raster into
> a vector with costs attached to the line segments, it shouldn't be that
> difficult to do what these folks had done. Thoughts?
>
> --
> Tom Russo KM5VY SAR502 DM64ux http://www.swcp.com/~russo/
> Tijeras, NM QRPL#1592 K2#398 SOC#236 AHTB#1
> "The only thing you can do easily is be wrong, and that's hardly
> worth the effort." -- Norton Juster
>
Markus
--
Markus Neteler <neteler itc it> http://mpa.itc.it
ITC-irst - Centro per la Ricerca Scientifica e Tecnologica
MPBA - Predictive Models for Biol. & Environ. Data Analysis
Via Sommarive, 18 - 38050 Povo (Trento), Italy
More information about the grass-user
mailing list