从Python IDLE控制Paraview GUI


问题内容

我正在尝试使用IDLE交互地控制Paraview。这将涉及从IDLE发送命令并查看Paraview中发生的更改。我宁愿不使用In-Paraview
python shell。

到目前为止,我已经成功地从IDLE导入了Paraview模块(简单,服务器管理器等)。但是,发送的命令不会反映在Paraview中。例如:

>>> from paraview.simple import *
>>> cone = Cone()
>>> Show()
>>> Render()

确实会产生圆锥。但是,锥体将输出到一个新的独立OpenGL窗口,而不是Paraview GUI。

是否可以使用IDLE交互地控制Paraview?如果是这样,该如何完成?谢谢


问题答案:

您需要在多客户端/服务器模式下运行paraview。在终端中运行pvserver。

./bin/pvserver --multi-clients

在另一个终端中,运行paraview并连接到服务器

./bin/paraview
File->Connect
AddServer -> Choose a name -> Configure -> Save
Connect

在第三个终端中,运行pvpython(或您自己配置的python)

./bin/pvpython
>> from paraview.simple import *
>> Connect("localhost")
>> Cone()
>> Show()