[GRASS-user] r.mask: no MASK created when using many categories
Michel Wortmann
wortmann at pik-potsdam.de
Fri Apr 7 01:15:01 PDT 2017
Hi Mira,
I find a more elegant way to create a mask from an arbitrarily long list
of raster categories would be to use r.reclass where you can use an
input file:
r.reclass input=subcatchments output=MASK rules=mask.dat
and in mask.dat you list your categories:
12=1
23=1
10=1
...
1200=1
Might help, although the problem seems to have been solved.
Michel
On 04/05/2017 03:59 PM, Mira Kattwinkel wrote:
> Dear Micha
>
> thanks for your suggestion.
>
> Actually, that's is what I usually do. However, I am not really
> interested in the catchment of the endpoints of the edges but in
> sampling points lying at the streams. If a point lies within the dem
> cell of the outlet, which can be a confluence of two streams, the
> coordinate approach will result in the catchment of both confluences,
> although the point lies just at one of them. That's why I came up with
> the idea of summing up the subcatchments of only the relevant branch
> of the stream network.
>
> Maybe there are other thoughts on that?
>
> Mira
>
>
> On 05/04/17 15:25, Micha Silver wrote:
>>
>>
>>
>> On 04/05/2017 03:22 PM, Mira Kattwinkel wrote:
>>> Dear List,
>>>
>>> I am using r.mask to create a new raster map that only contains
>>> certain categories given in 'maskcats'. Then, I use r.mapcalc to
>>> save the map under a new name and (to be on the save side) delete
>>> the MASK with r.mask flag '-r'. I do this in a loop and it works
>>> fine until a case when the number of categories to combine is 213
>>> (trail and error lead to 106 as the maximum number that works fine).
>>> Flag 'verbose' gives the message that a MASK was created, but none
>>> is there. The problem arises in both cases when I directly use Grass
>>> or through R using execGrass.
>>>
>>> Is there a limit in the number of categories that can be passed to
>>> r.mask? I did not find any hint about that. Additionally, I wonder
>>> why there is no error message but in the contrary one that tells me
>>> that a MASK was created even when it failed.
>>>
>>> In case the details are important (or if anybody has a better idea
>>> how to achieve what I want): I have a raster map of subcatchemts
>>> belonging to stream segments created with r.stream.basins. For the
>>> endpoints of segments, I want to combine these subcatchments to a
>>> total catchment raster map containing all upstream catchments.
>>>
>> If you have the endpoint of of the outlet segment, you might use that
>> as the "coordinates" parameter to r.stream.basins to create a single
>> large drainage basin. Then use that as the mask to get out the
>> subcatchments.
>>
>>> Thanks a lot,
>>>
>>> Mira
>>>
>>>
>>
>> --
>> Micha Silver
>> cell: +972-523-665918
>
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://lists.osgeo.org/pipermail/grass-user/attachments/20170407/0837ef08/attachment.html>
More information about the grass-user
mailing list