shrinkfaces

Сокращение размера поверхностей закрашенной фигуры

Синтаксис

shrinkfaces (p, sf)
nfv = shrinkfaces (p, sf)
nfv = shrinkfaces (fv, sf)
shrinkfaces (p)
nfv = shrinkfaces (f, v, sf)
[nf, nv] = shrinkfaces (...)

Описание

shrinkfaces(p,sf) уменьшает область поверхностей в закрашенной фигуре p, чтобы уменьшить факторный sf. Фактор уменьшения 0,6 уменьшений каждая поверхность к 60% ее исходной области. Если закрашенная фигура содержит совместно использованные вершины, MATLAB создает несовместно использованные вершины прежде, чем выполнить сокращение области поверхности.

nfv = shrinkfaces(p,sf) возвращает поверхность и данные вершины в struct nfv, но не устанавливает свойства Faces и Vertices закрашенной фигуры p.

nfv = shrinkfaces(fv,sf) использует поверхность и данные вершины от struct fv.

shrinkfaces(p) и shrinkfaces(fv) (не задавая фактор уменьшения) принимают фактор уменьшения 0,3.

nfv = shrinkfaces(f,v,sf) использует поверхность и данные вершины от массивов f и v.

[nf,nv] = shrinkfaces(...) возвращает поверхность и данные вершины в двух отдельных массивах вместо struct.

Примеры

свернуть все

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

Выберите данные потока в любой точке с помощью reducevolume и затем используйте isosurface, чтобы сгенерировать данные вершин и поверхности. Чертите первую изоповерхность. Затем настройте представление и добавьте заголовок.

[x,y,z,v] = flow;
[x,y,z,v] = reducevolume(x,y,z,v,2);
fv = isosurface(x,y,z,v,-3);
p1 = patch(fv);
p1.FaceColor = 'red';
p1.EdgeColor = [0.5 0.5 0.5];
daspect([1 1 1]); 
view(3); 
axis tight
title('Original')

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

figure
p2 = patch(shrinkfaces(fv,.3));
p2.FaceColor = 'red';
p2.EdgeColor = [0.5 0.5 0.5];
daspect([1 1 1]); 
view(3); 
axis tight
title('After Shrinking')

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

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

Была ли эта тема полезной?