KnowledgeHub
Questions
Tags
Users
Search
Alex Rivera
|
Logout
Edit Question
Title
Body
I'm trying to make a video of the trajectories of particles. However, somehow my scene never updates. Here's a very simple example: from __future__ import absolute_import, division, print_function from mayavi import mlab import numpy as np import math alpha = np.linspace(0, 2*math.pi, 100) xs = np.cos(alpha) ys = np.sin(alpha) zs = np.zeros_like(xs) mlab.points3d(0,0,0) plt = mlab.points3d(xs[:1], ys[:1], zs[:1]) @mlab.animate(delay=100) def anim(): f = mlab.gcf() while True: for (x, y, z) in zip(xs, ys, zs): print('Updating scene...') plt.mlab_source.x[0] = x plt.mlab_source.y[0] = y plt.mlab_source.z[0] = z f.scene.render() yield anim() mlab.show() If I run this script, it shows a window with the two points and the animation GUI. It also prints a continous stream of "Updating Scene..." messages on the terminal. However, the scene doesn't show any movement at all. What am I doing wrong? Python 2.7, Mayavi 4.1, VTK 5.8
Tags (comma-separated)
Save Edits
Cancel