[GRASS-user] mask in PERMANENT affect on other mapsets during reprojection

Glynn Clements glynn at gclements.plus.com
Sun Jun 29 18:35:47 EDT 2008


[CC to grass-dev]

Jarekj wrote:

> The situation is as follows:
> In location GRS mapset PERMANET I have MASK (with projection of 2180 
> based on GRS elipsoid)
> in second mapset let say jarekjaI have map which is to be reprojected to 
> other location (WGS). In that mapset no MASK is present.
> In location WGS mapset PERMANENT  I reporject map from location GRS and 
> I have only fragment allowed by MASK from GRS PERMANENT It is intended 
> or some bug?

The MASK file has to exist in the current mapset in the current
location.

However: r.proj keeps switching the current location between the two
locations. It switches to the source location when opening and reading
the input map, and switches back to the target location when opening
and writing the output map.

Where it looks for the mask is determined by which is the current one
at the point that it looks. This point isn't well defined; it normally
happens as a side effect of some other function.

AFAICT, it uses the source location when looking for the mask. 
However, it doesn't change the mapset; i.e. it uses the current mapset
(not the mapset= value), which may not even exist in the source
location.

This is quite clearly a bug; it should switch mapsets when it switches
locations. At present the code only uses the mapset= value when
opening the input map, overlooking the fact that it is also used
internally, e.g. when looking for the mask.

-- 
Glynn Clements <glynn at gclements.plus.com>


More information about the grass-user mailing list