.
O modelador gráfico permite que possa criar modelos complexos usando uma simples interface fácil-de-usar. Quando se trabalha com SIG, a maioria das operações de análises não são isoladas, mas fazem parte de uma cadeia de operações. Usando o modelador gráfico, essa cadeia de processos pode ser agregada num único processo, sendo mais fácil e mais conveniente, mais tarde, a sua execução num conjunto de diferentes dados de entrada. Não importa o número de etapas e os diferentes algoritmos envolvidos, o modelo é executado como um único algoritmo, poupando assim tempo e esforço, especialmente para modelos maiores.
O modelador pode ser aberto a partir do menu processamento.
O modelador tem uma área de trabalho onde a estrutura do modelo e o seu fluxo de trabalho são representados como está exibido. Na parte esquerda da janela, um painel com dois separadores podem ser usados para adicionar novos elementos ao modelo.
Figure Processing 16:
A criação de um modelo involve dois passos:
Definição dos dados entrada necessários. Estes dados de entrada serão adicionados na janela de parâmetros, para que o utilizador possa configurar os seus valores quando executa o modelo. O modelo por si é um algoritmo, portanto os parâmetros da janela é gerado automaticamente como acontece em todos os algoritmos disponíveis na infraestrutura de processamento.
Definição do fluxo de trabalho. Usando os dados de entrada do modelo, o fluxo de trabalho é definido adicionando algoritmos e seleccionando como vão usar esses ficheiros de entrada ou de saída gerados por outros algoritmos que já existem no modelo
O primeiro passo para criar um modelo é definir as entradas que necessita. Os seguintes elementos são encontrados no separador Entradas no lado esquerdo da janela do modelador:
Camada matricial
Camada vectorial
Cadeia de texto
Campo da tabela
Tabela
Extensão
Número
Booleano
Ficheiro
Faça duplo clique em qualquer um, e será exibida uma janela de diálogo para definir as suas características. Dependendo do parâmetro, o diálogo irá conter apenas um elemento básico (a descrição, que será o que o utilizador irá ver quando executar o modelo) ou outros mais. Por exemplo, quando adiciona um valor numérico, como aparece na próxima figura, além da descrição do parâmetro é necessário definir o valor por defeito e o intervalo de valores válidos.
Figure Processing 17:
Para cada entrada adicionada, um novo elemento é adicionado ao enquadramento do modelador.
Figure Processing 18:
Uma vez as entradas definidas, é tempo de definir os algoritmos que vamos aplicar. Os algoritmos podem ser encontrados no separador Algoritmos, agrupados na mesma forma que estão na caixa de ferramentas.
Figure Processing 19:
A aparência da caixa de ferramentas tem dois modos: simplificado e avançado. Contudo, não existe nenhum elemento para trocar entre as vistas no modelador, e pode fazê-lo na caixa de ferramentas. O modo que é seleccionado na caixa de ferramentas é aquele que será usado para a lista de algoritmos no modelador.
To add an algorithm to a model, double-click on its name. An execution dialog will appear, with a content similar to the one found in the execution panel that is shown when executing the algorithm from the toolbox. The one shown next corresponds to the SAGA ‘Convergence index’ algorithm, the same example we saw in the section dedicated to the toolbox.
Figure Processing 20:
Como pode ver, existem algumas diferenças. Em vez da caixa de saída do ficheiro ser usada para configurar o caminho do ficheiro para as camadas e tabelas de saída, é usado apenas uma caixa de texto simples. Se a camada gerada pelo algoritmo é apenas um resultado temporário, este será usado como o ficheiro de entrada de outro algoritmo e não será mantido como resultado final, mas não edite essa caixa de texto. Introduzindo alguma coisa nela, significa que o resultado é final, e o texto que forneceu será a descrição para o ficheiro de saída, que será aquele que o utilizador irá ver quando executar o modelo.
A selecção do valor para cada parâmetro é também um pouco diferente, uma vez que existem diferenças importantes entre o contexto do modelador e a caixa de ferramentas. Vamos ver como é introduzido os valores para cada tipo de parâmetro.
Camadas (raster e vector) e tabelas. Estes são seleccionados de uma lista, mas só em caso dos valores possíveis serem camadas ou tabelas carregadas no QGIS, a lista dos dados de entrada do modelo do tipo correspondente, ou outras camadas ou tabelas geradas por algoritmos que já tenham sido adicionadas ao modelo.
Valores numéricos. Valores literais podem ser introduzidos directamente na caixa de texto. Mas esta caixa de texto é também uma lista que pode ser usada para seleccionar qualquer valor numérico de entrada do modelo. Nesse caso, o parãmetro irá tomar o valor introduzido pelo utilizador quando executado o modelo.
Cadeia de texto. Como no caso dos valores numéricos, as cadeias de texto podem ser introduzidas, ou uma cadeia de texto de entrada pode ser seleccionada.
Campo da Tabela. Os campos de uma tabela origem ou camada não podem ser conhecidas na altura do seu desenho, uma vez que dependem da selecção do utilizador cada vez que o modelo é executado. Para definir o valor para este parâmetro, introduza o nome do campo directamente na caixa de texto, ou usa a lista para seleccionar a entrada do campo de tabela que já está adicionada no modelo. A validade de um campo seleccionado irá ser verificado no seu processo de execução.
Em todos os casos, irá encontrar um parâmetro adicional denominado de Algoritmos Parent que não está disponível quando é chamado o algoritmo a partir da caixa de ferramentas. Este parâmetro permite que possa definir a ordem de como os algoritmos são executados, definindo explicitamente um algoritmo como parent do actual, que irá força-lo a executá-lo antes.
Quando usa um ficheiro de saída de um algoritmo prévio como ficheiro de entrada do seu algoritmo, isso implica definir o antigo como parent do actual (e posiciona a seta correspondente no enquadramento do modelador), Contudo, em alguns casos o algoritmo pode depender de outro mesmo que não use um objecto de saída a partir dele (por exemplo, um algoritmo que executa uma instância SQL numa base de dados PostGIS e outra que importa uma camada para a mesma base de dados). Nesse caso, apenas seleccione no parâmetro Algoritmos Parent e eles irão ser executados na ordem correcta.
Uma vez todos os parâmetros estiver relacionados a valores válidos, clique no botão [OK] e o algoritmo irá ser adicionado ao enquadramento. Será ligado a todos os outros elementos do enquadramento, sejam eles algoritmos ou ficheiros de entrada, o que irá fornecer objectos que foram usados como ficheiros de entrado para esse algoritmo.
Elements can be dragged to a different position within the canvas, to change the way the module structure is displayed and make it more clear and intuitive. Links between elements are updated automatically.
Pode correr o seu algoritmo em qualquer altura clicando no botão [Executar]. Contudo, se quiser usá-lo a partir da caixa de ferramentas, é necessário guarda-lo e fechar o diálogo do modelador, para permitir que a caixa de ferramentas actualize os seus conteúdos.
Use o botão [Guardar] para guardar o modelo actual e o [Abrir] para abrir qualquer modelo anteriormente guardado. Os modelos são guardados com a extensão: .model. Se o modelo for previamente guardado da janela do modelador, não lhe irá ser solicitado por um nome de ficheiro, uma vez que já existe um ficheiro associado ao modelo, e será usado.
Antes de guardar o modelo, necessita de introduzir o nome e o grupo do modelo, usando as caixas de texto para parte superior da janela.
Os modelos guardados na pasta modelos (a pasta padrão quando é pedido o nome do ficheiro para guardar o modelo) irá aparecer na caixa de ferramentas na ligação correspondente. Quando a caixa de ferramentas é chamada, ele procura na pasta modelos por ficheiros com a extensão :file:`.model`e carrega os modelos guardados. Uma vez que o modelo é um próprio algoritmo, este pode ser adicionado na caixa de ferramentas como qualquer outro algoritmo.
A pasta de modelos pode ser configurada a partir do diálogo de configuração do processamento, no grupo Modelador
Os modelos carregados a partir da pasta modelos aparecem na caixa de ferramentas, mas também na árvore de algoritmos do separador Algoritmos da janela do modelador. Isto significa que pode incorporar o modelo como parte de um modelo maior, tal como adiciona qualquer outro algoritmo.
Em alguns casos, um modelo pode não ser carregado porque nem todos os algoritmos incluídos estão disponíveis. Se tiver usado um dado algoritmo como parte do seu modelo, este deverá estar disponível (isto é, deverá aparecer na caixa de ferramentas) de forma a carregar o modelo. Desactivando um fornecedor de algoritmos nas configurações do da janela do processamento poderá desactivar o modelador, o que pode trazer problemas quando carrega os modelos. Tenha isso em atenção quando tiver problemas a carregar ou a executar modelos.
Pode editar o modelo que criou, redefinindo o fluxo de trabalho e as relações entre os algoritmos e os dados de entrada que defeniu no modelo.
Se clicar com o direito do rato num algoritmo na área que representa o modelo, irá ver o menu contexto como é mostrado a seguir:
Figure Processing 22:
Seleccionando a opção Remover irá fazer com que o algoritmo para ser removido. Um algoritmo só pode ser removido apenas se existir outros algoritmos dependentes dele. Isto é, se não estiver a ser usado um ficheiro de saída de um algoritmo usado como ficheiro de entrada diferente. Se tentar remover um algoritmo que tenha outros que dependa dele, uma mensagem de aviso igual à que vê aqui em baixo:
Figure Processing 23:
Seleccionando a opção Editar ou fazendo simplesmente duplo clique no ícone do algoritmo, irá ser exibido o diálogo de parâmetros do algoritmo, para que possa mudar os ficheiros de entrada e os valores do parâmetro. Tenha em atenção que nem todos os elementos disponíveis no modelo aparecerão neste caso como ficheiros de entrada disponível. Camadas ou valores gerados num passo mais avançado no fluxo de trabalho definido pelo modelo não irá estar disponível se causar dependências em ciclo.
Seleccione novos valores e de seguida clique no botão [OK] como comum. As ligações entre os elementos do modelo irão alterar de acordo com o enquadramento do modelador.
Algorithms can be deactivated in the modeler, so they will not be executed once the model is run. This can be used to test just a given part of the model, or when you do not need all the outputs it generates.
To deactivate an algorithm, right-click on its icon in the model canvas and select the Deactivate option. You will see that the algorithm is represented now with a red label under its name indicating that it is not active.
Figure Processing 24:
All algorithms depending (directly or indirectly) on that algorithm will also appear as inactive, since they cannot be executed now.
To activate an algorithm, just right-click on its icon and select the Activate option.
Pode documentar os seus modelos a partir do próprio modelador. Basta apenas clicar no botão [Editar ajuda do modelo] e o diálogo como aquele que irá aparecer.
Figure Processing 25:
No lado direito irá ver uma página simples HTML, criada usando a descrição dos parâmetros de entrada e de saída do algoritmo, juntamente com itens adicionais como uma descrição geral do modelo ou o seu autor. A primeira vez que abre o editor da ajuda, todas as ajudas estão vazias, mas pode editá-los usando os elementos do lado esquerdo do diálogo. Seleccione um elemento na parte superior e escreva a descrição na caixa de texto em baixo.
A ajuda do Modelo é guardada num ficheiro na mesma pasta ao pé do seu respectivo modelo. Não tem de ser preocupar como guardá-lo, uma vez ser feito automaticamente.
Poderá notar que alguns algoritmos podem ser executados a partir da caixa de ferramentas mas não aparecem na lista de algoritmos disponíveis quando está a desenhar o modelo. Para ser incluído no modelo, o algoritmo deve ter uma semântica correcta, assim como ligações apropriadas a outros fluxos de trabalho. Se um algoritmo não tiver uma boa semântica bem definida (por exemplo, se o número de camadas de saída não são conhecidas), portanto não é possível usá-lo dentro do modelo, e não aparece na lista na janela do diálogo do modelador.
Adicionalmente, irá ver algoritmos no modelador que não se encontram na caixa de ferramentas. Esses algoritmos são para ser usados exclusivamente como parte do modelo, e eles não têm interesse noutro contexto diferente. O algoritmo ‘Calculadora’ é um exemplo disso. É apenas uma simples calculadora aritmética que pode usar para modificar valores numéricos (introduzidos pelo utilizador ou gerados por outro tipo de algoritmo). Estas ferramentas são realmente úteis dentro do modelo, mas fora do contexto, não fazem sentido.
Given a model, it is possible to automatically create Python code that performs the same task as the model itself. This code is used to create a console script (we will explain scripts later in this manual) and you can modify that script to incorporate actions and methods not available in the graphical modeler, such as loops or conditional sentences.
This feature is also a very practical way of learning how to use processing algorithms from the console and how to create new algorithms using Python code, so you can use it as a learning tool when you start creating your own scripts.
Save your model in the models folder and go to the toolbox, where it should appear now, ready to be run. Right-click on the model name and select Save as Python script in the context menu that will pop up. A dialog will prompt you to introduce the file where you want to save the script.