参数动画关键的两个概念:
参数变量FrameNumber。
关键帧的定义,
动画运行期间,FrameNumber变量的值从0更新到最后一帧的值,每进行到一帧,模型就要从头开始更新跟FrameNumber相关的变量,所有相关变量刷新后的模型的当前视图作为当前帧,如此循环,直到完成所有帧的更新,然后我们就可以看到由这些不同的帧组成的动画了。
由以上描述可知,参数动画通常只用来做一些较为简单的变形动画,也可以做一些复杂的动画,只是需要构建较为复杂的参数引用,并且对电脑的硬件运算也要求较高。本小节我们只做一个较为简单的四杆机构,通过该实例让大家了解参数动画的制作步骤和相关知识。
点击【菜单】-【视图】-【可视化】-【创建动画】,打开参数动画的对话框,
进入参数动画对话框,删掉列表栏里的默认default,将系统默认的点选项切换到定义关键帧,在名称里面输入本次制作动画的名称:四杆机构,点击添加/复制按钮,列表栏显示出刚刚创建的基于关键帧的参数动画名称如图所示。
点击关键帧按钮,进入到关键帧设置对话框,参数动画默认需要一个计数为零的关键帧,默认名称Frame0,点击关键帧名称可进入编辑模式,更改后需要点击更新帧确认。第一关键帧步数不可更改,如果更改其步数为非0的整数,会弹出图示警告框。
这里我们创建两个关键帧frame1和frame2,并解释一下动画播放期间这三个关键帧的关系,名称栏输入frame1,步数输入24,过渡因子默认,点击添加/复制,将frame1关键帧添加到列表栏中,同理创建关键帧frame2,创建后如图所示。
动画播放期间,动画从起始帧Frame0开始,累加到Frame0+23,然后再从关键帧Frame1开始。累加到Frame1+35,FrameNumber的值从0~59,整个动画的总帧数为60(0~59)帧,累加过程如下图所示。
完成关键帧的设定后,接下来我们需要创建如图示FrameNumber表达式,并将FrameNumber这个参入引入模型机构尺寸的定义中。
本案例我们用之前的四杆机构,通过改变每一帧四杆机构AB杆的初始定义角度来建立参数动画,所以我们需要将FrameNumber这个参数变量引入到曲柄的角度定义中,这里我们让曲柄转两圈,则每一帧,曲柄的角度增量为720/60=12°,曲柄AB的初始角度的定义应该为120+FrameNumber*12。
在参数动画中,FrameNumber的起始值为0,需要特别注意尽量避免出现零尺寸的定义,以此四杆机构为例,如果动画播放期间某一帧曲柄的角度值更新到0(180和360类同),则下一帧在更新角度值的时候存在一个不确定性的方向问题,有可能造成出错,为避免出现这种情况发生,我们可以在原先初始值基础上加一个微小的值避免0尺寸的出现,此处曲柄AB的初始角度可以改为120+FrameNumber*12+0.01。
完成四杆机构曲柄角度的定义后,我们再次打开参数动画对话框,就可以进行参数动画的预览了,在点击预览动画按钮之前,还有一个关键的操作,否则是看不到动画效果的,点击关键帧后面的参数,将更新表达式勾选上,然后在返回到参数对话框,点击预览动画按钮,弹出预览动画操作界面,点击播放按钮即可观看到四杆机构的动画效果。
参数动画播放期间,图形区弹出工作进行中的窗口如图所示,窗口提示栏给出模型更新的相关信息,此时的视图无法进行移动或者旋转操作,如果发现视图的方向和模型显示的大小不便于观察,则回到关键帧对话框选中需要更改关键帧,并将模型的视图调整到合适的位置,然后再点击更新帧,确认关键帧的更改,本案例一共三个关键帧,如果三个关键帧的视图显示不一致,动画期间视图也会出现相应的变换动画效果,做某些案例可以利用多个关键帧进行视图的动画效果。
本案例我们只是对模型的一个角度做了变量的引入,如果想做复杂一点的动画,可以对模型的多个变量进行变量的引入,通过条件表达式,表达式抑制等工具,可以做出很多复杂的变形动画,这个是运动仿真模块所做不到的。
1.png (137.52 KB, 下载次数: 68)
欢迎光临 UG爱好者 (https://www.ugsnx.com/) | Powered by Discuz! X3.2 |