Matlab новичок здесь. У меня проблема с пониманием того, как использовать patch(), используя структуру с заданными вершинами и гранями. Это простая проблема и, вероятно, легко решаемая, но, думаю, мне может понадобиться немного вдохновения. Я написал следующие примеры строк после прочтения документации, связанной с исправлениями, которую я нашел:
Z = struct('VoV',[0 0 0; 0 1 0; 0 1 1; 0 0 1],'VoF',[1 2 3 4]);
patch(Z);
Вместо нужного четырехугольника я получил ошибку:
Error using patch
Unrecognized property VoV for class Patch.
Любая помощь будет очень высоко ценится :)
Берем пример со страницы справки MATLAB для patch
:
clear S
S.Vertices = [2 4; 2 8; 8 4; 5 0; 5 2; 8 0];
S.Faces = [1 2 3; 4 5 6];
S.FaceVertexCData = [0; 1];
S.FaceColor = 'flat';
S.EdgeColor = 'red';
S.LineWidth = 2;
figure
patch(S)
Похоже, что имена полей, которые вам нужны, Vertices
и «Лица», а не VoV
и FoV
.
Спасибо, не знаю, откуда я взял, что имена полей не имеют значения.