Объединение разнородных сеток путем преобразования регулярной сетки в геолокированную сетку данных

В этом примере показов, как объединить повышение сетку данных и сетку данных атрибута (цвета), которые охватывают одну и ту же область, но имеют разную сетку. Пример разворачивает данные уклона из регулярной сетки данных на верхнюю часть повышений данных из геолокированной сетки данных. Пример использует геолокированную сетку данных в качестве источника для повышений поверхности и преобразует регулярную сетку данных в значения уклона, которые затем отбираются для соответствия геолокированной сетке данных (создание набора значений уклона для ромбовидной сетки) и кодируются цветом для отображения поверхности. Этот подход работает с любыми разнородными сетками, хотя два набора данных в этом примере на самом деле имеют один и тот же источник (геолокированная сетка выводится из topo60c набор данных).

Загрузите геолокированную сетку данных из mapmtx файл и регулярная сетка данных из topo60c файл. The mapmtx файл фактически содержит две области, но в этом примере используется только алмазообразный фрагмент, lt1, lg1, и map1, с центром на Ближнем Востоке.

load mapmtx lt1 lg1 map1 
load topo60c

Вычислите аспект поверхности, уклон и градиенты для topo60c. Этот пример использует уклоны только на последующих шагах.

[aspect,slope,gradN,gradE] = gradientm(topo60c,topo60cR);

Используйте geointerp функция для интерполяции значений уклона в геолокированную сетку, заданную lt1 и lg1 . Выходы представляют собой сетку повышений 50 на 50, соответствующую покрытию map1 переменная.

slope1 = geointerp(slope,topo60cR,lt1,lg1);

Настройте рисунок с проекцией Миллера и используйте surfm отображение данных уклона. Задайте значения z для поверхности явным образом как map1 данные, представляющие собой повышение местности. На карте в основном изображены крутые скалы, представляющие горы (Гималаи на северо-востоке), и континентальные шельфы и траншеи.

figure 
axesm miller
surfm(lt1,lg1,slope1,map1)

Figure contains an axes. The axes contains an object of type surface.

Окраска изображает крутизну склона. Измените палитру, чтобы сделать самые крутые склоны пурпурными, более нежные склоны темно-синими и плоские области светло-голубыми:

colormap cool

Figure contains an axes. The axes contains an object of type surface.

Использование view для получения юго-восточной перспективы поверхности с низкой точки зрения. В 3-D вы сразу же увидите топографию, а также склон.

view(20,30)
daspectm('meter',200)

Figure contains an axes. The axes contains an object of type surface.

При визуализации по умолчанию используется граненое затенение (без сплайна-интерполяции). Снова отобразите поверхность, на этот раз сделав ее блестящей с Гуро затенения и подсветки с востока (по умолчанию camlight освещает поверхности из-за правого плеча средства просмотра).

material shiny
camlight
lighting Gouraud

Figure contains an axes. The axes contains an object of type surface.

Наконец, удалите пустое пространство и повторно отобразите рисунок в перспективном режиме.

axis tight
ax = gca;
ax.Projection = 'perspective';

Figure contains an axes. The axes contains an object of type surface.