【发布时间】:2014-02-21 20:20:27
【问题描述】:
我正在寻找一种捕获键盘事件的方法,以便在 mayavi 动画中循环浏览不同的数据集。
我的基本循环是:
while 1:
time = TIME() - zero
wx.Yield()
atomsanim[:,:3] = atoms[:,3:]*cos(speed*time) + atoms[:,:3]
f.scene.disable_render = True
atom_index = 0
for t, p in zip(types, plots):
ms = p.mlab_source
start = atom_index
stop = atom_index+t
ms.set(x=atomsanim[start:stop,0],y=atomsanim[start:stop,1],z=atomsanim[start:stop,2])
atom_index += t
f.scene.disable_render = False
mlab.show()
【问题讨论】:
-
Mayavi 非常自然地支持鼠标选择,但不支持键盘事件。如果你真的需要键盘事件,你应该考虑添加一个
UserInteractorStyle。源代码在tvtk/tvtk_classes.zip/interactor_style_user.py。