vrpatch2ifs

Преобразуйте закрашенные фигуры MATLAB в IndexedFaceSet узлы

Описание

пример

node = vrpatch2ifs(patches,world) преобразует patches array и сохраняет результат в vrnode массивы направленности node. Каждое полученное IndexedFaceSet узел в node обернута созданной Shape узел, находящийся на корневом уровне world виртуальный мир.

node = vrpatch2ifs(patches,shape) преобразует patches array и сохраняет результат в vrnode массивы направленности node. Каждое полученное IndexedFaceSet узел в узле является дочерним элементом соответствующего узла Shape в массиве фигур. Если узел Shape уже содержит IndexedFaceSet узел, что IndexedFaceSet перезаписан. Количество закрашенных фигур должно равняться количеству Shape узлы.

Примечание

Эта функция преобразует только геометрию и данные о цвете закрашенной фигуры.

node = vrpatch2ifs(patches,parent) преобразует patches array и сохраняет результат в vrnode массивы направленности node. Каждое полученное IndexedFaceSet узел в node обернута созданной Shape узел, являющийся дочерним элементом parent узел.

vrpatch2ifs(patches,ifs) преобразует patches array и сохраняет результат в ifs массив существующих IndexedFaceSet узлы, перезапись IndexedFaceSet узлы. Количество закрашенных фигур должно равняться количеству IndexedFaceSet узлы.

Примеры

свернуть все

Эта команда преобразует три закрашенные фигуры MATLAB ® в IndexedFaceSet узлы.

Создайте поверхность с помощью MATLAB peaks функция.

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

Figure Source peaks surface contains an axes. The axes contains an object of type surface.

Преобразуйте поверхность peaks в закрашенную фигуру.

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

Figure Source peaks surface contains an axes. The axes contains an object of type patch.

Создайте и откройте пустой виртуальный мир.

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

Создайте и привязайте точку зрения

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>

Преобразуйте закрашенную фигуру в IndexedFaceSet узлы. Получившиеся узлы создаются на корневом уровне поставляемых vrworld объект)

vrpatch2ifs(peaksPatch,w2);

Figure Source peaks surface contains an axes. The axes contains an object of type patch.

Показать результат.

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

Figure Virtual world containing resulting IndexedFaceSet node contains objects of type hgjavacomponent, uimenu, uipanel, uitoolbar.

Входные параметры

свернуть все

MATLAB закрашенных фигур, заданный как массив.

Виртуальный мир, содержащий Shape узлы, заданные как vrworld объект.

Родительский узел группирования, заданный как vrnode объект.

Массив фигур, заданный как массив Shape узлы.

IndexedFaceSet узлы, заданные как массив.

Выходные аргументы

свернуть все

Результат преобразования, возвращенный как vrnode массив.

Введенный в R2015a