毕业设计(论文)-Matlab实现振动弹簧的实时动画.docVIP

毕业设计(论文)-Matlab实现振动弹簧的实时动画.doc

  1. 1、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。。
  2. 2、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  3. 3、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
  4. 4、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
  5. 5、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们
  6. 6、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
  7. 7、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
Matlab实现振动弹簧的实时动画 摘要: Matlab是当前应用最广泛的科学与工程计算软件之一,本次课设将Matlab引入到图形学动画设计.本次课设主要可分为两大步骤:一、应用Matlab对弹簧振子进行建模;二、应用Matlab实现弹簧振动的实时动画。其中建模部分包括对天花板的建模、对连接直线的建模、对弹簧的建模、对振动小球的建模。模拟弹簧振动的过程主要包括:①更新小球和弹簧的位置 ②更新水平线的位置和长度③实时地画出弹簧高度与时间的关系曲线。 目 录 1 绪论 1 1.1 matlab基本功能介绍 1 1.2 matlab的动画制作 2 2 振动弹簧的实时动画 4 2.1 程序功能分析 4 2.2 弹簧振子的matlab建模 6 2.2.1 天花板的建模 7 2.2.2直线的建模 8 2.2.3弹簧的建模 9 2.2.4球的建模 10 2.2.5 利用set函数返回句柄值改变来当前坐标轴 11 2.3 弹簧振动的实时动画 13 2.3.1弹簧振子简谐振动的物理模型 13 2.3.2 利用matlab实现弹簧的实时振动 14 2.4 调试结果 19 3 设计总结 23 参考文献 24 致谢 25 附录-弹簧阻尼振动程序 26 Matlab实现振动弹簧的实时动画 1 绪论 1.1 matlab基本功能介绍 MATLAB是由美国mathworks公司发布的主要面对科学计算、可视化以及交互式程序设计的高科技计算环境。它将数值分析、矩阵计算、科学数据可视化以及非线性动态系统的建模和仿真等诸多强大功能集成在一个易于使用的视窗环境中,为科学研究、工程设计以及必须进行有效数值计算的众多科学领域提供了一种全面的解决方案,并在很大程度上摆脱了传统非交互式程序设计语言(如C、Fortran)的编辑模式,代表了当今国际科学计算软件的先进水平。  MATLAB和Mathematica、Maple并称为三大数学软件。它在数学类科技应用软件中在数值计算方面首屈一指。MATLAB可以进行矩阵运算、绘制函数和数据、实现算法、创建用户界面、连接其他编程语言的程序等,主要应用于工程计算、控制设计、信号处理与通讯、图像处理、信号检测、金融建模设计与分析等领域。 图 1-1 matlab开发界面 MATLAB的基本数据单位是矩阵,它的指令表达式与数学、工程中常用的形式十分相似,故用MATLAB来解算问题要比用C,FORTRAN等语言完成相同的事情简捷得多,并且mathwork也吸收了像Maple等软件的优点,使MATLAB成为一个强大的数学软件。在新的版本中也加入了对C,FORTRAN,C++ ,JAVA的支持。可以直接调用,用户也可以将自己编写的实用程序导入到MATLAB函数库中方便自己以后调用FLASH等动画制作软件,都是基于这一原理,将现成图形图像进行处理和变化来制作动画的。Matlab是基于矩阵运算的工程科学计算软件,它不能简单的依靠图形图像的可视化编来制作动画,而是将矩阵、逻辑、函数等底层元素的变化通过图形外现来达到动画效果。在Matlab中,每一个图形元素就是一个对象,每个对象都有一个相应的唯一的标识符(句柄) ,并且每个对象都有一组可以根据需要进行调整的属性,对象的属性反映了对象的特征,通过设置、修改这些属性,用户可以灵活地改变、调整图形对象显示的方式。Matlab句柄图形的这一基本思想就是它实现动画功能的基本方法和重要原则。在Matlab中常用set语句来修改句柄图形对象的属性。基本语法为: set(H,‘PropertyName’, PropertyValue) , 其中H为图形句柄,PropertyName为属性名称, PropertyValue为属性值,Matlab中允许在一个语句中对同一图形句柄的多个不同属性值进行设置。在Matlab绘图中常用line函数来定义动画的基本变化元素,基本语法为: line ( x, y, z) ,其中x、y、z为坐标点数据。函数line句柄常用的属性有: Color (颜色) 、XData ( x轴数据) 、YData ( y轴数据) 、ZData ( z轴数据) 、EraseMode (擦除模式) 、L ineStyle (线型) 、Marker (点型) 、MarkerSize (点尺寸) 、Visible (可视性)等等。其中EraseMode是制作动画时非常关键的一个属性,其擦除属性的设置主要有四个可选值: (1)“normal”,缺省值,计算整个画面的数据,重画整个图形,这种模式产生的图形最准确, 但是速度最慢; ( 2 ) “back2ground将旧对象的颜色变为背景颜色,实现擦除,这种模式将损坏被擦除对象下面的对象,但新对象会正确着色; (3)“none”,不做任何擦除; (4)“

文档评论(0)

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

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

1亿VIP精品文档

相关文档