同时显示几个vtk渲染窗口

时间:2016-03-04 10:27:59

标签: python python-2.7 rendering vtk itk

我正在使用vtk for python。我正在使用以下代码显示一些vtk网格:

def DisplayVTKMesh(mesh):
    mapper = vtk.vtkPolyDataMapper()
    mapper.SetInputData(mesh)
    actor = vtk.vtkActor()
    actor.SetMapper(mapper)
    actor.GetProperty().SetInterpolationToPhong()
    actor.GetProperty().SetAmbient(0.2)
    actor.GetProperty().SetDiffuse(0.7)
    actor.GetProperty().SetSpecular(0.6)
    actor.GetProperty().SetSpecularPower(100)
    actor.GetProperty().SetColor(0.8,0.8,1)
    ren1 = vtk.vtkRenderer()
    ren1.AddActor(actor)
    ren1.SetBackground(1, 1, 1)
    renWin = vtk.vtkRenderWindow()
    renWin.AddRenderer(ren1)
    renWin.SetSize(300, 300)
    iren = vtk.vtkRenderWindowInteractor()
    iren.SetRenderWindow(renWin)
    style = vtk.vtkInteractorStyleTrackballCamera()
    iren.SetInteractorStyle(style)
    iren.Initialize()
    iren.Start()

我正在加载不同的网格并在for循环中调用上面的函数,因为我希望每个网格都有一个窗口。 问题是它显示了一个卷,它等待我关闭窗口以显示下一个卷。 如何同时显示多个窗口,而不是一次只显示一个窗口,必须关闭它才能显示下一个窗口?

1 个答案:

答案 0 :(得分:1)

我使用多处理模块解决了它,每个窗口运行一个进程。