Documentation

vrpatch2ifs

Convert MATLAB patches to IndexedFaceSet nodes

Syntax

node = vrpatch2ifs(patches,world)
node = vrpatch2ifs(patches,shape)
node = vrpatch2ifs(patches,parent)
vrpatch2ifs(patches,ifs)

Description

example

node = vrpatch2ifs(patches,world) converts the patches array and saves the result into the vrnode array node. Each resulting IndexedFaceSet node in node is wrapped by the created Shape node residing in a root level of the world virtual world.

node = vrpatch2ifs(patches,shape) converts the patches array and saves the result into the vrnode array node. Each resulting IndexedFaceSet node in node is a child of the respective Shape node in the shape array. If the Shape node already contains an IndexedFaceSet node, that IndexedFaceSet is overwritten. The number of patches must equal the number of Shape nodes.

Note

This function converts only geometry and color data of the patch.

node = vrpatch2ifs(patches,parent) converts the patches array and saves the result into the vrnode array node. Each resulting IndexedFaceSet node in node is wrapped by the created Shape node that is a child of the parent node.

vrpatch2ifs(patches,ifs) converts the patches array and saves the result into ifs array of existing IndexedFaceSet nodes, overwriting the IndexedFaceSet nodes. The number of patches must equal the number of IndexedFaceSet nodes.

Examples

collapse all

This command converts three MATLAB® patches to IndexedFaceSet nodes.

Create surface using MATLAB peaks function.

fig = figure('Name','Source peaks surface');
s = surf(peaks);

Convert the peaks surface to a patch.

peaksPatch = patch(surf2patch(s));
delete(s);
shading interp;

Create and open an empty virtual world.

w2 = vrworld('');
open(w2);

Create and bind viewpoint

dv = vrnode(w2, 'DefaultViewpoint','Viewpoint');
dv.position  = [-1 15 30];
dv.orientation = [-0.38 -0.93 0 0.55];
setfield(dv,'set_bind',true); %#ok<STFLD,SFLD>

Convert the patch to an IndexedFaceSet nodes. The resulting nodes are created in the root level of supplied vrworld object)

vrpatch2ifs(peaksPatch,w2);

Show the result.

vrfig2 = vrfigure(w2,'Name',...
         'Virtual world containing resulting IndexedFaceSet node');

Input Arguments

collapse all

MATLAB patches, specified as an array.

Virtual world that contains Shape nodes, specified as a vrworld object.

Parent grouping node, specified as a vrnode object.

Shape array, specified as an array of Shape nodes.

IndexedFaceSet nodes, specified as an array.

Output Arguments

collapse all

Conversion result, returned as a vrnode array.

Introduced in R2015a

Was this topic helpful?