[GRASS-user] pyhton script-how to get the pixel value from r.what
    Glynn Clements 
    glynn at gclements.plus.com
       
    Fri Mar 30 13:09:41 EDT 2012
    
    
  
Adam Dershowitz, Ph.D., P.E. wrote:
> It looks like the grass.read_command returns a string, and you are then trying to do math on it.
> You probably want something like:
> 
> import string
> ts_f= grass.read_command("r.what",input=Ts, east_north= "%s,%s" % (eastF,northF))
Note that you can pass lists and tuples directly, e.g.:
ts_f= grass.read_command("r.what", input=Ts, east_north=(eastF,northF))
read_command etc will perform the necessary conversion.
> print "Ts pixel frio=",ts_f
> ts_values=string.split(ts_f,'|')
> 
> I am not sure which value you then want.  Probably ts_values[3]:
> 
> lambda_f=(2.501-(0.00236*(ts_values[3]-273.15)))*1000000
That still doesn't solve the issue of trying to perform arithmetic on
strings; use int() or float() to convert strings to numbers, e.g. 
lambda_f=(2.501-(0.00236*(float(ts_values[3])-273.15)))*1000000
-- 
Glynn Clements <glynn at gclements.plus.com>
    
    
More information about the grass-user
mailing list