Gerar edificações em 3D a partir de um shapefile com QGIS

Neste tutorial daremos continuidade nas funções do complemento Qgis2threejs. Este complemento oferece alguns recursos para trabalhar com 3D com QGIS. Nesta postagem mostraremos como gerar visualização em 3D a partir de um arquivo shapefile de edificações (polígono).

Anteriormente, mostramos como gerar 3D integrando o Google Maps com o Qgisthreejs. O Google Maps pode ser visualizado graças ao complemento Openlayers plugin, que também já mostramos aqui no blog.

Desta vez, usaremos como base o Open Street Maps (opção presente no Openlayers plugin), que, após instalado, está disponível no menu "Web" para versões posteriores a 2.4, além do shapefile de edificações.

Instalar o Qgis2threejs

O Qgis2threejs, está disponível no Repositório Oficial do QGIS. Para isto siga o menu Complementos > Gerenciar e Instalar Complementos... e digite qgis2threejs (a medida que for digitando a janela de diálogo irá filtrar), como mostra a figura 1, e clique em "Instalar complemento"

Figura 1. Instalação do Qgis2threejs.
  
Gerar edificações em 3D - opção 1

Com o complemento devidamente instalado, vamos preparar o dado. Carregue o arquivo de edificações e, em seguida, o OpenStreetMaps através do Open Layers plugin. Aproxime para região de interesse. Nesta primeira opção faremos o modo mais simples de 3D com altura única para todos os polígonos.

Clique no botão do Qgis2threejs, representado por este ícone: . Aparecerá a janela de configuração do complemento (Figura 2): 

1. Clique no nome do arquivo shapefile em "Polygon".
2. Em "Height (Fixed value)", do quadro "Style", defina a altura para todas as feições.
3. Clique em "Run", uma nova aba (ou seu navegador de internet) se abrirá com seu terreno em 3D. Ou "Browse" para salvar a aplicação em ".html".

Utilize o mouse (botão esquerdo, direito e o rolo central) para movimentar sua representação.

Figura 2. Altura única para todas as feições.
Resultado (figura 3):
Figura 3. Resultado da opção 1.

Gerar edificações em 3D - opção 2 

Nesta segunda opção teremos outra situação: como proceder para alturas diferentes? Isto é resolvido ao inserir uma coluna na tabela de atributos informando a altura de cada feição. De posse destes dados, siga os passos da figura 4:

1.  Em "Height" do quadro "Style", selecione a coluna da tabela de atributos que contem valores de altura de cada feição.
2. O valor 1 em "Multiplier" é padrão para ter valores iguais a coluna de altura da tabela de atributos


Figura 4. Edificações com diferentes alturas.

Resultado (figura 5):

Figura 5. Resultado da opção 2.

Gerar edificações em 3D - opção 3

Nesta 3ª opção exibiremos os rótulos com atributos de cada feição. Para isto, basta ativar a opção "Export attributes" (Figura 6).

1. Em "Label filed", selecione a coluna da tabela de atributos que será usada para rotulação (neste caso os valores de altura).
2. Em "Value" a altura do rótulo.


Figura 6. Exibição de rótulos.

Resultado (figura 7):


Figura 7. Resultado da opção 3.
Sobre o Qgis2threejs

Este plugin faz uso da biblioteca de three.js. Exporta objetos 3D para qualquer navegador que suporta WebGL. Desenvolvido por Minoru Akagi e mantido através do site https://github.com/minorua/Qgis2threejs. Sua última versão estável é 0.7.1 (acessado em 08.09.2014).