【问题标题】:How to embed animation into ParaView scene from script?如何将动画从脚本嵌入到 ParaView 场景中?
【发布时间】:2016-05-30 21:41:32
【问题描述】:

所以我尝试使用 Python 在 paraview 中为我的场景添加动画。我从wiki script 开始。动画仅在调用 scene.Play() 时播放。在播放 ParaView (在我的情况下为 5.0.1)时,卡在窗口付费动画中 - 场景在播放时无法旋转,按钮无法按下。如何通过脚本使编辑器在 ParaView 动画中保持活跃?

当我点击编辑器动画Play Scene按钮时,什么也没有播放。

我想知道如何将动画嵌入到场景中,以便它可以在 ParaView 编辑器中播放和保存?

【问题讨论】:

    标签: python animation vtk scene paraview


    【解决方案1】:

    那个 wiki 示例似乎有点过时了。

    改为在脚本中尝试:

    # get active source.
    sphere1 = GetActiveSource()
    
    # get animation track
    sphere1StartThetaTrack = GetAnimationTrack('StartTheta', index=0, proxy=sphere1)
    
    # create keyframes for this animation track
    
    # create a key frame
    keyFrame1 = CompositeKeyFrame()
    
    # create a key frame
    keyFrame2 = CompositeKeyFrame()
    keyFrame2.KeyTime = 1.0
    keyFrame2.KeyValues = [360.0]
    
    # initialize the animation track
    sphere1StartThetaTrack.KeyFrames = [keyFrame1, keyFrame2]
    
    # get animation scene
    animationScene = GetAnimationScene()
    animationScene.Play()
    

    您应该能够在动画运行时与可视化进行交互,并使用动画控件启动或停止它。

    请注意,我使用 ParaView 的 Python Trace 功能来获得此代码示例。

    【讨论】:

    • 顺便说一句,是否可以在动画期间的某个时间嵌入对象创建,或者它们都应在动画开始之前预先创建?
    • 我不知道您将如何在动画期间创建对象 - 最好在动画之前创建它们。
    猜你喜欢
    • 1970-01-01
    • 2019-07-06
    • 1970-01-01
    • 2014-04-05
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2017-10-27
    • 1970-01-01
    相关资源
    最近更新 更多