教案matlab动画技术.pptVIP

  1. 1、本文档共43页,可阅读全部内容。
  2. 2、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
  3. 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  4. 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
  5. 5、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
  6. 6、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们
  7. 7、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
  8. 8、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
教案matlab动画技术

例 作动画演示peaks图形逐渐趋近于平面的过程。 p=peaks(11); h=axes(Position,[0,0,1,1],visible,off) for i=1:10 p1=p/i;surf(p1) set(h,Zlim,[0 10]) axis off; pause(0.3) end 程序运行时,随着i的增加,曲面的高度逐渐缩小,形成了动画效果。为了更好的观察,设置固定了坐标系的Z轴范围为[0 10]。 * 例 作动画演示一个图形逐渐演化成peaks图形的过程。 p=peaks(16);s=sphere(15); for i=30:-2:1 p1=s+p/i;surf(p1);axis off;pause(0.1); end 程序中,先使用peaks函数产生图形数据,再使用sphere函数产生数据,然后对这些数据进行组合,实现从一个图形到peaks图形的转变。下图是一些中间帧。 * 注:sphere函数产生数据后,使用surf函数对这些数据进行绘制不能产生球体。而是类似于上图中的第一个图形。 [X1,Y1,Z1]= peaks(16); [X2,Y2,Z2]=sphere(15); for i=1:5:100 Z3=Z1/i+Z2; surf(X2,Y2,Z3) axis square off pause(0.1) end 如果演示从 sphere 曲面变成一个球体,可以使用下面程序。 * 路径动画 路径动画制作方法也是动画制作软件常用的一个方法。首先为动画设定一个路径,路径可以是规则的几何曲线,也可以是手工绘制的曲线;然后先把物体放到始点位置,再放到终点位置,确认后,让物体沿曲线运动。 三维物体路径动画制作过程中,需要处理好消隐问题。根据使用的具体语言或软件来处理消隐问题,Matlab语言函数可以自动实现消隐,三维软件也都可以自动处理消隐问题;但是象C 语言、VB等就没有提供这方面的功能。 使用Matlab可以很容易地实现路径动画。 * 例 作一个球体沿一段正弦曲线运动。 x=0:0.1:1; y=sin(x); h=axes(Position,[0,0,0.1,0.1]) for i=1:10 set(h,Position,[x(i),y(i),0.1,0.1]) sphere(15); axis off pause(0.1) end 因为程序中的正弦曲线是自变量取 0~1 之间的一段,所以,看上去像是沿直线运动。程序关键是每次重新设置绘图坐标轴的起始位置。 * 例 作一个球体沿正弦曲线运动一个周期。 修改前一页中的程序如下: 该程序能够实现一个球体沿正弦曲线运动一个周期。如下图所示。 x=0:0.1:2*pi; y=sin(x); h=axes(Position,[0,0,0.1,0.1]) for i=1:62 set(h,Position,[x(i)/(2*pi),y(i)/(2*pi)+0.5,0.1,0.1]) sphere(15);axis off;pause(0.1); end * 图中的曲线是使用语句后加入的。 * 例 作一个球体沿随机曲线运动。 下例演示的是一个球体沿随机曲线运动的动画。 y=rand(1,30); axis off h1=axes(Position,[0,0,1,1]) plot(y) axis off h=axes(Position,[0,0,0.1,0.1]) for i=1:30 set(h,Position,[i/30,y(i),0.1,0.1]) sphere(15);axis square off pause(0.1) end * 上述程序的运行结果如下图所示。 一个球体沿着随机曲线运动 * 例 作一个球体沿空间中一条曲线运动。 从上面几个例子可以看出,只要给出路线,就可以沿着路线绘制物体,形成路径动画。 [X1,Y1,Z1]=sphere(15); x=1:0.1:pi;y=sin(x)*10;z=cos(x)*10; for i=1:31 X2=X1+x(i)*10;Y2=Y1+y(i)*10; Z2=Z1+z(i);surf(X2,Y2,Z2) axis square off pause(0.1) end 上面例题是一个三维物体绕一个平面曲线运动,下面例子实现了一个球体沿着一条空间曲线运动。 程序使用了球体的三

文档评论(0)

ranfand + 关注
实名认证
文档贡献者

该用户很懒,什么也没介绍

1亿VIP精品文档

相关文档