Como criar pontos em torno da borda dos resultados do viewhed?

8

Existe uma ferramenta ou módulo, ou várias ferramentas, no ArcGIS que permitirá automatizar a criação de pontos ao redor das bordas externas de um viewhed?

O que estou tentando fazer é reunir dados sobre as elevações nas partes mais distantes de um divisor de águas. Se eu tiver pontos, posso extrair os valores de elevação para a tabela de atributos e, em seguida, fazer cálculos de aumento / execução a partir do ponto original para possivelmente criar um diagrama de horizonte em algo como o excel.

Isso é possível?

CodeSpatial
fonte
Os pontos que você deseja são diferentes dos in_observer_features?
usar o seguinte texto
5
Considere converter seu ponto de vista em polígonos e execute os Vértices de Recurso em Pontos nos polígonos. Para uma solução mais exata, use a barra de ferramentas do editor para criar pontos regulares ao longo de uma polilinha que delineia o conjunto de vistas.
Aaron
2
Um máximo zonal de elevação por aspecto da distância negativa para o observador, mascarado pelo ponto de vista, produz uma tabela de pares (rumo, elevação); plotá-lo mostrará o horizonte sem qualquer outro cálculo.
whuber
3
@Aaron É difícil determinar o que pode ser uma "polilinha que delineia o ponto de vista", já que muitos pontos de vista são recursos altamente irregulares e desconectados.
whuber

Respostas:

8

Um perfil do horizonte representa a aparente elevação da demarcação céu-terra contra a direção da vista (o "azimute").

Exemplo

Neste gráfico, a "altitude ajustada" mede o ângulo de visão (mostrado como 1000 vezes sua tangente). Foi obtido a partir de um DEM, calculando primeiro o ponto de vista de uma torre de incêndio de 20 metros em um local próximo ao meio:

Viewshed

Este DEM sombreado em colina foi colorido com cores de terreno padrão (azul = baixo, marrom e cinza = alto) e mascarado no ponto de vista. A tangente do ângulo de visão pode ser encontrada subtraindo a altitude da torre do DEM original e dividindo os resultados pela distância. Aqui está uma versão desmascarada e sombreada. As maiores alterações (relativas ao DEM original) ocorrem perto do local do observador, é claro:

Ângulo de elevação

O cálculo final precisa coletar a elevação máxima de visualização em todas as direções. Como já calculamos a grade de distância, as direções de visualização podem ser obtidas simplesmente computando seu aspecto:

Aspecto da distância

Estes são ângulos que variam de 0 a 360 graus. Particione-os em faixas discretas de ângulos de visão. Um cálculo simples serve: por exemplo, pegue a parte inteira para obter intervalos de um grau. Por fim, um máximo de zona (certificando-se de usar apenas as elevações e os aspectos da visualização mascarados no viewhed) produz uma tabela dos resultados:

Tabela max. Zonal

Estes são os dados plotados no início desta resposta (ajustados em 180 graus porque o aspecto de uma grade de distância é o inverso do rumo real do ponto de vista).


Para recapitular, os cálculos são:

  1. O ponto de vista em si.

  2. Uma grade de distância euclidiana para o local do observador.

  3. Uma elevação relativa (ou seja, uma subtração ) dividida pela grade de distância para fornecer a elevação de visualização.

  4. O aspecto da grade de distância.

  5. Uma versão discreta da grade de aspecto para criar zonas.

  6. Um resumo zonal da elevação da visualização (zonas são aspectos).

Todos, exceto o primeiro - que já está disponível na pergunta - são operações rápidas, fáceis de executar, mesmo em enormes DEMs.


Ao calcular a elevação da visão, você poderia compensar a curvatura da Terra e a refração da luz através da atmosfera, diminuindo as elevações mais distantes por uma função quadrática da distância, obtendo assim um perfil realista do que é realmente visto. Consulte "Correções de curvatura e refração" na ajuda do ArcGIS Spatial Analyst .

whuber
fonte
1
Obrigado! Este é um ótimo começo para mim. Como você criou o gráfico do horizonte mostrado acima? Isso é algo no ArcGIS? Existe uma maneira de extrair os valores do gráfico? Especificamente a altitude e seu azimute correspondente?
CodeSpatial
1
A plotagem foi feita a partir dos dados mostrados na tabela final como os campos [Valor] e [Máx]. Qualquer software que faça um gráfico a partir de (x, y) dados funcionará; este foi feito pelo Mathematica.
whuber
1
OK eu vejo. Como faço os cálculos mencionados em "3", "5" e "6" no ArcGIS? Entendo por que eles são necessários, mas não tenho certeza da execução.
precisa saber é o seguinte
2
Coloquei hiperlinks para o sistema de ajuda dentro da recapitulação para você.
whuber
1
É uma tabela do ArcView 3.3 que estou vendo? Impressionante! :)
Hornbydd