Integração com SIG GRASS

O complemento GRASS promove o acesso para o SIG GRASS (ver GRASS-PROJECT Referências Bibliográficas e Web) base de dados e funcionalidades. Isso inclui visualização de camadas raster e vetoriais GRASS, digitalização de camadas vetoriais, edição de atributos vetoriais, criação de novas camadas vetoriais e análise de dados 2D e 3D GRASS com mais de 300 modulos GRASS.

Nesta seção, vamos apresentar as funcionalidades do complemento e dar alguns exemplos de gestão e trabalhos com dados do GRASS. As seguintes características principais são fornecidas com o menu da barra de ferramentas, quando você inicia o complento GRASS, como descrito na seção: ref: sec_starting_grass:

  • grass_open_mapset Abrir mapset

  • grass_new_mapset Novo mapset

  • grass_close_mapset Fechar mapset

  • grass_add_vector Adicionar uma camada vetorial do GRASS

  • grass_add_raster Adicionar uma camada raster do GRASS

  • grass_new_vector_layer Criar um novo vetor do GRASS

  • grass_edit Editar camada vetorial do GRASS

  • grass_tools Abrir ferramentas GRASS

  • grass_region Mostrar a região atual do GRASS

  • grass_region_edit Edita região atual do GRASS

Iniciando o complemento GRASS

To use GRASS functionalities and/or visualize GRASS vector and raster layers in QGIS, you must select and load the GRASS plugin with the Plugin Manager. Therefore click the menu Plugins ‣ mActionShowPluginManager Manage Plugins, select checkbox GRASS and click [OK].

Agora você pode começar a carregar camadas raster e vetoriais a partir de um GRASS existente: arquivo: LOCALIZAÇÃO (ver seção: ref: sec_load_grassdata). Ou você cria um novo GRASS: arquivo: LOCALIZAÇÃO com QGIS (ver seção: ref: sec_create_loc) e importa alguns dados raster e vetor (ver Seção: ref: sec_import_loc_data) para a análise com a caixa de ferramentas GRASS (ver seção: ref: subsec_grass_toolbox).

Carregando camadas raster e vetorial GRASS

