Adicionar feições no relevo

Por mais interessante que seja um modelo tridimensional de relevo, ele representa apenas uma variável – a elevação. Para torná-lo mais útil ainda, é necessário projetar novas informações, como estradas, rios, áreas ou, até, sítios arqueológicos inteiros. O principal problema está ligado ao fato que um SIG é essencialmente bidimensional. As informações de altitude podem ser representadas com cores diferentes, e a rede hidrográfica visualizada por cima, mas todas continuam sendo imagens planas. Antes de passar tudo isso em 3D, os dados precisamos ser tratados e preparados.

Preparar o terreno

Idealmente, o modelo 3D é montado quando todos os dados vetoriais estão definidos e projetados no QGIS. Isso importa porque precisamos preparar o terreno. Sim, o modelo não é destinado a ser uma reprodução exatíssima da natureza, apenas uma síntese. Alias, como é o caso para todo mapa, toda ilustração. Importante então, é conseguir expôr os parâmetros utilizados. Começamos com uma área de trabalho reduzida, composta por um raster de elevação, um shapefile de hidrografia e outro com um polígono indefinido. Extraimos as curvas de nível do raster.

tutob1

Os dados vetoriais de hidrografia são geralmente compostos por linhas. O primeiro passo consiste em transformá-los em polígonos. Para isso, criamos um tampão (buffer) e definimos a largura, arbitrariamente, em 10 metros. Porque 10 metros, sabendo que pode ser maior ou menor (ou seco)? Porque é necessário determinar alguma forma.

tutob3

 Em seguida, importa efetuar uma limpeza das curvas de nível. QGIS desenha aritmeticamente os dados fornecidos, sem se preocupar com os eventuais resultados tridimensionais. Resultado, em muitos casos, a rede hidrográfica acaba atravessando encostas ou serras laterais. Para isso, asseguramos que o rio sempre passa por terrenos planos no fundo dos vales. Aproveitamos também para retirar as curvas menores, que cobrem áreas muito pequenas.

Projetar

Quando os dados estão prontos, podemos importar os três shapefiles no Blender, com o plugin BlenderGIS. Criamos logo um mesh a partir das curvas de nível, e logo aparece o principal problema: o rio e o polígono são totalmente planos, sem informações de altitude. Para aplicá-los no relevo, devemos fazer uma projeção com um modifier chamado shrinkwrap (em português, envelope).

tutob4

Selecionando o rio, definimos um shrinkwrap com as seguintes opções: Target = TIN, Mode = Project, Axis = Z, Direction = Negative. O resto é deixado em branco ou na opção padrão. Ainda não aplicaremos o modifier.

tutob5

tutob6

Infelizmente, o shrinkwrap não é suficiente. Quando o rio muda de nível, quando ele atravessa uma curva de nível, Blender não consegue acompanhar a declividade porque não há informações suficientes. Para representar o curso d’água, QGIS não precisa de muitos vértices e estes são postos apenas nos meandros (quando o rio vira para esquerda ou direita). As quedas não são calculadas porque tudo é bidimensional. Para nós, no entanto, estas informações são importantes.

Uma primeira solução consiste em selecionar o objeto e passar em modo edição. Podemos subdividí-lo criando novos vértices ao longo das arestas. Isso pode ser feito várias vezes, porém não resolve o problema por completo. Por mais preciso que seja o mesh, mesmo com um milhão de vértices, sempre haverá um intervalo minúsculo entre a curva de nível e o curso d’água. Por isso, vamos ter que fazer terraplanagem.

Geomorfologia digital

Para resolver este tipo de problema, vamos precisar escavar o solo, deixando espaço livre para a passagem do rio – um pouco como o processo natural de formação de vales fluviais. O mecanismo é relativamente simples, mas envolve algumas transformações. Basicamente, vamos criar um volume com o formato do rio e adicionar um modifier boolean no TIN, para retirar a diferença entre este volume e o relevo.

Primeiro, precisamos dar volume ao próprio relevo. O modifier boolean não funciona com o plano que temos atualmente. Em modo edição, selecionando todos os vértices do relevo (as pontas dos triângulos Delaunay), precisamos extrudar (tecla E) para baixo, no eixo Z (tecla Z). Pode ser 10, 100 ou 1.000 metros, pouco importa. Depois, saimos do modo edição.

tutob7

Segundo, vamos duplicar o mesh do rio, deixando ele no mesmo lugar que o original, e extrudar (tecla E) para cima, sempre no eixo Z (tecla Z). Novamente, pode ser 10, 100 ou 1.000 metros, pouco importa. Devemos então rebaixar ele para entrar em contato com o TIN.

tutob8

Quando isso está feito, com o TIN selecionado, aplicamos um modifier boolean, com a opção Difference e o alvo apontando para a cópia do rio em volume. Um vale é cavado no TIN ao longo do percurso do rio. Podemos deixar o volume invisível, sem renderizar. O mesh original (plano) aparece agora normalmente.

tutob10

tutob9

tutob11

Eis o resultado final, aplicando uma rampa de cores com o botão Terrain Analysis do BlenderGIS, no Cycles Render. O rio desliza tranquilamente no seu vale.

 tutob12

Deixe uma resposta

O seu endereço de e-mail não será publicado. Campos obrigatórios são marcados com *