4

QVTKRenderWindowInteractor我使用小部件类在 PySide/vtk GUI 上工作。小部件运行良好,除非我尝试使用以下方式添加方向轴(见图)vtkOrientationMarkerWidget

axesActor = vtk.vtkAxesActor();
axes = vtk.vtkOrientationMarkerWidget()
axes.SetOrientationMarker(axesActor)
axes.SetInteractor(self.iren)
self.ren.AddActor(axesActor)
axes.EnabledOn() # <== application freeze-crash
axes.InteractiveOn()

已经为 ubuntu 报告了一个类似的错误,表明该错误仅使用Qt 示例重现,而没有 Qt 的相同示例运行良好。

这种行为有什么解决办法吗? 在此处输入图像描述

4

1 回答 1

6

从 Nicholas R. Rypkema 那里得到了这个答案:

https://nrr.mit.edu/blog/note-about-vtk-pyqt-and-vtkorientationmarkerwidget

长话短说:这将解决您的问题

axesActor = vtk.vtkAxesActor();
self.axes = vtk.vtkOrientationMarkerWidget()
self.axes.SetOrientationMarker(axesActor)
self.axes.SetInteractor(self.iren)
self.ren.AddActor(axesActor)
self.axes.EnabledOn() # <== application freeze-crash
self.axes.InteractiveOn()
于 2017-06-22T13:39:06.240 回答