c = cos(45*pi/180); s = sin(45*pi/180); Rz45 = [c,s,0,0;-s,c,0,0;0,0,1,0;0,0,0,1]; c = cos(20*pi/180); s = sin(20*pi/180); Ry20 = [c,0,-s,0;0,1,0,0;s,0,c,0;0,0,0,1]; Tdisp = Ry20' * Rz45; t = [0:0.01:1]; y = t; r = (0.25 - (y-0.5).^2) .^ 0.5; x = r .* cos(10*pi*t); z = r .* sin(10*pi*t); BALL = [x;y;z;x.^0]; c = cos(1*pi/180); s = sin(1*pi/180); Rx = [1,0,0,0;0,c,s,0;0,-s,c,0;0,0,0,1]; Ry = [c,0,-s,0;0,1,0,0;s,0,c,0;0,0,0,1]; Rz = [c,s,0,0;-s,c,0,0;0,0,1,0;0,0,0,1]; I = eye(4,4); T = eye(4,4); for i=1:10000 T(3,4) = 0; T = Rz*T; T(3,4) = sin(i*0.01); Display3D(T*BALL, Tdisp); pause(0.01); end