监听 ctf otf 变化与 mayavi 体积渲染中的特征

listen for ctf otf changes with traits in mayavi volume rendering

我想听听传递函数在如何表示我的数据的颜色和不透明度 (ctf/otf) 方面的变化。

听听诸如 mayavi.modules.volume.Volume._ctf 之类的听起来合理的特征不会触发我的回调。

我希望用户可以通过 "standard" mayavi 管道显示(作为 EngineRichView 的一部分)或通过直接包含 Volume 对象的视图来更改它。无论如何都没有这样的运气。

这可能表明当您按下大红色 "record" 按钮时,记录器似乎也没有注意到用户对 ctf 的更改。

你将涉足危险的领域。正如您所指出的,记录器具有特殊行为——这真正意味着它使用功能以编程方式 "disable" 在它做事时发出特征通知。

您可能会想出一种方法来做到这一点,但很可能您必须深入研究分配 vtk 模块的代码。

最有意义的可能是让您编写一个完全符合您要求的 GUI。也就是说,您可以制作一个 GUI 并添加一个显示 "Change volume color" 的按钮,而不是先听 Volume._ctf 之类的声音,然后打开菜单并更改颜色,然后单击该按钮会将用户带到色轮。然后只需听取您明确编码的 GUI 元素即可。