exponenta event banner

Вычислить градиент, уклон и аспект из обычной сетки данных

В этом примере показано, как вычислить градиент, наклон и аспект для обычной сетки данных. Градиентные компоненты - это изменение переменной сетки на метр расстояния в северном и восточном направлениях. Уклон определяется как изменение отметки на единицу расстояния вдоль пути наиболее крутого подъема или спуска от ячейки сетки к одному из восьми ближайших соседей, выраженное как арктангенс. Если сетка содержит отметки в метрах, то сторона и уклон являются углами нормали поверхности по часовой стрелке с севера и вверх от горизонтали. gradientm функция использует метод конечных разностей для вычисления градиентов для регулярной или географической сетки данных. Функция возвращает компоненты градиента в северном и восточном направлениях (т.е. с севера на юг, с востока на запад), а также наклон и аспект. По умолчанию углы находятся в единицах градусов.

Построение сетки «100 на 100» с помощью peaks и создайте для него ссылочную матрицу.

datagrid = 500*peaks(100);
gridrv = [1000 0 0];

Создайте сетки, содержащие аспекты, уклон, градиенты на север и градиенты на восток.

[aspect,slope,gradN,gradE] = gradientm(datagrid,gridrv);

Отображение данных поверхности в цилиндрическую проекцию равной площади. Начните с исходных отметок.

axesm eqacyl
meshm(datagrid,gridrv)
colormap (jet(64))
colorbar('vert')
title('Peaks:  elevation')
axis square

Figure contains an axes. The axes with title Peaks: elevation contains an object of type surface.

Очистите рамку и отобразите сетку откоса.

clma
meshm(slope,gridrv)
colorbar('vert');
title('Peaks: slope')

Figure contains an axes. The axes with title Peaks: slope contains an object of type surface.

Сопоставьте сетку сторон.

clma
meshm(aspect,gridrv)
colorbar('vert');
title('Peaks: aspect')

Figure contains an axes. The axes with title Peaks: aspect contains an object of type surface.

Отобразить градиенты на север.

clma
meshm(gradN,gridrv)
colorbar('vert');
title('Peaks: North gradient')

Figure contains an axes. The axes with title Peaks: North gradient contains an object of type surface.

Нанесите градиенты на восточную карту.

clma
meshm(gradE,gridrv)
colorbar('vert');
title('Peaks: East Gradient')

Figure contains an axes. The axes with title Peaks: East Gradient contains an object of type surface.