我可视化标量场,该标量场是在规则但非正交的情况下定义的,而不是与'x''y''z'坐标网格对齐。通过将数据放入常规网格并应用仿射变换(如此
),体积可视化可以完美地工作self.volume_data_plot = self.scene.mlab.pipeline.volume(self.data_src3d)
aff_m = ... # set affine matrix
m=tvtk.Matrix4x4()
m.from_array(aff_m)
# apply scaling matrix to volume data
self.volume_data_plot.actors[0].poke_matrix(m)
self.volume_data_plot.update_pipeline()
但是,当我尝试做相同数据的2D切割平面时,我迷路了。我试过image_plane_widget
和scalar_cut_plane
没有成功:他们没有演员来应用仿射变换。或者,至少,我找不到如何获得它们。 Mayavi帮助系统也没有用处:只记录了一些微不足道的东西。有人可以帮忙吗?