动画监听
动画播放监听
let aniTaskListener;
//初始化之后调用该方法去添加动画监听即可
function addAnimationListener(){
if (!aniTaskListener) {
aniTaskListener = new SView.Animation.AnimationTaskLinstener();
//进度条监听
aniTaskListener.updatePercent = function () {
//整体动画进度
let entiretyPercent = viewer.getAnimationPlayer().getPercent();
//当前步骤动画进度
let percent = viewer.getAnimationPlayer().getTaskPercent();
};
aniTaskListener.updateState = function (task, state) {
//更新播放状态
};
aniTaskListener.updateActive = function (task) {
//更新活动的步骤
}
viewer.getAnimationPlayer().addTaskListener(aniTaskListener);
}
}
动画命令监听
动画命令监听使用的是SView消息机制,在update方法中添加如下case
case SView.Commands.CommandNames.PLAYANIMATIONCOMMAND:
//动画播放命令消息
if(msg.state === SView.Commands.PlayAnimationCommand.LoadAnimationDataError) {
//动画数据加载错误
} else if(msg.state === SView.CommandMessageState.ExitView) {
//动画退出
}
break;