pymol忽略python脚本中的隐藏对象

时间:2017-06-20 23:02:52

标签: python pymol

我正在编写一个python脚本,从PyMol命令行运行,以绘制特定核之间的距离。它运行!我现在要做的是仅在PyMol查看器中未隐藏的链之间绘制距离。这将是方便的,因为它允许我简单地打开PDB文件,隐藏我不需要的链,并运行脚本仅在所示的链上绘制距离。这可能吗?

理想情况下,我在以下行中有一个if语句:

if cmd.hide(object) == False:
    cmd.distance(...)

要清楚,我明白cmd.hide()可能无法作为布尔值运行。我一直在查看PyMol文档,但还没有找到类似的东西。

谢谢!

1 个答案:

答案 0 :(得分:0)

您可以使用selection keyword visible(缩写为v.)仅选择可见的对象。例如,如果要列出所有可见对象,可以使用以下脚本:

visible_objects = cmd.get_object_list('(visible)')
for obj in visible_objects:
    print(obj)