Hi, Thanks again. Since i use GRASS 7.0, it will not work there. I do not think it can either be installed in GRASS for Windows through Add-on extensions. What about using grass.mapcalc to integrate each viewshed if there is a method of handling variables in it? If not how about using r.series with sum? Your advice is appreciated since i am pretty new to GRASS.
On Tue, Jan 8, 2013 at 9:19 PM, Leonidas Liakos <[email protected]>wrote: > Do you need cumulative viewshed analysis? > Maybe r.cva is for you: > http://www.ucl.ac.uk/~tcrnmar/GIS/r.cva.html > > ------------------------------ > *Απο:* Brian Sanjeewa Rupasinghe <[email protected]> > *Προς:* Anna Kratochvílová <[email protected]>; > [email protected] > *Στάλθηκε:* 2:45 μ.μ. Τρίτη, 8 Ιανουαρίου 2013 > *Θέμα:* Re: [GRASS-user] Using a variable inside GRASS commands with > Python code/ grass.mapcalc > > Hi, > > Many thanks. It worked for me. Then i have a similar problem in > GRASS.mapcalc. What i need next is to add viewshed of each observer > location cumulatively while looping through the observer locations in order > to have final integrated viewshed analysis map. So i used the following > command in Python (some code ommitted) > > for i in: > grass.run_command('r.viewshed', input = rinput, output = 'viewshed', > coordinate = [x,y], obs_elev = oelv, tgt_elev = th, memory = 4098, flags = > 'b', overwrite = True, quiet = True) > > grass.mapcalc("viewshed_cum = viewshed + viewshed_cum", overwrite = > True, quiet = True) > > It seems that expressions like sum = c + sum does not work inside > grass.mapcalc.Is <http://grass.mapcalc.is/> there any alternative or > other way around to get this done? I am using GRASS 7 in Windows 7. > > Cheers, Brian > > On Tue, Jan 8, 2013 at 1:25 PM, Anna Kratochvílová > <[email protected]>wrote: > > Hi Brian, > > On Tue, Jan 8, 2013 at 6:51 AM, Brian Sanjeewa Rupasinghe > <[email protected]> wrote: > > Hi all > > > > I am generating viewshed of each observer location by iterating through a > > set of observer coordinate file through > > Python code in Windows 7 . Below is the python command used in grass for > > each iteration. According to this, each time > > loop iterates, output is overwritten with the same name. Now what i need > is > > to keep each output of all the observer locations. For this, i need to > > concatanate output name (i.e. 'viewshed' with loop index i which will be > > 'viewshed' + str(i) ). How is that possible within > > this grass.run_command? > > > > just set a variable within each loop and use it in the run_command: > for i in ... : > out = 'viewshed' + str(i) > grass.run_command('r.viewshed', input = rinput, output = out, ...) > > > Regards, > Anna > > > grass.run_command('r.viewshed', input = rinput, output = 'viewshed', > > coordinate = [x,y], obs_elev = oelv, tgt_elev = th, memory = 4098, flags > = > > 'b', overwrite = True, quiet = True) > > > > Cheers, Brian > > > > _______________________________________________ > > grass-user mailing list > > [email protected] > > http://lists.osgeo.org/mailman/listinfo/grass-user > > > > > > _______________________________________________ > grass-user mailing list > [email protected] > http://lists.osgeo.org/mailman/listinfo/grass-user > > >
_______________________________________________ grass-user mailing list [email protected] http://lists.osgeo.org/mailman/listinfo/grass-user
