-1
我需要操縱矩陣vert來創建z軸的旋轉。使用Matlab的圖像旋轉
我將這個矩陣轉置並乘以矩陣旋轉...再次移調並嘗試排除在補丁函數中使用此四列。
可是事情似乎沒有工作,messagem會出現的是:
???錯誤使用==> mtimes 內部矩陣維度必須一致。
問題是在圖中使用[x y z;]的補丁函數,但對於矩陣旋轉,我需要列中的矩陣[x y z 1;]。
enter code here
clf;
figure(1);
format compact
h(1) = axes('Position',[0.2 0.2 0.6 0.6]);
vert = [1 1 -1 1;
-1 1 -1 1;
-1 1 1 1;
1 1 1 1;
-1 -1 1 1;
1 -1 1 1;
1 -1 -1 1;
-1 -1 -1 1];
fac = [1 2 3 4;
4 3 5 6;
6 7 8 5;
1 2 8 7;
6 7 1 4;
2 3 5 8];
theta = 30;
rotacaoz = [cos(theta) -sin(theta) 0 0;
sin(theta) cos(theta) 0 0;
0 0 1 0;
0 0 0 1];
vertices = vert';
vertices = vertices * rotacaoz;
vertices = vertices';
vertices(:,[3 4])=[]
patch('Faces',fac,'Vertices',vertices,'FaceColor','c'); % patch function
axis([-1, 1, -1, 1, -1, 1]);
axis equal;
hold on;
material metal;
alpha('color');
alphamap('rampdown');
view(3);
http://en.wikipedia.org/wiki/Matrix_multiplication#General_definition_of_the_matrix_product – chappjc