Como medir a distância entre os pontos com base na elevação?

10

Eu preciso ser capaz de medir distâncias entre pontos, no entanto, a distância precisa ser calculada em relação à elevação. Os pontos são lares de contadores de histórias do século XIX e os lugares mencionados em suas histórias. A distância, portanto, deve ser "curta distância". Um caminho ao longo de um vale provavelmente será mais curto que um caminho sobre uma montanha, mesmo que a distância reta real seja menor. Em anexo está uma captura de tela que ilustra meu pensamento. Na imagem, os caminhos A e C seriam, portanto, calculados mais curtos que o caminho B.Pontos e elevação

Os pontos são de um arquivo CSV, mas também tenho uma camada raster com os dados de elevação.

traustid
fonte
1
Eu acho que seria melhor calcular o tempo de caminhada . A velocidade da caminhada depende da inclinação, e para cima leva mais tempo do que para baixo.
Andrej
1
Distância "3D" comparada à distância do mapa plano? A diferença é provavelmente menor do que você imagina. Peter Guth, o homem por trás do MICRODEM disse: "A distância ou área será aumentada pela secante do ângulo da encosta e, até chegar a encostas muito grandes, a secante é essencialmente 1".
N

Respostas:

6

Atingir esse objetivo é uma tarefa básica no GIS, no entanto, o método no QGIS pode não ser trivial. Sua melhor chance é usar a r.walkfunção GRASS , que cria uma superfície de custo anisotrópico (dem + inclinação + outros fatores).

Primeiro, você deve criar uma superfície de atrito como uma entrada para r.walk. No seu caso, pode ser uma varredura de valor único (1.0) que corresponde à extensão do seu DEM. Você pode criá-lo com r.mapcalculatora fórmula: A*0+1onde A é seu DEM.

Em seguida, você deve selecionar um conjunto de pontos de partida no seu CSV. Estes são os pontos, a partir da qual a superfície de custo acumulada será calculada. É necessário criar uma superfície de custo individual a partir de cada ponto de partida. Pode ser inteligente definir os pontos finais associados a todos os pontos de partida nesta etapa (em camadas individuais fora do curso). Depois, você pode executar r.walkcom as entradas criadas. Os pontos de partida podem estar em uma única camada, você pode iterá-los com a seta verde na caixa de diálogo.

Agora, em um caso ideal, você tem as superfícies de custo e os pontos finais para cada superfície de custo. Em teoria, você pode encontrar os caminhos de menor custo r.drain, mas, para mim, acabou com um erro (o python não pôde importar a biblioteca QgisRaster). Se você executar o mesmo problema, poderá usar o algoritmo "Menos caminhos de custo" da SAGA. Ele criará um ponto e uma camada de linha para cada ponto final com a superfície de custo (use o botão de iteração novamente). Depois de ter todas as linhas, é possível mesclá-las em um único arquivo de forma com a ferramenta "Mesclar formas de camadas" do SAGA.

Esse método pode ser muito lento com o incremento de pontos; portanto, se você tiver muitos deles, tente automatizar o método com python. Ainda será necessário muito tempo para calcular (especialmente as superfícies de custo), mas você não precisa criar toneladas de camadas de ponto final manualmente.

Gabor Farkas
fonte
Obrigado por isso, provavelmente terei que começar a aprender a usar o GRASS. Também acho que posso ter problemas. Na ilustração que publiquei, eu assumiria muitas das montanhas intransitáveis, então eu teria que adicionar algo como "se a montanha for maior que x, contorne-a" ... Mas obrigado pelo resposta, isso provavelmente me ajudará a começar.
traustid
Essa é uma condição fácil r.walk. Você pode usar o mapa de fricção para configurar as células intransitáveis. Reclassifique seu DEM com r.reclassregras como 1 thru 2000 = 1 2000 thru * = 9999em um arquivo de regras (se seu limite for 2000m). Dessa forma, o algoritmo não passa células com altos valores de atrito, será menos dispendioso.
Gabor Farkas
Muito obrigado por isso! Eu realmente não tenho muito conhecimento de GRASS, mas este é realmente um ótimo ponto de partida.
traustid
De nada. Para ser sincero, ainda estou impressionado com sua tarefa. Este é um dos melhores exemplos de como o GIS pode ser aplicado na mais ampla escala de disciplinas.
Gabor Farkas