2016-05-28 2 views
0

Donc j'essaye d'ajouter de l'animation à ma scène en paraview en utilisant Python. J'ai commencé avec wiki script. L'animation ne joue que lorsque scene.Play() est appelée. Pendant que vous jouez à ParaView (5.0.1 dans mon cas), vous êtes coincé avec une animation payante - la scène ne peut pas être tournée pendant la lecture, les boutons ne peuvent pas être poussés. Comment maintenir l'éditeur vivant dans l'animation ParaView à partir du script?Comment intégrer une animation dans une scène ParaView à partir d'un script?

De plus, lorsque je clique sur l'animation de l'éditeur, le bouton Play Scene ne joue aucun rôle.

Je me demande comment intégrer l'animation dans la scène pour qu'elle soit jouable et enregistrable depuis l'éditeur ParaView?

Répondre

2

Cet exemple de wiki semble être un peu daté.

Essayez ceci dans un script à la place:

# 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() 

Vous devriez être en mesure d'interagir avec la visualisation cours de l'animation et le démarrer ou l'arrêter avec les commandes d'animation.

Notez que j'ai utilisé la fonction Python Trace de ParaView pour arriver à cet exemple de code.

+0

BTW est-il possible d'incorporer la création d'objets à un moment donné pendant l'animation ou bien ils doivent tous être précréés avant le début de l'animation? – DuckQueen

+0

Je ne sais pas comment créer un objet pendant une animation - mieux vaut le créer avant de l'animer. –