shaderel

Создайте cdata и палитру для теневого облегчения

Синтаксис

[cindx,cimap,clim] = shaderel(X,Y,Z,cmap)
[cindx,cimap,clim] = shaderel(X,Y,Z,cmap,[azim elev])
[cindx,cimap,clim] = shaderel(X,Y,Z,cmap,[azim elev],cmapl)
[cindx,cimap,clim] = shaderel(X,Y,Z,cmap,[azim elev],cmapl,clim)

Описание

[cindx,cimap,clim] = shaderel(X,Y,Z,cmap) создает палитру и цветные индексы, чтобы позволить поверхности быть отображенной в цветном теневом облегчении. Цвета пропорциональны значению Z, но измененные оттенками серого на основе поверхностных нормалей, чтобы моделировать поверхностную подсветку. Это представление позволяет и большим и небольшим различиям быть замеченными. X, Y и Z задают поверхность. cmap является палитрой, используемой, чтобы создать новую теневую палитру cimap. cindx является матрицей цветных индексов к cimap, на основе повышения и поверхности, нормальной из элемента матрицы Z. clim содержит цветные пределы по осям.

[cindx,cimap,clim] = shaderel(X,Y,Z,cmap,[azim elev]) помещает свет в заданном азимуте и повышении. По умолчанию направление света является Востоком (90º азимут) при повышении 45º.

[cindx,cimap,clim] = shaderel(X,Y,Z,cmap,[azim elev],cmapl) выбирает количество серых, чтобы дать cimap длины cmapl. По умолчанию количество шкал полутонов выбрано, чтобы сохранить теневую палитру ниже 256. Если вектор азимута и повышения пуст, местоположения по умолчанию используются.

[cindx,cimap,clim] = shaderel(X,Y,Z,cmap,[azim elev],cmapl,clim) использует цветные пределы, чтобы индексировать Z в cmap.

Примеры

Отобразите поверхность peaks с теневой палитрой:

[X,Y,Z] = peaks(100);
cmap = hot(16);
[cindx,cimap,clim] = shaderel(X,Y,Z,cmap);
surf(X,Y,Z,cindx); colormap(cimap); caxis(clim)
shading flat

Советы

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

Смотрите также

| | | | |

Представлено до R2006a