我想听听传递函数中如何表示数据的颜色和不透明度(ctf/otf)的变化。
听mayavi.modules.volume.volume_ctf等听起来合理的特征不会触发我的回调。
我希望用户可以通过"标准"mayavi管道显示(作为EngineRichView的一部分)或直接包含Volume对象的视图来更改此设置。无论如何都没有这样的运气。
这可能说明,当你按下红色的"记录"按钮时,记录器似乎也不会注意到用户对ctf的更改。
你将要涉足危险的领域。正如您所注意到的,记录器具有不同步的行为——这真正意味着它在做事时使用功能以编程方式"禁用"特征通知。
你可能会想出一种方法来实现这一点,但最有可能的是,你必须深入研究分配vtk模块的代码。
对您来说,最有意义的可能是编写一个可以完全按照您的意愿进行操作的GUI。也就是说,您可以制作一个GUI并添加一个按钮,上面写着"更改音量颜色",而不是听Volume._ctf
之类的东西,然后打开菜单并更改颜色,当单击该按钮时,用户会看到一个色轮。然后,只需要监听您显式编码的GUI元素。