Hello,
Thanks for your answer. I think this is exactly what I want to achieve (sorry I don’t have much experience in GRASS). However I tried:
r.param.scale in=dem out=terrain param=feature s_tol=0.01
and get the error “Lat/Long location is not supported”. I don’t really understand why this occurs and what I need to do to solve the issue. Any idea?
Thanks a lot for your help!
Emma
On 12/04/2010 11:37 AM, Emma wrote:
><i> Dear all,
</i>> ><i> Is there a way to calculate from the DEM the total perimeter of all
</i>><i> lakes (+reservoirs, etc.)? In other words, I need to calculate the
</i>><i> total length of lake banks and so far could only determine the total
</i>><i> lakes area, which is of no use in this case.
</i>>
From a DEM directly? No, not that I know. How would you determine what
is a lake, and what is a flat land area? How did you get the area??
Furthermore, sometimes lakes have a slight slope...
Maybe have a look at r.param.scale:
r.param.scale in=dem out=terrain param=feature s_tol=0.01
(or some other very small value)
This creates terrain features: peaks, channels, saddles and flat areas.
The s_tol (slope tolerance) sets how flat an area needs to be before
it's classified as flat.
Once you have devised a method to identify the lakes, then convert those
raster areas to a vector, and the v.to.db module will give you the
perimeter.
It would go something like:
v.db.addcol lakes col="perim double percision"
v.to.db lakes opt=perimeter col=perim units=hectares