如何在 Python-VTK 中禁用 VTK 的热键
How to disable VTK's hotkey in Python-VTK
我想在 Python 版本中禁用一些 VTK 热键。虽然存在 C++(可能还有 js)的答案 here,但它似乎不适用于 Python 版本。
我尝试在我的 InterfactionStyle 或我的 QVTKRenderWindowInteractor 上重载 OnKeyPress 但它不起作用。例如,我想禁用键“w”和“s”上的 wireframe/surface 视图开关。
在vtkInteractorStyle::OnChar中定义。
所以尝试用类似的东西重载这个方法:
class MyInteractorStyle(vtk.vtkInteractorStyleTrackballCamera):
def __init__(self, parent = None):
self.AddObserver('CharEvent', self.OnChar)
def OnChar(self, obj, event):
if obj.GetInteractor().GetKeyCode() == "w":
return
super(MyInteractorStyle, obj).OnChar()
我想在 Python 版本中禁用一些 VTK 热键。虽然存在 C++(可能还有 js)的答案 here,但它似乎不适用于 Python 版本。
我尝试在我的 InterfactionStyle 或我的 QVTKRenderWindowInteractor 上重载 OnKeyPress 但它不起作用。例如,我想禁用键“w”和“s”上的 wireframe/surface 视图开关。
在vtkInteractorStyle::OnChar中定义。 所以尝试用类似的东西重载这个方法:
class MyInteractorStyle(vtk.vtkInteractorStyleTrackballCamera):
def __init__(self, parent = None):
self.AddObserver('CharEvent', self.OnChar)
def OnChar(self, obj, event):
if obj.GetInteractor().GetKeyCode() == "w":
return
super(MyInteractorStyle, obj).OnChar()