Reduce size of patch faces
nfv = shrinkfaces(p,sf)
nfv = shrinkfaces(fv,sf)
nfv = shrinkfaces(f,v,sf)
[nf,nv] = shrinkfaces(...)
shrinkfaces(p,sf) shrinks the area of the
faces in patch
p to shrink factor
A shrink factor of 0.6 shrinks each face to 60% of its original area.
If the patch contains shared vertices, the MATLAB® software creates
nonshared vertices before performing the face-area reduction.
nfv = shrinkfaces(fv,sf) uses the face
and vertex data from the struct
specifying a shrink factor) assume a shrink factor of 0.3.
nfv = shrinkfaces(f,v,sf) uses the face
and vertex data from the arrays
[nf,nv] = shrinkfaces(...) returns the
face and vertex data in two separate arrays instead of a struct.
This example uses the flow data set, which represents the speed
profile of a submerged jet within an infinite tank (type
more information). Two isosurfaces provide a before and after view
of the effects of shrinking the face size.
accepts the face/vertex struct and draws the first (
shrinkfaces command modifies
the face/vertex data and passes it directly to
[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') 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')