exponenta event banner

Сопоставление подреза с объектами освещения

В этом примере показано, как создать объект-источник света для имитации карты, созданной с помощью команды «Закрашенный подрез цветной поверхности», в которой используются вычисления закрашенного подреза, а не объекты-источники света.

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. The axes contains an object of type surface.

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

lightm(45,115,1)

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

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

daspectm('meters',50)

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

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

material([0.7 0.9 0.8])

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

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

lighting Gouraud

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

Удалите кромки ограничивающей рамки. Измените вид, указав азимут -30 ° и высоту 30 °.

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

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

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

clmo(handlem('light'))

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