osgAnimation.BasicAnimationManager类是OpenSceneGraph中用于管理基本动画的类。它主要负责维护动画的状态,计算动画的时间并发送关键帧更新的通知。
BasicAnimationManager()
默认构造函数,创建一个空的BasicAnimationManager对象。
virtual void playAnimation(osgAnimation::Animation* animation, double weight = 1.0, double fadeInTime = 0.0)
播放指定的动画。
animation
参数 欲播放的Animation对象。weight
参数 欲播放的动画权重(默认值为1.0)。fadeInTime
参数 淡入动画所需的时间,以秒为单位(默认值为0.0)。virtual void stopAnimation(osgAnimation::Animation* animation, double fadeOutTime = 0.0)
停止指定的动画。
animation
参数 欲停止的Animation对象。fadeOutTime
参数 淡出动画所需的时间,以秒为单位(默认值为0.0)。virtual void stopAllAnimations(double fadeOutTime = 0.0)
停止所有动画。
fadeOutTime
参数 所有动画淡出所需的时间,以秒为单位(默认值为0.0)。virtual void update(double dt)
更新所有动画的状态并发送更新通知。
dt
参数 上一次调用此函数以来经过的时间,以秒为单位。virtual bool isPlaying(osgAnimation::Animation* animation) const
返回指定的动画是否正在播放。
animation
参数 欲查询的Animation对象。virtual double getWeight(osgAnimation::Animation* animation) const
返回指定的动画的权重。
animation
参数 欲查询的Animation对象。virtual void setWeight(osgAnimation::Animation* animation, double weight)
设置指定动画的权重。
animation
参数 欲设置权重的Animation对象。weight
参数 新的动画权重。virtual bool getPause(osgAnimation::Animation* animation) const
返回指定的动画是否已暂停。
animation
参数 欲查询的Animation对象。virtual void setPause(osgAnimation::Animation* animation, bool pause)
设置指定动画是否应暂停。
animation
参数 欲设置暂停状态的Animation对象。pause
参数 true表示暂停,false表示继续播放。virtual bool getLooping(osgAnimation::Animation* animation) const
返回指定的动画是否循环播放。
animation
参数 欲查询的Animation对象。virtual void setLooping(osgAnimation::Animation* animation, bool looping)
设置指定动画是否应循环播放。
animation
参数 欲设置循环播放状态的Animation对象。looping
参数 true表示循环播放,false表示只播放一次。virtual double getTimePosition(osgAnimation::Animation* animation) const
返回指定动画当前的时间位置。
animation
参数 欲查询的Animation对象。virtual void setTimePosition(osgAnimation::Animation* animation, double timePos)
设置指定动画的时间位置。
animation
参数 欲设置时间位置的Animation对象。timePos
参数 新的时间位置。virtual double getDuration(osgAnimation::Animation* animation) const
返回指定动画的总时长。
animation
参数 欲查询的Animation对象。virtual double getFadeInTime(osgAnimation::Animation* animation) const
返回指定动画的淡入时间。
animation
参数 欲查询的Animation对象。virtual void setFadeInTime(osgAnimation::Animation* animation, double fadeInTime)
设置指定动画的淡入时间。
animation
参数 欲设置淡入时间的Animation对象。fadeInTime
参数 新的淡入时间。virtual double getFadeOutTime(osgAnimation::Animation* animation) const
返回指定动画的淡出时间。
animation
参数 欲查询的Animation对象。virtual void setFadeOutTime(osgAnimation::Animation* animation, double fadeOutTime)
设置指定动画的淡出时间。
animation
参数 欲设置淡出时间的Animation对象。fadeOutTime
参数 新的淡出时间。