Modelação Geográfica, Cidades e Ordenamento do Território

Grupo integrado no e-GEO – Centro de Estudos de Geografia e Planeamento Regional

SEXTANTE na Consola de PyQGIS

Leave a comment

Por vezes, da mais jeito correr um algoritmo da linha de comando e gerar resultados em modo bulk, do que estar constantemente a preencher dialogos e a visualizar ficheiros de resultados.
Os utilizadores da consola de python do QGIS, podem aceder ‘a API do SEXTANTE, escrevendo o seguinte comando:

>import sextante

O SEXTANTE expoe todos os seus algoritmos (incluindo os criados pelo utilizador) na interface de Python. Para listar todos os algoritmos, e verificar os nomes internos sobre os quais estao guardados, ‘e necessario escrever:

>sextante.alglist()

Por exemplo modelo de habitat descrito neste post, aparece listado como : “modeler:gam_habitat_model.”

Podemos chama-lo, usando o metodo runalg(), passando os respectivos parametros. Para uma descricao completa dos parametros de input e output, podemos usar o metodo alghelp():

>sextante.alghelp("modeler:gam_habitat_model.")
ALGORITHM: GAM Habitat Model
	VECTORLAYER_SAMPLEDPOINTS <ParameterVector>
	VECTORLAYER_SHIPTRACKS <ParameterVector>
	RASTERLAYER_SST <ParameterRaster>
	RASTERLAYER_CLOR <ParameterRaster>
	RASTERLAYER_DEPTH <ParameterRaster>
	SAVENAME_ALG15 <OutputVector>
	SAVENAME_ALG24 <OutputVector>
	RPLOTS_ALG34 <OutputHTML>
	R_CONSOLE_OUTPUT_ALG35 <OutputHTML>
	RPLOTS_ALG36 <OutputHTML>
	RPLOTS_ALG37 <OutputHTML>
	RPLOTS_ALG38 <OutputHTML>

Este ‘e um exemplo da sintaxe para chamar o modelo:

>sextante.runalg("modeler:gam_habitat_model.","sample_pts_07", "track_lines_07", "2007-07_Pathv5.0_daynight_SST_monjulc", "clor_mnth_conv_wgs84", "depth_crop", None, None, None, None,None, None, None)

A keyword None, significa que o output sera gerado como ficheiro temporario, na folder definida para esse efeito nas configuracoes do SEXTANTE.

Image

Ao contrario do que passa com a toolbox do SEXTANTE, os algoritmos chamados desta forma nao adicionam nenhum output a view do QGIS, ou ao result viewer do SEXTANTE. Depois de correr, o script informa da localizacao e nome dos outputs: no caso de terem sido definidos como ficheiros temporarios, irao ser removidos ao sair do QGIS!

Image

Os outputs numericos, de texto ou graficos, que normalmente seriam mostrados no “Result viewer”, sao  guardados como ficheiros html.

No proximo post irei entrar noutra “vertente” do python no SEXTANTE, mostrando como escrever um script para automatizar uma serie de tarefas.

Author: doublebyte

H8ckr, geocoder, traceuse, skateboarder, person...

Deixe uma resposta

Fill in your details below or click an icon to log in:

WordPress.com Logo

You are commenting using your WordPress.com account. Log Out / Change )

Twitter picture

You are commenting using your Twitter account. Log Out / Change )

Facebook photo

You are commenting using your Facebook account. Log Out / Change )

Google+ photo

You are commenting using your Google+ account. Log Out / Change )

Connecting to %s