資源描述:
《有趣的matlab動畫演示程序匯總》由會員上傳分享,免費在線閱讀,更多相關(guān)內(nèi)容在行業(yè)資料-天天文庫。
1、MATLAB動畫演示程序匯總1.彈性蹦球演示程序figure(1);%定義函數(shù)axis([-5.1,5,-0.05,1.05]);%繪制二維圖形holdon;%保持當(dāng)前圖形及軸系所有的特性axis('off');%覆蓋坐標(biāo)刻度,并填充背景%通過填充繪出臺階及兩邊的擋板fill([4.12,4.22,4.22,4.12],[-0.05,-0.05,1.05,1.05],'y');fill([-5,-3.2,-3.2,-5],[-0.05,-0.05,0,0],'g');fill([-3.2,-2.8,-2.8,-3.2],[-0.05,-0.05,0.
2、2,0.2],'g');fill([-3.2,-1.4,-1.4,-3.2],[0.2,0.2,0.25,0.25],'g');fill([-1.4,-1,-1,-1.4],[0.2,0.2,0.45,0.45],'g');fill([-1.4,0.4,0.4,-1.4],[0.45,0.45,0.5,0.5],'g');fill([0.4,0.8,0.8,0.4],[0.45,0.45,0.7,0.7],'g');fill([0.4,2.0,2.0,0.4],[0.7,0.7,0.75,0.75],'g');fill([2.0,2.3,2.3,2.
3、0],[-0.05,-0.05,0.75,0.75],'g');fill([2.3,4.12,4.12,2.3],[-0.05,-0.05,0,0],'g');%x2=line([-5,5],[0.25,0.25],'color','g','linestyle','-','markersize',50)%設(shè)置臺階邊框線,顏色,擦試方式%line([-5,5],[0.5,0.5],'color','b','linestyle','-','markersize',50)%設(shè)置球與地面接觸面的顏色,擦試方式%line([-5,5],[0.75,0.75],
4、'color','b','linestyle','-','markersize',50)%設(shè)置球與地面接觸面的顏色,擦試方式head=line(-5,1,'color','r','linestyle','.','erasemode','xor','markersize',60);%設(shè)置小球顏色,大小,線條和擦試方式%body=line(-5,1,'color','b','linestyle','-','erasemode','none');%描繪軌跡線%設(shè)置初始條件while1t=4;dt=0.001;w=0;dw=0.001;w=0;%設(shè)置球彈起的
5、初始位置%設(shè)置球彈起的高度whilet<=4.12t=dt+t;ifw<=1w=dw+w;elsew=-1;endy=(-w*w)+1;set(head,'xdata',t,'ydata',y);%設(shè)置球的運動%set(body,'xdata',t,'ydata',y);%描繪軌跡線drawnow;end%結(jié)束程序w=0;%設(shè)置球彈起的初始位置%設(shè)置球彈起的高度whilet>=2.11t=t-dt;ifw<=1w=dw+w;elsew=-1;endy=(-w*w)+1;set(head,'xdata',t,'ydata',y);%設(shè)置球的運動%set
6、(body,'xdata',t,'ydata',y);%描繪軌跡線drawnow;end%結(jié)束程序w=0;%設(shè)置球彈起的初始位置%設(shè)置球彈起的高度whilet>=1.11t=t-dt;ifw<=1w=dw+w;elsew=-1;endy=(-w*w)/4+1;set(head,'xdata',t,'ydata',y);%設(shè)置球的運動%set(body,'xdata',t,'ydata',y);%描繪軌跡線drawnow;end%結(jié)束程序w=-0.71;%設(shè)置球彈起的初始位置%設(shè)置球彈起的高度whilet>=-0.62t=t-dt;ifw<=1w=dw
7、+w;elsew=-1;endy=(-w*w)/2+1;set(head,'xdata',t,'ydata',y);%設(shè)置球的運動%set(body,'xdata',t,'ydata',y);%描繪軌跡線drawnow;end%結(jié)束程序w=-0.71;%設(shè)置球彈起的初始位置%設(shè)置球彈起的高度whilet>=-2.31t=t-dt;ifw<=1w=dw+w;elsew=-1;endy=(-w*w)/2+0.75;set(head,'xdata',t,'ydata',y);%設(shè)置球的運動%set(body,'xdata',t,'ydata',y);%描繪
8、軌跡線drawnow;end%結(jié)束程序w=-0.71;%設(shè)置球彈起的初始位置%設(shè)置球彈起的高度whilet>