發布企業信息

Matlab 實時動畫制作示例

作者:未知  信息來源:未知  2006-1-26

字體大小:  網友評論  進入論壇  

5 實時動畫10。3 動畫制作示例【 * 例 10。3-1 】制作紅色小球沿一條帶封閉路徑的下旋螺線運動的實時動畫。m 演示紅色小球沿一條封閉螺線運動的實時動畫% 僅演示實時動畫的調用格式為 anim_zzy1(K)% 既演示實時動畫又拍攝照片的調用格式為 f=anim_zzy1(K,ki)% K 紅球運動的循環數(不小于 1 )% ki 指定拍攝照片的瞬間...
10.7.5 實時動畫
10.7.5.3 動畫制作示例

【 * 例 10.7.5 .3-1 】制作紅色小球沿一條帶封閉路徑的下旋螺線運動的實時動畫。

(1)編寫函數文件 anim_zzy1.m

[anim_zzy1.m]

function f=anim_zzy1(K,ki)

% anim_zzy1.m 演示紅色小球沿一條封閉螺線運動的實時動畫

% 僅演示實時動畫的調用格式為 anim_zzy1(K)

% 既演示實時動畫又拍攝照片的調用格式為 f=anim_zzy1(K,ki)

% K 紅球運動的循環數(不小于 1 )

% ki 指定拍攝照片的瞬間,取 1 到 1034 間的任意整數。

% f 存儲拍攝的照片數據,可用 image(f.cdata) 觀察照片。

% 產生封閉的運動軌線

t1=(0:1000)/1000*10*pi;x1=cos(t1);y1=sin(t1);z1=-t1;

t2=(0:10)/10;x2=x1(end)*(1-t2);y2=y1(end)*(1-t2);z2=z1(end)*ones(size(x2));

t3=t2;z3=(1-t3)*z1(end);x3=zeros(size(z3));y3=x3;

t4=t2;x4=t4;y4=zeros(size(x4));z4=y4;

x=[x1 x2 x3 x4];y=[y1 y2 y3 y4];z=[z1 z2 z3 z4];

plot3(x,y,z, 'b' ), axis off % 繪制曲線

% 定義 " 線 " 色、 " 點 " 型(點)、點的大小( 40 )、擦除方式( xor)

h=line( 'Color' ,[1 0 0], 'Marker' , '.' , 'MarkerSize' ,40, 'EraseMode' , 'xor' );

% 使小球運動

n=length(x);i=1;j=1;

while 1 % 無窮循環

set(h, 'xdata' ,x(i), 'ydata' ,y(i), 'zdata' ,z(i)); % 小球位置

drawnow; % 刷新屏幕 <21>

pause(0.0005) % 控制球速 <22>

i=i+1;

if nargin==2 & nargout==1 % 僅當輸入宗量為 2 、輸出宗量為 1 時,才拍攝照片

if (i==ki&j==1);f=getframe(gcf); end % 拍攝 i=ki 時的照片 <25>

end

if i>n

i=1;j=j+1;

if j>K; break ; end

end

end

 

(2)在指令窗中運行以下指令,就可看到實時動畫圖形。

f=anim_zzy1(2,450);

 

(3)顯示拍攝的照片

image(f.cdata),axis off


圖 10.7.5 .3-1 紅球沿下旋螺線運動的瞬間照片

分頁:
Google


推薦圖文

廣告

機械熱點圖文

  • 數控車床加工編程典型實例分析2
  • 內螺紋車削加工——數控車床編程實例42
  • 子程序編程方法-數控車床編程實例36
  • 塑料模具動畫演示

機械風云人物

Copyright © 2004 51base.com Inc. All rights reserved.

無憂基地 版權所有│粵ICP備06098418號│XHTML | CSS

客服:+86-755-2212 2202 工作時間:周1~5 10點~16點

感謝中國網絡提供帶寬支持

《網絡營銷技巧》