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

На втором рисунке показан эффект добавления изокапов к той же изоповерхности.

Некоторые дополнительные применения изокапов показаны в следующих примерах:
Изокапы, как и изо-поверхности, создаются как patch графические объекты. Используйте isocaps команда для создания данных для передачи patch. Например:
patch(isocaps(voldata,isoval),... 'FaceColor','interp',... ...'EdgeColor','none')
создает изокапы для скалярных данных тома voldata по значению isoval. Необходимо создать изоповерхность с использованием тех же данных объема и изовалюты для обеспечения соответствия кромок изоповерхностей.
Настройка патча FaceColor свойство для interp приводит к раскраске, которая сопоставляет значения данных, покрываемые изокапой, с записями карты цветов. Можно также задать другие свойства фрагмента для управления влиянием освещения и раскраски на изокапы.
В этом примере показано, как задать характеристики окраски и освещения при работе с изокапами. Существует пять основных этапов:
В этом примере используется 3-D массив случайных (rand) данные для определения данных тома. Затем данные сглаживаются (smooth3).
data = rand(12,12,12); data = smooth3(data,'box',5);
Использовать isosurface и patch для создания изоповерхности и задания свойств окраски и освещения. Уменьшите AmbientStrength, SpecularStrength, и DiffuseStrength отраженного света для компенсации яркости двух источников света, используемых для обеспечения более равномерного освещения.
Пересчитать нормали вершин изоповерхности для получения более гладкого освещения (isonormals).
isoval = .5; h = patch(isosurface(data,isoval),... 'FaceColor','blue',... 'EdgeColor','none',... 'AmbientStrength',.2,... 'SpecularStrength',.7,... 'DiffuseStrength',.4); isonormals(data,h)
Определите isocaps с использованием тех же данных и изовалюты, что и изоповерхность. Укажите интерполированную раскраску и выберите карту цветов, которая обеспечивает лучшие контрастные цвета с синей изоповерхностью, чем цвета в карте цветов по умолчанию (colormap).
patch(isocaps(data,isoval),... 'FaceColor','interp',... 'EdgeColor','none') colormap hsv
Установите пропорции данных в значение [1,1,1] чтобы дисплей был в правильных пропорциях (daspect). Устраните пробел в осях и установите вид на 3-D (axis
tight, view).
daspect([1,1,1]) axis tight view(3)
Чтобы добавить довольно равномерное освещение, но все же воспользоваться способностью источников света делать видимые тонкие изменения формы, в этом примере используются два источника света, один слева и один справа от камеры (camlight). Используйте освещение Гуро для создания наиболее плавного изменения цвета (lighting).
camlight right camlight left
