Вспомогательное отображение со световыми объектами

То В этом примере показано, как создать световой объект, чтобы подражать карте, произвело в Цветном Поверхностном Теневом Облегчении, которое использует теневые вспомогательные расчеты, а не световые объекты.

meshlsrm и surflsrm функции симулируют подсветку путем изменения палитры с полосами легких и темного. Матрица карты затем преобразована в индексы для новой "теневой" палитры на основе расчетных поверхностных нормалей. Используя световые объекты допускает широкий спектр эффектов освещения. Тулбокс управляет световыми объектами с lightm функция, которая зависит от MATLAB® light функция. Световые сигналы являются отдельными графическими объектами MATLAB.

Для получения дополнительной информации консультируйтесь со страницами с описанием для lightm, daspectm, material, lighting, и view, наряду с Освещением, прозрачность и затенение.

Осветите цветные 3-D вспомогательные карты со световыми объектами

Добавьте источник света в поверхность, окрашенную сеткой данных с помощью lightm. Во-первых, загрузите данные о вертикальном изменении и географический объект ссылки ячеек для корейского полуострова. Отобразите данные без эффектов освещения с помощью meshm. Примените палитру, подходящую для данных о вертикальном изменении с помощью demcmap. Устраните дополнительный пробел вокруг карты с помощью tightmap.

load korea5c
axesm('miller','MapLatLimit',[30 45],'MapLonLimit',[115 135])
meshm(korea5c,korea5cR,size(korea5c),korea5c)
demcmap(korea5c)
tightmap

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

Поместите источник света в северо-западном углу сетки, одна степень высоко, с помощью lightm. lightm функция похожа на функцию MATLAB® light, но принимает входные параметры широты и долготы вместо x, y, и z. Обратите внимание на то, что фигура становится более темной.

lightm(45,115,1)

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

Преувеличьте измерение по вертикали, чтобы сделать любое облегчение просматриваемым в перспективе. Обратите внимание на то, что фигура становится более темной все еще.

daspectm('meters',50)

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

Установите окружающую среду (прямую), рассеянную (окно в крыше), и зеркальный (подсветка) характеристики отражающей способности поверхности, соответственно.

material([0.7 0.9 0.8])

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

По умолчанию подсветка является плоской (плоские фасеты). Измените свет, чтобы использовать штриховку Гура (интерполированные векторы нормали в фасетных углах).

lighting Gouraud

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

Удалите ребра ограничительной рамки. Измените представление путем определения азимута-30º и высоты 30º.

ax = gca;
ax.Box = 'off';
view(-30,30)

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

Если существует только один свет в текущей фигуре, можно удалить его с помощью clmo.

clmo(handlem('light'))

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

Для просмотра документации необходимо авторизоваться на сайте