autodataming的个人博客分享 http://blog.sciencenet.cn/u/autodataming

博文

Pymol 充分利用wizard中的get_prompt来实现添加legend

已有 2294 次阅读 2016-9-20 11:10 |系统分类:科研笔记

为了让蛋白质口袋的关键描述符能够显示在Pymol屏幕左上角,固定不动。

这里我推荐用get_prompt 函数实现,唯一的小技巧就是

get_prompt 以及__init__无法接受message变量,通过使用文件变量就可以解决这个问题。


············mywizard.py 放到wizard文件下面即可,由wizarding.py 负责管理加载

from pymol.wizard import Wizard

from pymol import cmd
message=['dfdd']
class Mywizard(Wizard):
   def __init__(self,_self=cmd):
       Wizard.__init__(self,_self)
       self.message=message

   def get_prompt(self):
       self.prompt=self.message
       return self.prompt

def showinfo(info):
   global message
   message=info
   #print message
   cmd.do('_ wizard mywizard')

def closeinfo( ):
   global message
   message=''
   cmd.do('_ wizard mywizard')
   


···

self.prompt 一定要是列表,否则不显示,利用这个特点可以实现关闭legend.

-------------------------------------

经过封装后,使用非常简单。

PyMOL>from pymol.wizard.mywizard import showinfo,closeinfo

PyMOL>showinfo(['aaaa','bbbb','cccc'])

PyMOL>closeinfo()



https://blog.sciencenet.cn/blog-950202-1003943.html

上一篇:Pymol wizard中的接口分析
下一篇:PyMOL多个版本的安装和使用
收藏 IP: 124.132.68.*| 热度|

0

该博文允许注册用户评论 请点击登录 评论 (0 个评论)

数据加载中...

Archiver|手机版|科学网 ( 京ICP备07017567号-12 )

GMT+8, 2024-4-28 18:23

Powered by ScienceNet.cn

Copyright © 2007- 中国科学报社

返回顶部