isocaps

Вычисление геометрии заглушки изоповерхности

Синтаксис

fvc = isocaps(X,Y,Z,V,isovalue)
fvc = isocaps(V,isovalue)
fvc = isocaps(...,'enclose')
fvc = isocaps(...,'whichplane')
[f,v,c] = isocaps(...)
isocaps(...)

Описание

fvc = isocaps(X,Y,Z,V,isovalue) вычисляет геометрию заглушки изоповерхности для данных об объеме V в значении изоповерхности isovalue. Массивы XY, и Z задайте координаты для объема V.

Struct fvc содержит поверхность, вершину и цветные данные для заглушек и может быть передан непосредственно patch команда.

fvc = isocaps(V,isovalue) принимает массивы XY, и Z заданы как [X,Y,Z] = meshgrid(1:n,1:m,1:p) где [m,n,p] = size(V).

fvc = isocaps(...,'enclose') задает, заключают ли заглушки значения данных выше или ниже значения, заданного в isovalue. 'enclose' опцией может быть любой 'above' (значение по умолчанию) или 'below'.

fvc = isocaps(...,'whichplane') задает на который плоскости чертить заглушки. Возможные значения для 'whichplane' 'all' (значение по умолчанию), 'xmin'xmax ymin ymax zmin , или 'zmax'.

[f,v,c] = isocaps(...) возвращает поверхность, вершину и цветные данные для заглушек в трех массивах вместо struct fvc.

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

Примеры

свернуть все

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

Красная изоповерхность показывает схему объема (череп), и заглушки показывают то, что в объеме.

Закрашенная фигура создается из данных заглушки (p2) использование интерполировало окраску поверхности, что означает серую палитру, и источники света определяют, как это окрашено. Закрашенная фигура изоповерхности (p1) используемый плоский красный цвет поверхности, который затронут световыми сигналами, но не использует палитру.

load mri
D = squeeze(D);
D(:,1:60,:) = [];
p1 = patch(isosurface(D, 5),'FaceColor','red',...
	'EdgeColor','none');
p2 = patch(isocaps(D, 5),'FaceColor','interp',...
	'EdgeColor','none');
view(3)
axis tight
daspect([1,1,.4])
colormap(gray(100))
camlight left
camlight
lighting gouraud
isonormals(D,p1)

Figure contains an axes. The axes contains 2 objects of type patch.

Расширенные возможности

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