[OSGeo-Brasil] grass no python

Marlon Pirchiner preinh em gmail.com
Quarta Agosto 20 09:07:37 PDT 2014


s.a.
http://grasswiki.osgeo.org/wiki/GRASS_Python_Scripting_Library#Path_to_GISDBASE

On Aug 20, 2014, at 13:05, Marlon Pirchiner <preinh em gmail.com> wrote:

> duas coisas.
> 
> a primeira, é que o qgis, com suas excelentes ferramentas de processamento raster, tem uma inteface de automação em python
> bem simples de usar.
> 
> a segunda, quando falei sobre as variáveis, tinha a ver com o ajuste do ‘ambiente’ inerentes ao grass (desconsiderando possiveis más configurações dos paths e binários.
> 
> imagino que esteja seguindo um desses ‘esquemas’ de trabalho. repare nas configurações das variáveis de ambiente.
> como disse o miranda, a variável ‘element’ (seu input file) está vindo vazia. provavelmente porque /caminho/para/o/seu/arquivo/imagem
> não seja exatamente /caminho/para/o/seu/arquivo/imagem em PERMANENT(DEFAULT_MAPSET) imagem em PERMANENT(DEFAULT_MAPSET) tendo ajustado uma variavel ex gis_database_directory(gisdb) como sendo somente o  /caminho/para/o/seu/arquivo.
> 
> dois exemplos em que vale prestar atenção nas primeiras porções dos snippets:
> http://grasswiki.osgeo.org/wiki/Working_with_GRASS_without_starting_it_explicitly (python e bash)
> https://code.google.com/p/postgis-grass-r-py/wiki/0003_01_PythonForGrassGis
> 
> espero ter ajudado
> 
> [   ]s e boa sorte
> 
> marlon
> 
> On Aug 19, 2014, at 20:36, Rodrigo Koblitz <rodrigokoblitz em yahoo.com.br> wrote:
> 
>> Buenos,
>> estou trabalhando com muitas imagens. Fazer manualmente cada uma tomaria tempo demais
>> 
>> abs,
>> Koblitz
>> 
>> 
>> Em Terça-feira, 19 de Agosto de 2014 9:06, Marlon Pirchiner <preinh em gmail.com> escreveu:
>> 
>> 
>> Rodrigo, 
>> 
>> Nem parei pra ler o código, de modo que a resposta, se ajudar, deve ser no sentido de vc entender melhor como organizar seus arquivos.
>> 
>> Mas sem entender os conceitos de GISDBASE, LOCATION e MAPSET vc praticamente nao trabalha no grass. Sinto dizer mas isso é menos python e mais grass…
>> 
>> http://grasswiki.osgeo.org/wiki/Working_with_GRASS_without_starting_it_explicitly
>> 
>> pra dar uma facilitada na vida, já pensou em rodar o grass do qgis?!?
>> http://qgis.spatialthoughts.com/2012/01/setting-up-working-grass-environment-in.html
>> 
>> [   ]s
>> 
>> e boa sorte!
>> 
>> 
>> On Aug 19, 2014, at 3:11, Rodrigo Koblitz <rodrigokoblitz em yahoo.com.br> wrote:
>> 
>>> Olá Daniel,
>>> Obrigado pela atenção.
>>> 
>>> Então, acho que estou tendo algum problema com o acesso ao grass. O tifref e tifout são strings de caminhos para os arquivos.
>>> Coloquei a função aqui:
>>> http://pastebin.com/Dnz9g6P1
>>> 
>>> Acho que o 'gsetup.init(gisbase,gisdb, location, mapset)' que estou tentanto acessar está com algum problema.
>>> 
>>> Temporariamente estou resolvendo entrando direto no ambiente grass (grass -text) e a partir daí vou para o shell do python. Então fico dando os.system ('commando do grass') e vou caminhando.
>>> Esse erro é bem incomum. O google mostrou muito poucas coisas...
>>> mais uma vez obrigado,
>>> abs,
>>> Koblitz
>>> 
>>> 
>>> 
>>> Em Segunda-feira, 18 de Agosto de 2014 10:28, Daniel Araujo Miranda <miranda.dam em dpf.gov.br> escreveu:
>>> 
>>> 
>>> Olá Rodrigo,
>>>   Não mexo com o Grass, mas é possível que uma das suas variáveis 
>>> esteja em branco. Dê um print no tifref e no tifout.
>>> 
>>>   No código fonte, o único lugar em que eu achei essa mensagem de erro 
>>> foi no get_window.c. Se a mensagem vier dessa função mesmo, isso quer 
>>> dizer que o nome do "element" estava vazio (vide primeiro %s na mensagem 
>>> de erro). Estou supondo que esse parâmetro deveria ter o mesmo valor da 
>>> variável "tifref".
>>> 
>>> 
>>> Segue o trecho:
>>> 
>>> 
>>> get_window.c
>>>   ...
>>>   107 void G__get_window(struct Cell_head *window,
>>>   108                    const char *element, const char *name, const 
>>> char *mapset)
>>>   109 {
>>>   110    FILE *fp;
>>>   111
>>>   112    G_zero(window, sizeof(struct Cell_head));
>>>   113
>>>   114    /* Read from file */
>>>   115    fp = G_fopen_old(element, name, mapset);
>>>   116    if (!fp)
>>>   117        G_fatal_error(_("Unable to open element file <%s> for 
>>> <%s@%s>"),
>>>   118                        element, name, mapset);
>>>   119
>>>   120    G__read_Cell_head(fp, window, 0);
>>>   121    fclose(fp);
>>>   122 }
>>> ...
>>> 
>>> Boa sorte.
>>> 
>>> Abraço,
>>> Miranda
>>> 
>>> Em 15/08/2014 19:50, Rodrigo Koblitz escreveu:
>>> > Buenos,
>>> > estou tentando rodar um script do grass no shell do python mas não estou
>>> > conseguindo importar o .tif para o ambiente grass.
>>> >
>>> > abrindo ok o ambiente no shell do python, mas dequalquer forma que eu tente:
>>> > os.system('r.in.gdal input=%s output=%s --overwrite -k -e'%(tifref,tifout))
>>> > g.run_command('r.in.gdal', flags='e', input='%s'%tifref, output='%s'%tifout)
>>> > script.parse_command('r.in.gdal', flags='e', input='%s'%tifref,
>>> > output='%s'%tifout)
>>> >
>>> > o resultado é o mesmo:
>>> > ERROR: Unable to open element file <> for <DEFAULT_WIND em PERMANENT>
>>> >
>>> > alguém já passou por isso?
>>> > idéias?
>>> >
>>> > abs,
>>> > Koblitz
>>> 
>>> >
>>> >
>>> > _______________________________________________
>>> > Brasil mailing list
>>> > Brasil em lists.osgeo.org
>>> > http://lists.osgeo.org/mailman/listinfo/brasil
>>> 
>>> >
>>> 
>>> 
>>> _______________________________________________
>>> Brasil mailing list
>>> Brasil em lists.osgeo.org
>>> http://lists.osgeo.org/mailman/listinfo/brasil
>> 
>> 
>> 
> 

-------------- Próxima Parte ----------
Um anexo em HTML foi limpo...
URL: <http://lists.osgeo.org/pipermail/brasil/attachments/20140820/69d53259/attachment-0001.html>


More information about the Brasil mailing list