I've been trying to export an animation with subplots. So far, the code is:
syms t;l1 = 38;l2 = 27;l3 = 09;T43 = [ 1 0 0 0 ; 0 1 0 0 ; 0 0 1 l1 ; 0 0 0 1 ];T76 = [ 1 0 0 0 ; 0 1 0 0 ; 0 0 1 l2 ; 0 0 0 1 ];T109= [ 1 0 0 0 ; 0 1 0 0 ; 0 0 1 l3 ; 0 0 0 1 ];video = VideoWriter('newfile.mp4','MPEG-4');open(video);for t = 1:1:100 teta1 = pi+pi/4*(cos((pi/50)*t)-1); % ponto de referência = pi (0) -- variação = ( 0 -- -180 )
teta2 = (pi/2)*sin((pi/50)*t); %(7/12)*sin((pi/50)*t); % ponto de referência = 0 (0) -- variação = (30 -- 0 -- -180 )
teta3 = 0; % ponto de referência = 0(0) -- variação = (-90 -- 0 -- 90 )
teta4 = pi/4*(cos((pi/50)*t)-1); % ponto de referência = 0 (0) -- variação = (0 -- -150 )
teta5= 0; % ponto de referência = 0 (0) -- variação = (-90 -- 0 -- 90 )
teta6= 0; % ponto de referência = 0 (0) -- variação = (-90 -- 0 -- 90 )
teta7= 0; % ponto de referência = 0 (0) -- variação = (-30 -- 30 )
R10 = [ 1 0 0 0 ; 0 cos(teta1) -sin(teta1) 0 ; 0 sin(teta1) cos(teta1) 0 ; 0 0 0 1 ]; R21 = [ cos(teta2) 0 -sin(teta2) 0 ; 0 1 0 0 ; sin(teta2) 0 cos(teta2) 0 ; 0 0 0 1]; R32 = [ cos(teta3) sin(teta3) 0 0 ; -sin(teta3) cos(teta3) 0 0 ; 0 0 1 0 ; 0 0 0 1 ]; R54 = [ cos(teta4) 0 -sin(teta4) 0 ; 0 1 0 0 ; sin(teta4) 0 cos(teta4) 0 ; 0 0 0 1]; R65 = [ cos(teta5) sin(teta5) 0 0 ; -sin(teta5) cos(teta5) 0 0 ; 0 0 1 0 ; 0 0 0 1 ]; R87 = [ 1 0 0 0 ; 0 cos(teta6) -sin(teta6) 0 ; 0 sin(teta6) cos(teta6) 0 ; 0 0 0 1 ]; R98 = [ cos(teta7) 0 -sin(teta7) 0 ; 0 1 0 0 ; sin(teta7) 0 cos(teta7) 0 ; 0 0 0 1]; A = [0 0 0]; Br = R10*R21*R32*T43; B = [ Br(1,4) Br(2,4) Br(3,4)]; Cr=R10*R21*R32*T43*R54*R65*T76; C = [ Cr(1,4) Cr(2,4) Cr(3,4)]; Dr = R10*R21*R32*T43*R54*R65*T76*R87*R98*T109; D = [ Dr(1,4) Dr(2,4) Dr(3,4)]; subplot(2,2,1) plot3( [A(1),B(1)] , [A(2),B(2)] , [A(3),B(3)] , 'k-o' , 'LineWidth' , 1.5 ) hold on plot3( [B(1),C(1)] , [B(2),C(2)] , [B(3),C(3)] , 'b-o' , 'LineWidth' , 1.5 ) hold on plot3( [C(1),D(1)] , [C(2),D(2)] , [C(3),D(3)] , 'r-o' , 'LineWidth' , 1.5 ) xlabel('x (cm)') , ylabel('y (cm)') , zlabel('z (cm)') title ( 'posição de referência ') text(A(1),A(2),A(3),' A') text(B(1),B(2),B(3),' B') text(C(1),C(2),C(3),' C') text(D(1),D(2),D(3),' D') axis ([-100 100 -100 100 -100 100]) grid on subplot(2,2,2) plot( [A(1),B(1)] , [A(2),B(2)] , 'k-o' , 'LineWidth' , 1.5 ) hold on plot( [B(1),C(1)] , [B(2),C(2)] , 'b-o' , 'LineWidth' , 1.5 ) hold on plot( [C(1),D(1)] , [C(2),D(2)] , 'r-o' , 'LineWidth' , 1.5 ) xlabel('x (cm)') , ylabel('y (cm)') title ( 'plano XY ') text(A(1),A(2),' A') text(B(1),B(2),' B') text(C(1),C(2),' C') text(D(1),D(2),' D') axis ([-100 100 -100 100 ]) grid on subplot(2,2,3) plot( [A(1),B(1)] , [A(3),B(3)] , 'k-o' , 'LineWidth' , 1.5 ) hold on plot( [B(1),C(1)] , [B(3),C(3)] , 'b-o' , 'LineWidth' , 1.5 ) hold on plot( [C(1),D(1)] , [C(3),D(3)] , 'r-o' , 'LineWidth' , 1.5 ) xlabel('x (cm)') , ylabel('z (cm)') title ( 'plano XZ ') text(A(1),A(3),' A') text(B(1),B(3),' B') text(C(1),C(3),' C') text(D(1),D(3),' D') axis ([-100 100 -100 100 ]) grid on subplot(2,2,4) plot( [-A(2),-B(2)] , [A(3),B(3)] , 'k-o' , 'LineWidth' , 1.5 ) hold on plot( [-B(2),-C(2)] , [B(3),C(3)] , 'b-o' , 'LineWidth' , 1.5 ) hold on plot( [-C(2),-D(2)] , [C(3),D(3)] , 'r-o' , 'LineWidth' , 1.5 ) xlabel('y (cm)') , ylabel('z (cm)') title ( 'plano YZ ') text(-A(2),A(3),' A') text(-B(2),B(3),' B') text(-C(2),C(3),' C') text(-D(2),D(3),' D') axis ([-100 100 -100 100 ]) grid on M(t) = getframe(); writeVideo(video,M); clfendclose(video);
The problem is that the exported mp4 file shows only the last subplot. Any help would be greatly appreciated, thanks in advance!
Best Answer