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

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:

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:

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:

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:

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:
O ponto de vista em si.
Uma grade de distância euclidiana para o local do observador.
Uma elevação relativa (ou seja, uma subtração ) dividida pela grade de distância para fornecer a elevação de visualização.
O aspecto da grade de distância.
Uma versão discreta da grade de aspecto para criar zonas.
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 .