Warning: file_get_contents(/data/phpspider/zhask/data//catemap/7/user-interface/2.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
User interface 添加/删除vtkActor或调整其可见性更好吗?_User Interface_Vtk - Fatal编程技术网

User interface 添加/删除vtkActor或调整其可见性更好吗?

User interface 添加/删除vtkActor或调整其可见性更好吗?,user-interface,vtk,User Interface,Vtk,我正在编写一个GUI来显示包含几个标量和向量的vtkunsttructuredGrid。目标是让用户决定是要显示颜色贴图,还是要显示轮廓的向量场,还是只显示网格本身 这基本上给了我四个角色:一个用于贴图,一个用于轮廓,一个用于网格,最后一个用于颜色条。根据用户的选择,我需要单独显示网格,或者显示贴图和颜色栏,或者显示轮廓和颜色栏。我可以独立地准备每个参与者,并将它们存储为GUI的属性,以供以后访问 我想知道什么是仅呈现用户所需内容的最有效方法: 根据用例切换每个参与者的可见性(使用.SetVi

我正在编写一个GUI来显示包含几个标量和向量的
vtkunsttructuredGrid
。目标是让用户决定是要显示颜色贴图,还是要显示轮廓的向量场,还是只显示网格本身

这基本上给了我四个角色:一个用于贴图,一个用于轮廓,一个用于网格,最后一个用于颜色条。根据用户的选择,我需要单独显示网格,或者显示贴图和颜色栏,或者显示轮廓和颜色栏。我可以独立地准备每个参与者,并将它们存储为GUI的属性,以供以后访问

我想知道什么是仅呈现用户所需内容的最有效方法:

  • 根据用例切换每个参与者的可见性(使用
    .SetVisibility(True/False)
    ),或

  • vtkrender
    中添加/删除相应的参与者

如有任何见解,将不胜感激

---编辑---


一个推论是:当一个
vtkrender
渲染演员时,它是跳过不可见的演员,还是渲染他们,然后隐藏他们

您是否注意到性能差异或其他方面的问题?我会说这两种技术在运行时应该做完全相同的事情。

事实上,我没有尝试测量性能。从实用的角度来看,当我在我的小部件中保存一个参与者列表时,切换他们的可见性就更容易了,因为我将他们保存在一个列表中。直接从渲染器中删除参与者需要先找到它(对应的
vtkActorCollection
中的哪个条目)……如果没有性能差异,那么就做更简单的事情:)