exponenta event banner

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

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

Загрузить геоориентированную сетку данных из mapmtx файл и регулярная сетка данных из topo60c файл. 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.