Re: [GRASS-user] r.hazard.flood does not respect region settings?

2014-04-21 Thread Margherita Di Leo
Hi,

sorry for late answer, I had overlooked this email


On Fri, Mar 7, 2014 at 7:30 AM, Hamish hamis...@yahoo.com wrote:

 maning wrote:

  I'm testing r.hazard.flood and noticed that it computes the flood and
  mti layers on the full region of the elevation raster instead of the
  pre-defined region settings.
 
  The relvant code I found from the r.hazard.flood is this:
 # Detect cellsize of the DEM
  info_region = grass.read_command('g.region', flags = 'p',
  rast =
  '%s' % (r_elevation))
  dict_region = grass.parse_key_val(info_region, ':')
  resolution = (float(dict_region['nsres']) +
  float(dict_region['ewres']))/2
  grass.message(Cellsize : %s  % resolution)
 
  Would it be possible to either respect the current region settings or
  add a flag to choose between the dem region settings or current region
  settings?


 if it needs to detect the original raster cell resolution (usually that's
 only needed to avoid aliasing artifacts in certain situations) it should
 use r.info to get the answer. I'm guessing due to the averaging of the ew
 and ns resolutions avoiding aliasing isn't the case.

 if a module wants to change the region (and almost none should ever do
 that except for g.region by itself) it should set up a temporary
 WIND_OVERRIDE first, in the case of python scripting there is an easy grass
 python function to make that and clean it up at the end. (otherwise
 parallel jobs get their regions messed up mid-run, and region changes
 without you expecting it will)

 I suspect grass.raster's raster_info() is the better way for
 r.hazard.flood to do what it's trying to do now. But also just querying the
 current g.region info without changing anything is probably even better, as
 that is what the other raster commands will expect to use. If the user
 should align perfectly with the input map first, it should be noted in the
 help page for them to do it manually before running the module.


Thanks for suggestion, applied in r59879

Cheers,
madi

-- 
Best regards,

Dr. Margherita DI LEO
Scientific / technical project officer

European Commission - DG JRC
Institute for Environment and Sustainability (IES)
Via Fermi, 2749
I-21027 Ispra (VA) - Italy - TP 261

Tel. +39 0332 78 3600
margherita.di-...@jrc.ec.europa.eu

Disclaimer: The views expressed are purely those of the writer and may not
in any circumstance be regarded as stating an official position of the
European Commission.
___
grass-user mailing list
grass-user@lists.osgeo.org
http://lists.osgeo.org/mailman/listinfo/grass-user

[GRASS-user] r.hazard.flood does not respect region settings?

2014-03-06 Thread maning sambale
Hi,

I'm testing r.hazard.flood and noticed that it computes the flood and
mti layers on the full region of the elevation raster instead of the
pre-defined region settings.

The relvant code I found from the r.hazard.flood is this:
   # Detect cellsize of the DEM
info_region = grass.read_command('g.region', flags = 'p', rast =
'%s' % (r_elevation))
dict_region = grass.parse_key_val(info_region, ':')
resolution = (float(dict_region['nsres']) + float(dict_region['ewres']))/2
grass.message(Cellsize : %s  % resolution)

Would it be possible to either respect the current region settings or
add a flag to choose between the dem region settings or current region
settings?


-- 
cheers,
maning
--
Freedom is still the most radical idea of all -N.Branden
wiki: http://esambale.wikispaces.com/
blog: http://epsg4253.wordpress.com/
--
___
grass-user mailing list
grass-user@lists.osgeo.org
http://lists.osgeo.org/mailman/listinfo/grass-user


Re: [GRASS-user] r.hazard.flood does not respect region settings?

2014-03-06 Thread Hamish
maning wrote:

 I'm testing r.hazard.flood and noticed that it computes the flood and
 mti layers on the full region of the elevation raster instead of the
 pre-defined region settings.
 
 The relvant code I found from the r.hazard.flood is this:
    # Detect cellsize of the DEM
     info_region = grass.read_command('g.region', flags = 'p', 
 rast =
 '%s' % (r_elevation))
     dict_region = grass.parse_key_val(info_region, ':')
     resolution = (float(dict_region['nsres']) + 
 float(dict_region['ewres']))/2
     grass.message(Cellsize : %s  % resolution)
 
 Would it be possible to either respect the current region settings or
 add a flag to choose between the dem region settings or current region
 settings?


if it needs to detect the original raster cell resolution (usually that's only 
needed to avoid aliasing artifacts in certain situations) it should use r.info 
to get the answer. I'm guessing due to the averaging of the ew and ns 
resolutions avoiding aliasing isn't the case.

if a module wants to change the region (and almost none should ever do that 
except for g.region by itself) it should set up a temporary WIND_OVERRIDE 
first, in the case of python scripting there is an easy grass python function 
to make that and clean it up at the end. (otherwise parallel jobs get their 
regions messed up mid-run, and region changes without you expecting it will)

I suspect grass.raster's raster_info() is the better way for r.hazard.flood to 
do what it's trying to do now. But also just querying the current g.region info 
without changing anything is probably even better, as that is what the other 
raster commands will expect to use. If the user should align perfectly with the 
input map first, it should be noted in the help page for them to do it manually 
before running the module.


regards,
Hamish

___
grass-user mailing list
grass-user@lists.osgeo.org
http://lists.osgeo.org/mailman/listinfo/grass-user