Atualizando parcialmente a varredura (DEM)?

8

Como atualizar um DEM .img no ArcView 9.3?

Eu tenho DEM que precisa ser atualizado apenas se houver poucas partes. A área a ser atualizada foi produzida em DEM separado com interpolação de spline com barreiras.

A área a ser atualizada em si é em forma de S, mas recebi um DEM retangular maior (aliás. Esperava receber o valor de -9999 fora das barreiras, mas parece que a área externa também foi interpolada).

Meu objetivo é atualizar apenas a área dentro da polilinha / barreiras. Como fazer isso?

Tomek
fonte
Embora a questão seja específica do DEM, o desafio e a solução não são. O mesmo processo pode ser aplicado a qualquer conjunto de camadas rasterizadas (imagem). Obrigado por trazer o Tomek.
precisa saber é o seguinte

Respostas:

8

Você precisa usar um operador condicional . A lógica é:

Result = If {new DEM has values, use them} 
         Else {use values from the original DEM}.

Como alternativa, isso pode ser expresso como

Result = If {new DEM does not have values, use original DEM}
         Else {use the new DEM}.

No ArcView, a sintaxe varia com a versão: há uma sintaxe para as versões até 3.3, outra até 9.3 e uma nova sintaxe na 10.0. (Sem dúvida, a sintaxe continuará mudando a cada poucos anos, e é por isso que é tão importante argumentar sobre o GIS de maneira independente de software.) A expressão alternativa é mais simples no ArcView. Sua sintaxe 9.3 parece

CON( IsNull([New DEM]), [DEM], [New DEM] )

De maneira mais geral, suponha que o novo DEM inclua alguns valores que você não deseja usar, mas você tem outra grade - representando seu polígono - indicando onde deseja que o novo DEM substitua o antigo. Vamos chamar essa grade de polígonos de "I". Essa variante seria expressa como

CON( IsNull([I]), [DEM], [New DEM] )

Como você pode ver, o procedimento é bastante geral: você tem uma grade "base" (o DEM original), uma nova grade contendo valores que você deseja "corrigir" sobre a grade base e uma grade "zona" indicando onde o patch deveria estar. Uma expressão condicional implementa o patch da grade . Essa abordagem permite corrigir grades em qualquer GIS baseado em varredura que suporte álgebra de mapas.

whuber
fonte
você é demais!
Brad Nesom
Sem dúvida, explicação muito clara. Muito obrigado. Talvez, um dia eu vou ajudar alguém :)
Tomek
Para obter a sintaxe mais recente, consulte a página de ajuda atual CONem help.arcgis.com/en/arcgisdesktop/10.0/help/index.html#/Con/… .
whuber