Com o complemento GRASS, voce pode carregar camadas raster e vetor usando o botão apropriado do menu da barra de ferramentas. Como exemplo usamos o banco de dados alaska do QGIS (ver seção Dados de exemplo). Ele inclue uma pequena e simples camada GRASS:arquivo:LOCALIZAÇÃO com 3 camadas vetoriais e 1 camada raster de elevação.

  1. Criar uma pasta nova :arquivo:`grassdata`, baixar o conjunto de dados alaska QGIS :arquivo:`qgis\_sample\_data.zip` de http://download.osgeo.org/qgis/data/ e descompacte o arquivo em:arquivo:grassdata.

  2. Iniciar QGIS.

  3. If not already done in a previous QGIS session, load the GRASS plugin clicking on Plugins ‣ mActionShowPluginManager Manage Plugins and activate checkbox GRASS. The GRASS toolbar appears in the QGIS main window.
  4. Na barra de ferramentas GRASS. clique no grass_open_mapset:sup: ícone Abrir mapset para abrir o: arquivo: assistente MAPSET.

  5. Para: arquivo: Gisdbase busque e selecione ou digite o caminho para a pasta recém criada: arquivo: grassdata.

  6. You should now be able to select the LOCATION selectstring alaska and the MAPSET selectstring demo.
  7. Clique [OK]. Observe que algumas ferramentas anteriormente desabilitadas na barra de ferramentas GRASS agora estão habilitadas.

  8. Clique em grass_add_raster Adicionar camada raster GRASS, escolha o nome do mapa: arquivo: gtopo30 e clique [OK]. A camada de elevação será visualizada.

  9. Clique em grass_add_vector: sup: ‘Adicionar camada vetorial GRASS`, escolha o nome do mapa: arquivo:alaska e clique: menuselection:OK. O limite da camada vetorial alaska será sobreposto em cima do: arquivo: mapa GTOPO30. Agora você pode adaptar as propriedades da camada, conforme descrito no capítulo: ref: vector_properties_dialog, por exemplo, alterar a opacidade, preenchimento e contorno de cor.

  10. Também carregar as outras duas camadas vetor :arquivo:`rivers` e :arquivo:`airports` e adaptar as suas propriedades.

Como você pode ver, é muito simples carregar camadas raster e vetoriais GRASS no QGIS. Consulte as seções seguintes para editar dados do GRASS e criar um novo :arquivo:`LOCATION`. Mais amostras GRASS em: arquivo: LOCATIONs estão disponíveis no site do GRASS em http://grass.osgeo.org/download/data.php.

Dica

Carregando dados GRASS

If you have problems loading data or QGIS terminates abnormally, check to make sure you have loaded the GRASS plugin properly as described in section Iniciando o complemento GRASS.

Localização e MAPSET GRASS

GRASS data are stored in a directory referred to as GISDBASE. This directory often called grassdata, must be created before you start working with the GRASS plugin in QGIS. Within this directory, the GRASS GIS data are organized by projects stored in subdirectories called LOCATION. Each LOCATION is defined by its coordinate system, map projection and geographical boundaries. Each LOCATION can have several MAPSETs (subdirectories of the LOCATION) that are used to subdivide the project into different topics, subregions, or as workspaces for individual team members (Neteler & Mitasova 2008 Referências Bibliográficas e Web). In order to analyze vector and raster layers with GRASS modules, you must import them into a GRASS LOCATION (This is not strictly true - with the GRASS modules r.external and v.external you can create read-only links to external GDAL/OGR-supported data sets without importing them. But because this is not the usual way for beginners to work with GRASS, this functionality will not be described here.).

Figure GRASS location 1:

../../../_images/grass_location.png

GRASS data in the alaska LOCATION

Criando uma nova Localização GRASS

Como exemplo aqui veja a amostra GRASS :arquivo:`LOCATION alaska`, que é projetada em projeção Albers Equal Area, com a unidade pés foi criada para o conjunto de dados da amostra QGIS. Esta amostra GRASS:arquivo:LOCATION alaska será usada para todos os exemplos e exercícios nos seguintes capítulos relacionados com SIG GRASS. Ela é usada para baixar e instalar o conjunto de dados em seu computador: ref: label_sampledata).

  1. Inicie o QGIS e certifique-se que o complemento GRASS foi carregado.

  2. Visualize o :arquivo:`alaska.shp` Shapefile (ver Seção Carregando um Shapefile) da base de dados alaska QGIS Dados de exemplo.

  3. In the GRASS toolbar, click on the grass_new_mapsetNew mapset icon to bring up the MAPSET wizard.
  4. Selecione uma pasta existente GRASS base de dados (GISDBASE): arquivo: grassdata ou crie um novo: arquivo: LOCATION usando um gerenciador de arquivos em seu computador. Então, clique [Próximo].

  5. Podemos usar este assistente para criar um novo: arquivo: MAPSET dentro de um já existente: arquivo: LOCATION ‘(ver seção: ref: sec_add_mapset ) ou para criar um novo: arquivo: Location’. Clique no botão de rádio | radiobuttonon |: guilabel: ‘Criar nova location `(ver figure_grass_location_2).

  6. Digite um nome para o: arquivo:`Location’ - que usamos alasca e clique [Próximo].

  7. Defina a projeção, clicando no botão de rádio | radiobuttonon |: guilabel: `Projeção’ para habilitar a lista de projeções.

  8. We are using Albers Equal Area Alaska (feet) projection. Since we happen to know that it is represented by the EPSG ID 2964, we enter it in the search box. (Note: If you want to repeat this process for another LOCATION and projection and haven’t memorized the EPSG ID, click on the mIconProjectionEnabled projector icon in the lower right-hand corner of the status bar (see Section Trabalhando com Projeções)).
  9. In Filter insert 2964 to select the projection.
  10. Clique [Próximo].

  11. Para definir a região padrão, temos que digitar no: arquivo: LOCATION limites na direção norte, sul, leste e oeste. Aqui, basta clicar no botão: guilabel: estabeleça QGIS dimensão atual, para aplicar a extensão da camada carregada: arquivo: alaska.shp como a extensão da região padrão do GRASS.

  12. Clique [Próximo].

  13. We also need to define a MAPSET within our new LOCATION. You can name it whatever you like - we used demo (When creating a new LOCATION). GRASS automatically creates a special MAPSET called PERMANENT designed to store the core data for the project, its default spatial extend and coordinate system definitions (Neteler & Mitasova 2008 Referências Bibliográficas e Web)
  14. Confira o resumo para ter certeza que está correto e clique [Fim].

  15. O novo: arquivo:LOCATION alaska e dois: arquivo:MAPSETs demo e: arquivo:PERMANENT’ são criados. O conjunto de trabalho aberto no momento é: arquivo:`MAPSET demo, como você definiu.

  16. Note que algumas das ferramentas na barra de ferramentas GRASS que foram desativadas estão agora habilitadas.

Figure GRASS location 2:

../../../_images/create_grass_location.png

Creating a new GRASS LOCATION or a new MAPSET in QGIS

Se isso parecia ser uma série de etapas, não é realmente tão ruim assim e uma maneira muito rápida de criar um: arquivo: LOCATION ‘. O: arquivo: `LOCATION alaska ‘já está pronto para importação de dados (ver seção: ref: sec_import_loc_data ). Você também pode usar o vetor e dados raster já existentes no GRASS exemplo: arquivo: `LOCATION alaska incluído no QGIS alaska conjunto de dados: ref: label_sampledata e avance para a Seção: ref: label_vectmodel.

Adicionando um novo MAPSET

A user has only write access to a GRASS MAPSET he created. This means that besides access to his own MAPSET, each user can read maps in other user’s MAPSETs, but he can modify or remove only the maps in his own MAPSET.

All MAPSETs include a WIND file that stores the current boundary coordinate values and the currently selected raster resolution (Neteler & Mitasova 2008 Referências Bibliográficas e Web, see Section A ferramenta região GRASS).

  1. Inicie o QGIS e certifique-se que o complemento GRASS foi carregado.

  2. Na barra de ferramentas GRASS, clique no ícone | grass_new_mapset |: sup: ‘Novo mapset’ para abrir o: arquivo: assistente MAPSET.

  3. Selecione a pasta GRASS base de dados (GISDBASE): arquivo: grassdata com: arquivo: LOCATION alaska, onde queremos adicionar mais um: arquivo: MAPSET, chamado teste.

  4. Clique [Próximo].

  5. Podemos usar este assistente para criar um novo: arquivo: MAPSET dentro de um já existente: arquivo: LOCATION ‘ou para criar um completamente novo: arquivo:`LOCATION’. Clique no botão de rádio | radiobuttonon |: guilabel: `Selecione a localização (ver figure_grass_location_2) e clique [Próximo].

  6. Digite o nome: arquivo: texto para o novo:arquivo: MAPSET. Abaixo no assistente, você verá uma lista de existente: arquivo: MAPSETs e seus proprietários.

  7. Clique [Próximo], confira o resumo para se certificar de que está tudo correto e clique [Fim].

Importando dados para uma localização GRASS

Esta Seção fornece um exemplo de como importar dados vetoriais e raster para o: arquivo: alaska GRASS: arquivo: LOCATION fornecido pelo conjunto de dados Alaska QGIS. Portanto, usamos uma landcover raster mapa: arquivo: landcover.img e um GML arquivo vetorial: arquivo: lakes.gml do conjunto de dados QGIS alaska: ref: label_sampledata.

  1. Inicie o QGIS e certifique-se que o complemento GRASS foi carregado.

  2. Na barra de ferramentas GRASS, clique no ícone grass_open_mapset:sup: ‘Abrir MAPSET’ para abrir o:arquivo:assistente MAPSET.

  3. Escolha como base de dados GRASS a pasta: arquivo:grassdata no QGIS conjunto de dados alaska, como:arquivo:LOCATION alaska, como: arquivo: MAPSET: arquivo: `demo’ e clique [OK].

  4. Agora, clique no ícone | grass_tools |: sup: ‘Abrir ferramentas GRASS . A caixa de ferramentas GRASS (ver secção: ref: `subsec_grass_toolbox) aparece o diálogo.

  5. Para importar o mapa raster: arquivo: landcover.img, clique no módulo: arquivo: r.in.gdal no: guilabel: Árvore de Módulos guia. Este módulo GRASS permite importar arquivos raster GDAL suportados para o GRASS: arquivo: LOCATION’. O módulo diálogo para: arquivo`r.in.gdal aparece.

  6. Procure a pasta: arquivo: raster no conjunto de dados QGIS alaska e selecione o arquivo: landcover.img.

  7. Como nome de saída raster defina: arquivo:landcover_grass e clique [Rodar]. Em: guilabel:guia ‘Saída’ você vê o comando GRASS atualmente em execução: arquivo:r.in.gdal-o entrada=/path/to/landcover.img saída=landcover_grass.

  8. Quando ele diz Terminou com sucesso clique em [Ver saída]. O: arquivo: landcover_grass camada raster agora é importado para o GRASS e será visualizada na tela QGIS.

  9. Para importar o arquivo vetorial GML: arquivo: lakes.gml, clique no módulo: arquivo: v.in.ogr na guia: guilabel: Árvore de Módulos. Este módulo GRASS permite importar arquivos vetoriais suportados OGR para o GRASS: arquivo: LOCATION’. O módulo diálogo para: arquivo: `v.in.ogr aparece.

  10. Procure a pasta: arquivo: GML no conjunto de dados QGIS alaska e selecione o arquivo:lakes.gml como arquivo OGR.

  11. Como nome de saída vetor defina: arquivo:lakes_grass e clique [Rodar]. Você não precisa se preocupar com as outras opções neste exemplo. Em guia: guilabel: ‘Saída’ você vê o comando GRASS atualmente em execução: arquivo:v.in.ogr-o dsn=/path/to/lakes.gml saída=lakes_grass.

  12. Quando ele diz Terminado com sucesso clique em [Ver saída]. O: arquivo:lakes _grass camada vetorial é agora importada para o GRASS e será visualizada na tela QGIS.

O modelo de dados vetorial do GRASS

É importante compreender o modelo de dados vetor GRASS antes da digitalização.

Em geral, GRASS utiliza um modelo de vetor topológico.

Isto significa que as áreas não são representadas como polígonos fechados, mas por um ou mais limites. A fronteira entre duas áreas adjacentes é digitalizada apenas uma vez, e é compartilhada por ambas as áreas. Limites precisam estar conectados e fechados sem lacunas. Uma área é identificada (e rotulada) pelo ** centróide** da área.

Besides boundaries and centroids, a vector map can also contain points and lines. All these geometry elements can be mixed in one vector and will be represented in different so called ‘layers’ inside one GRASS vector map. So in GRASS a layer is not a vector or raster map but a level inside a vector layer. This is important to distinguish carefully (Although it is possible to mix geometry elements, it is unusual and even in GRASS only used in special cases such as vector network analysis. Normally you should prefere to store different geometry elements in different layers.).

É possível armazenar várias “camadas” em um conjunto de dados vetor. Por exemplo, campos, florestas e lagos podem ser armazenados em um vetor. Floresta adjacente e lago podem compartilhar o mesmo limite, mas eles têm tabelas de atributos separadas. Também é possível fixar atributos por limites. Por exemplo, a fronteira entre o lago e floresta é uma estrada, para que possa ter uma tabela de atributos diferentes.

A “camada” de recurso é definida por “camada” dentro do GRASS. “Camada” é o número que define, se houver mais do que uma camada dentro do conjunto de dados, por exemplo, se a geometria é floresta ou lago. Por enquanto, ela pode ser apenas um número, no futuro, GRASS também suportará nomes como campos na interface do usuário.

Attributes can be stored inside the GRASS LOCATION as DBase or SQLITE3 or in external database tables, for example PostgreSQL, MySQL, Oracle, etc.

Atributos em tabelas de base de dados estão ligados a elementos geométricos usando um valor ‘categoria’.

‘Categoria’ (chave, ID) é um número inteiro ligado a geometrias primitivas, e que é usada como ligação a uma coluna chave na tabela de base de dados.

Dica

Aprendendo um Modelo Vetor GRASS

A melhor maneira de aprender o modelo Vetor Grass e as suas capacidades é baixar um dos muitos tutoriais GRASS onde o modelo vetorial é descrito mais profundamente. Veja http://grass.osgeo.org/gdp/manuals.php para mais informações, livros e tutoriais em várias línguas.

Criando uma nova camada vetorial GRASS

Para criar uma nova camada vetor GRASS com o complemento GRASS clique no | grass_new_vector_layer |: sup: Criar novo vetor GRASS ícone da barra de ferramentas. Digite um nome na caixa de texto e você pode começar a digitalização de geometrias ponto, linha ou polígono, seguindo o procedimento descrito na Seção: ref: grass_digitizing.

No GRASS, é possível organizar toda sorte de tipos de geometria (ponto, linha e área) em uma camada, porque o GRASS utiliza um modelo de vetor topológico, assim você não precisa selecionar o tipo de geometria ao criar um novo vetor GRASS. Isto é diferente de criação Shapefile com QGIS, devido à este usar o modelo vetor de características simples (ver Seção: ref: sec_create_shape).

Dica

Criando uma tabela de atributos para uma nova camada vetorial GRASS

Se você deseja atribuir atributos a seus recursos de geometria digitalizados, certifique-se de criar uma tabela de atributos com colunas antes de começar a digitalização (ver figure_grass_digitizing_5).

Digitalizando e editando uma camada vetorial GRASS

As ferramentas de digitalização para as camadas vetor GRASS são acessadas ​​usando o | grass_edit |: sup:ícone Editar camada vetorial GRASS na barra de ferramentas. Certifique-se de que você tenha carregado um vetor GRASS e é a camada selecionada na legenda antes de clicar na ferramenta de edição. Figura figure_grass_digitizing_2 mostra o diálogo de edição GRASS que é exibido quando você clica na ferramenta de edição. As ferramentas e as configurações serão discutidas nas seções seguintes.

Dica

Digitalizando polígonos no GRASS

If you want to create a polygon in GRASS, you first digitize the boundary of the polygon, setting the mode to ‘No category’. Then you add a centroid (label point) into the closed boundary, setting the mode to ‘Next not used’. The reason is, that a topological vector model links attribute information of a polygon always to the centroid and not to the boundary.

Barra de Ferramentas

Na figure_grass_digitizing_1 você vê os ícones da barra de ferramentas de digitalização Grass fornecido pelo complemento GRASS. Tabela table_grass_digitizing_1 explica as funcionalidades disponíveis.

Figure GRASS digitizing 1:

../../../_images/grass_digitizing_toolbar.png

GRASS Digitizing Toolbar

Ícone

Ferramenta

Propósito

grass_new_point

Novo Ponto

Digitaliza novo ponto

grass_new_line

Nova Linha

Digitaliza nova linha

grass_new_boundary

Nova Fronteira

Digitaliza novo limite (acaba ao selecionar nova ferramenta)

grass_new_centroid

Novo Centróide

Digitaliza novo centróide (etiqueta da área existente)

grass_move_vertex

Mova vértice

Mova um vértice da linha ou limite existente e identifique nova posição

grass_add_vertex

Adiciona vértice

Adiciona novo vértice à uma linha existente

grass_delete_vertex

Exclua vértice

Exclua vértice da linha existente (confirme vértice selecionado por outro clique)

grass_move_line

Mova elemento

Mova limite, linha, ponto ou centróide selecionado e clique em nova posição

grass_split_line

Dividir linha

Dividir uma linha existente em 2 partes

grass_delete_line

Exclua elemento

Exclua limite existente, linha, ponto ou centróide (confirme elemento selecionado por outro clique)

grass_edit_attributes

Editar atributos

Editar atributos do elemento selecionado (note que um elemento pode representar mais recursos, veja acima)

grass_close_edit

Fechar

Fechar sessão e salvar o estado atual (reconstrói topologia depois)

GRASS Digitalização de Tabela 1: GRASS Ferramentas de Digitalização

Aba Categoria

A: guilabel: guia Categoria permite definir a forma em que os valores da categoria serão atribuídos à um novo elemento geométrico.

Figure GRASS digitizing 2:

../../../_images/grass_digitizing_category.png

GRASS Digitizing Category Tab

  • Modo: qual valor da categoria deve ser aplicado aos novos elementos geométricos.

    • Próximo não usado - aplica próximo valor de categoria ainda não usados para elemento geométrico.

    • Entrada Manual - defina manualmente o valor de categoria para o elemento geométrico no campo de entrada ‘Categoria’.

    • Sem categoria - Não aplica um valor de categoria ao elemento geométrico. Isto é, por exemplo usado para os limites da área, pois os valores de categoria são conectados através do centróide.

  • Categoria - Um número (ID) está anexo a cada elemento geométrico digitalizado. Ele é usado para conectar cada elemento geométrico com seus atributos.

  • Campo (camada) - Cada elemento geométrico pode ser conectado com várias tabelas de atributos usando diferentes camadas geométricas GRASS. Número da camada padrão é 1.

Dica

Criando uma ‘camada’ adicional GRASS com QGIS

If you would like to add more layers to your dataset, just add a new number in the ‘Field (layer)’ entry box and press return. In the Table tab you can create your new table connected to your new layer.

Aba Configurações

A: guilabel: guia Configurações permite que você defina o encaixe em pixels da tela. O limite que define qual distância para novos pontos de linha ou extremidades são agarrados por nós existentes. Isso ajuda a evitar lacunas ou oscilações entre fronteiras. O padrão é definido como 10 pixels.

Figure GRASS digitizing 3:

../../../_images/grass_digitizing_settings.png

GRASS Digitizing Settings Tab

Aba Simbologia

A: guilabel: guia Simbologia permite ver e definir simbologia e definições de cor para vários tipos de geometria e seu estado topológico (por exemplo limite fechado / aberto).

Figure GRASS digitizing 4:

../../../_images/grass_digitizing_symbology.png

GRASS Digitizing Symbolog Tab

Aba Tabela

A: guilabel: guia ‘Tabela’ fornece informação sobre a tabela base de dados para uma dada “camada”. Aqui você pode adicionar novas colunas a uma tabela de atributos existente ou criar uma nova tabela base de dados para uma nova camada vetorial GRASS (ver Seção: ref: creating_new_grass_vectors).

Figure GRASS digitizing 5:

../../../_images/grass_digitizing_table.png

GRASS Digitizing Table Tab

Dica

GRASS Edita Permissões

You must be the owner of the GRASS MAPSET you want to edit. It is impossible to edit data layers in a MAPSET that is not yours, even if you have write permissions.

A ferramenta região GRASS

A definição região (janela definindo área de trabalho) no GRASS é importante para trabalhar com camadas raster. Análise vetorial por padrão não é limitado a quaisquer definições de região definida. Mas todos os rasters recém-criados terão a extensão espacial e resolução da região GRASS atualmente definidas, independentemente de sua extensão e resolução originais. A região GRASS atual é armazenada no: arquivo: $ local / $ mapset / WIND arquivo, e define norte, sul, leste e oeste dos limites, o número de colunas e linhas, a resolução espacial horizontal e vertical.

É possível ligar/desligar a visualização da região GRASS na tela QGIS usando o grass_region: sup: botão`Mostrar região GRASS atual`.

Com o grass_region_edit: sup: ícone Edita região atual GRASS você pode abrir um diálogo para mudar a região atual e a simbologia da região retângulo GRASS na tela QGIS. Digite os novos limites e resolução da região e clique [OK]. Ele também permite selecionar uma nova região interativamente com o mouse na tela QGIS. Portanto, clique com o botão esquerdo do mouse na tela QGIS, abra um retângulo, feche-o usando o botão esquerdo novamente e clique [OK].

O módulo GRASS: arquivo:g.region’ fornece muito mais parâmetros para definir ampliação apropriada de uma região e resolução para sua análise raster. Você pode usar esses parâmetros com a caixa de ferramentas GRASS, descrito na Seção: ref: `subsec_grass_toolbox.

A caixa de ferramentas GRASS

A grass_tools: sup: caixa Abra Ferramentas GRASS fornece GRASS funcionalidades do módulo para trabalhar com dados dentro de um GRASS selecionado: arquivo: LOCATION’ e: arquivo: `MAPSET. Para usar a caixa de ferramentas GRASS que você precisa para abrir um: arquivo: LOCATION e: arquivo: MAPSET onde você tem permissão de escrita (geralmente concedido, se você criou o: arquivo: MAPSET). Isto é necessário, porque novos raster ou camadas vetoriais criados durante a análise precisa ser escrito para o selecionado: arquivo: LOCATION e: arquivo: MAPSET.

Figure GRASS toolbox 1:

../../../_images/grass_toolbox_moduletree.png

GRASS Toolbox and Module Tree nix

A linha de comando GRASS dentro da caixa de ferramentas GRASS prove o acesso a quase todos os (mais de 330) módulos GRASS através de uma interface de linha de comando. Para oferecer um ambiente de trabalho mais amigável, cerca de 200 dos módulos GRASS disponíveis e funcionalidades também são fornecidos pelo diálogos gráficos dentro da caixa de ferramentas do complemento GRASS.

Trabalhando com módulos GRASS

The GRASS Shell inside the GRASS Toolbox provides access to almost all (more than 300) GRASS modules in a command line interface. To offer a more user friendly working environment, about 200 of the available GRASS modules and functionalities are also provided by graphical dialogs.

A complete list of GRASS modules available in the graphical Toolbox in QGIS version 1.8.0 is available in the GRASS wiki ( http://grass.osgeo.org/wiki/GRASS-QGIS_relevant_module_list).

Também é possível personalizar o conteúdo da Caixa de ferramentas GRASS. Este procedimento é descrito na Seção: ref: `sec_toolbox-customizing’.

Como mostrado na figure_grass_toolbox_1, você pode olhar para o módulo apropriado GRASS usando os tematicamente agrupados: guilabel: Módulos Árvore ` ou o pesquisável: guilabel: `Aba Lista de Módulos.

Clicking on a graphical module icon a new tab will be added to the toolbox dialog providing three new sub-tabs Options, Output and Manual.

Opções

The Options tab provides a simplified module dialog where you can usually select a raster or vector layer visualized in the QGIS canvas and enter further module specific parameters to run the module.

Figure GRASS module 1:

../../../_images/grass_module_option.png

GRASS Toolbox Module Options nix

The provided module parameters are often not complete to keep the dialog clear. If you want to use further module parameters and flags, you need to start the GRASS Shell and run the module in the command line.

A new feature in QGIS 1.8.0 is the support for a show advanced options button below the simplified module dialog in the Options tab. At the moment it is only added to the module v.in.ascii as an example use, but will probably be part of more / all modules in the GRASS toolbox in future versions of QGIS. This allows to use the complete GRASS module options without the need to switch to the GRASS Shell.

Saída

Figure GRASS module 2:

../../../_images/grass_module_output.png

GRASS Toolbox Module Output nix

The Output tab provides information about the output status of the module. When you click the [Run] button, the module switches to the Output tab and you see information about the analysis process. If all works well, you will finally see a Successfully finished message.

Manual

Figure GRASS module 3:

../../../_images/grass_module_manual.png

GRASS Toolbox Module Manual nix

A aba: guilabel: ‘Manual’, mostra a página de ajuda HTML do módulo GRASS. Você pode usá-la para checar outros parâmetros do módulo e bandeiras ou para obter um conhecimento mais profundo sobre o objetivo do módulo. No final de cada página do manual do módulo você vê outras ligações para o: arquivo: `Índice Principa de Ajuda’, o: arquivo: `Índice Temático’ e o: arquivo: `Índice Completo. Estes links fornecem a mesma informação que se você usar o módulo: arquivo: ` g.manual’.

Dica

Mostra Resultados Imediatamente

Se você quiser exibir os resultados de cálculo imediatamente em sua tela do mapa, você pode usar o botão “Ver Saída” na parte inferior da aba módulo.

Exemplos de módulos GRASS

Os exemplos seguintes demonstrarão o poder de alguns dos módulos grama.

Criando linhas de contorno

O primeiro exemplo cria um mapa de contorno vetor a partir de um raster de elevação (DEM). Supondo que você tenha o Alaska: arquivo: LOCATION’configurado como explicado na Seção: ref:`sec_import_loc_data.

  • Primeiro, abra o local clicando no grass_open_mapset: sup: botão’ Abrir mapset’ e escolha o local Alaska.

  • Agora carregue o raster gtopo30 elevação clicando grass_add_raster: sup: Adicionar camada raster GRASS’ e selecionando o raster ``gtopo30` a partir do local de demonstração.

  • Agora, abra a caixa de ferramentas com o grass_tools: sup: botão ‘Abrir ferramentas GRASS`.

  • Na lista de categorias de ferramentas clique duas vezes: menuselection: Raster -> Gestão de Superfície -> Gera vetor linhas de contorno.

  • Now a single click on the tool r.contour will open the tool dialog as explained above Trabalhando com módulos GRASS. The gtopo30 raster should appear as the Name of input raster.
  • Type into the Increment between Contour levels selectnumber the value 100. (This will create contour lines at intervals of 100 meters.)
  • Type into the Name for output vector map the name ctour_100.
  • Clique [Rodar] para iniciar o processo. Aguarde alguns instantes até que a mensagem Terminado com sucesso apareça na janela de saída. Então, clique [Ver saída] e [fechar].

Como se trata de uma grande região, vai demorar um pouco para exibir. Depois de terminar a renderização, você pode abrir a janela de propriedades da camada para alterar a cor da linha para que os contornos apareçam claramente sobre o raster elevação, como em: ref: vector_properties_dialog.

Zoom Próximo em uma pequena área montanhosa no centro do Alaska. Ao aproximar-se perto você notará que os contornos tem cantos afiados. GRASS oferece uma ferramenta v.generalize para alterar ligeiramente mapas vetoriais, mantendo a sua forma geral. A ferramenta usa diversos algoritmos diferentes, com propósitos diferentes. Alguns dos algoritmos (por exemplo, Douglas Peuker e redução Vértice) simplificam a linha removendo alguns dos vértices. O vetor resultante carregará mais rápido. Este processo será usado quando você tem um vetor altamente detalhado, mas você está criando um mapa de escala muito pequena, de modo que o detalhe é desnecessário.

Dica

A ferramenta simplificar

Note que o complemento fTools QGIS tem um: menuselection: ‘Simplifique geometrias ->`ferramenta que funciona como o GRASS v.generalize algoritmo Douglas-Peuker.

However, the purpose of this example is different. The contour lines created by r.contour have sharp angles that should be smoothed. Among the v.generalize algorithms there is Chaikens which does just that (also Hermite splines). Be aware that these algorithms can add additional vertices to the vector, causing it to load even more slowly.

  • Abra a caixa de ferramentas GRASS e dê um duplo clique nas categorias: menuselection: Vector -> Desenvolver mapa -> Generalização, em seguida, clique no módulo v.generalize para abrir a janela de opções.

  • Check that the ‘ctour_100’ vector appears as the Name of input vector.
  • From the list of algorithms choose Chaiken’s. Leave all other options at their default, and scroll down to the last row to enter in the field Name for output vector map ‘ctour_100_smooth’, and click [Run].
  • O processo leva alguns instantes. Uma vez Terminado com sucesso apareça na Janela de saída, clique [Ver saída] e depois [fechar].

  • É possível mudar a cor do vetor para apresentar claramente o fundo matricial e para contrastar com as linhas de contorno originais. Você notará que as novas linhas de contorno têm cantos mais suaves do que o original, enquanto permanecer fiel à forma geral de origem.

Figure GRASS module 4:

../../../_images/grass_toolbox_vgeneralize.png

GRASS module v.generalize to smooth a vector map nix

Dica

Outros usos para r.contour

O procedimento acima descrito pode ser usado em outras situações equivalentes. Se você tem um mapa raster de dados de precipitação, por exemplo, então o mesmo método será usado para criar um mapa de vetores de linhas isoietas (chuvas constantes).

Criando um efeito 3D Sombreado

Vários métodos são usados ​​para exibir as camadas de elevação e dar um efeito 3D aos mapas. O uso de linhas de contorno como mostrado acima é um método popular, muitas vezes escolhido para produzir mapas topográficos. Outra forma de apresentar um efeito 3D é por sombreamento. O efeito sombreado é criado a partir de uma (elevação) raster DEM primeiro calculando a inclinação e aspecto de cada célula, em seguida, simulando a posição do sol no céu e dando um valor de reflectância a cada célula. Assim você tem enfrentando o sol encostas iluminadas e as encostas de costas para o sol (na sombra) são escurecidas.

  • Comece este exemplo por carregar o raster gtopo30 elevação . Inicie a caixa de ferramentas do GRASS e sob a categoria Raster duplo clique para abrir: menuselection: Análise espacial -> Análise do terreno.

  • Então, clique r.shaded.relief para abrir o módulo.

  • Change the azimuth angle selectnumber 270 to 315.
  • Enter gtopo30_shade for the new hillshade raster, and click [Run].
  • Quando o processo termina, adicione o raster sombreado ao mapa. Você deve vê-lo exibido em escala de cinza.

  • Para visualizar tanto o sombreamento e as cores do gtopo30 juntos, mude o mapa sombreado abaixo do mapa gtopo30 na tabela de conteúdos, em seguida, abra o: menuselection: janela de`Propriedades` gtopo30, mude para o: guilabel: guia transparência e defina seu nível de transparência em cerca de 25%.

Agora você deve ter a elevação gtopo30 com o seu mapa de cores e configuração de transparência apresentada acima o tons de cinza mapa sombreado. Para ver os efeitos visuais do sombreamento, desligue o mapa gtopo30_shade em seguida, ligue-o novamente.

Usando a linha de comando GRASS

O complemento GRASS em QGIS é projetado para os novos usuários do GRASS, e não estão familiarizados com todos os módulos e opções. Como tal, alguns módulos na caixa de ferramentas não mostram todas as opções disponíveis, e alguns módulos não aparecem em tudo. A linha de comando GRASS (ou console) dá ao usuário acesso a esses módulos GRASS adicionais que não aparecem na árvore da caixa de ferramentas, e também algumas opções adicionais aos módulos que estão na caixa de ferramentas com os parâmetros padrão mais simples. Este exemplo demonstra o uso de uma opção adicional para o módulo r.shaded.relief que foi mostrado acima.

Figure GRASS module 5:

../../../_images/grass_toolbox_shell.png

The GRASS shell, r.shaded.relief module nix

O módulo ** r.shaded.relief ** pode ter um parâmetro `` zmult `` que multiplica valores de elevação relativos às unidades de coordenadas XY, de modo que o efeito sombreado é ainda mais pronunciado.

  • Carregue o raster elevação gtopo30 como acima, em seguida, inicie a caixa de ferramentas GRASS e clique na linha de comando GRASS. Na janela, digite o comando r.shaded.relief map=gtopo30 shade=gtopo30_shade2 azimuth=315 zmult=3 e aperte [Enter].

  • Após o término do processo vá para: guilabel: guia ‘Buscar’ e dê um duplo clique sobre o novo raster gtopo30_shade2 para exibir no QGIS.

  • As explained above, shift the shaded relief raster below the gtopo30 raster in the Table of Contents, then check transparency of the colored gtopo30 layer. You should see that the 3D effect stands out more strongly compared to the first shaded relief map.

Figure GRASS module 6:

../../../_images/grass_toolbox_shadedrelief.png

Displaying shaded relief created with the GRASS module r.shaded.relief nix

Estatísticas Raster em um mapa vetor

O próximo exemplo mostra como um módulo GRASS pode agregar dados raster e adicionar colunas de estatísticas para cada polígono em um mapa vetor.

  • Novamente usando os dados do Alasca, consulte a: ref: sec_import_loc_data para importar o shapefile árvores do diretório shapefiles no GRASS.

  • Now an intermediary step is required: centroids must be added to the imported trees map to make it a complete GRASS area vector (including both boundaries and centroids).
  • Na caixa de ferramentas escolha: menuselection: Vetor -> Gerenciar recursos, e abra o módulo v.centroids.

  • Enter as the output vector map ‘forest_areas’ and run the module.
  • Now load the forest_areas vector and display the types of forests - deciduous, evergreen, mixed - in different colors: In the layer Properties window, Symbology tab, choose from Legend type selectstring ‘Unique value’ and set the Classification field to ‘VEGDESC’. (Refer to the explanation of the symbology tab :ref:sec_symbology in the vector section).
  • Próximo reabrir a caixa de ferramentas GRASS e abra: menuselection: Vetor -> Atualização de Vetor por outros mapas.

  • Clique no módulo v.rast.stats. Digite gtopo30, e forest_areas.

  • Only one additional parameter is needed: Enter column prefix elev, and click [run]. This is a computationally heavy operation which will run for a long time (probably up to two hours).
  • Finalmente abra a tabela de atributos forest_areas, e verifique que várias novas colunas foram adicionadas, incluindo elev_min, elev_max, elev_mean etc para cada polígono florestal.

Trabalhando com o buscador LOCALIZAÇÃO GRASS

Another useful feature inside the GRASS Toolbox is the GRASS LOCATION browser. In figure_grass_module_7 you can see the current working LOCATION with its MAPSETs.

Nas janelas esquerda do buscador você pode buscar por todos: arquivo: MAPSETs dentro do atual: arquivo: `LOCATION’. A janela direita do navegador mostra algumas meta informações para camadas selecionadas raster ou vetoriais, por exemplo, resolução, o retângulo envolvente, fonte de dados, tabela de atributos ligados para dados vetoriais e um histórico de comando.

Figure GRASS module 7:

../../../_images/grass_mapset_browser.png

GRASS LOCATION browser nix

A barra de ferramentas dentro do: guilabel: guia Busca oferece as seguintes ferramentas para gerenciar o selecionado: arquivo: LOCATION:

  • grass_add_map: guilabel:Adicione mapa selecionado à tela

  • grass_copy_map: guilabel:’Copiar mapa selecionado`

  • grass_rename_map :guilabel:’Renomeia mapa selecionado`

  • grass_delete_map: guilabel: ‘Exclua mapa selecionado`

  • grass_set_region: guilabel:’Defina região atual de mapa selecionado`

  • grass_refresh: guilabel: Atualizar janela de busca

A guilabel: grass_rename_map: Renomeia mapa selecionado e guilabel:grass_delete_map: ‘Exclua mapa selecionado`só trabalha com os mapas dentro do seu selecionado: arquivo:MAPSET. Todas as outras ferramentas também trabalham com camadas vetoriais e raster em outro: arquivo: MAPSET.

Personalizando a caixa de ferramentas GRASS

Quase todos os módulos GRASS podem ser adicionados à caixa de ferramentas GRASS. A interface XML está disponível para analisar os arquivos XML bastante simples, o que configura os módulos de aparência e parâmetros internos da caixa de ferramentas.

Um exemplo de arquivo XML para gerar o módulo v.buffer (v.buffer.qgm) se parece com isto:

<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE qgisgrassmodule SYSTEM "http://mrcc.com/qgisgrassmodule.dtd">

<qgisgrassmodule label="Vector buffer" module="v.buffer">
        <option key="input" typeoption="type" layeroption="layer" />
        <option key="buffer"/>
        <option key="output" />
</qgisgrassmodule>

The parser reads this definition and creates a new tab inside the toolbox when you select the module. A more detailed description for adding new modules, changing the modules group, etc. can be found on the QGIS wiki at http://hub.qgis.org/projects/quantum-gis/wiki/Adding_New_Tools_to_the_GRASS_Toolbox