- A > preset > pretty
蛋白質分子就會以緞帶的方式顯示,顏色則是用彩虹方式表示,從紅色(C端)到深藍色從(N端)。現在希望加入一項功能,一樣是用緞帶方式表示結構,但顏色則是根據二級結構:紅色是alpha helix、黃色是beta sheet、綠色則是coil。操作方式則是變成依序點選
- A > preset > pretty (2nd structure)
這邊修改的PyMOL是Mac版本。首先,先到MacPyMOL的資料夾裡面
$ cd /Applications/MacPyMOL.app/Contents/pymol/modules
由於我們不知道preset這個選項會在哪個檔案裡面,所以用find搭配grep
$ grep -i 'preset' `find ./ -name "*.py" -print`
從螢幕上回傳的資料可以知道有preset這個關鍵字的檔案有menu.py與preset.py,前面那個檔案用來放置選單(This module defines the menus and their built-in commands),後面的檔案則是指定preset動作(參考pymol wiki的Preset)。
修改menu.py
找到下面這一行(約莫在721行)
[ 1, 'pretty ', 'preset.pretty("'+sele+'",_self=cmd)' ],
在這一行後面新增加一行,意思是說多增加一個叫做sspretty的按鈕
[ 1, 'pretty (2nd structure)', 'preset.sspretty("'+sele+'",_self=cmd)' ],
修改preset.py
找到下面這一行(約莫在323行)
pretty_no_solv = pretty
在這一行的下面新增下面的程式碼
def sspretty(selection,_self=cmd):
cmd=_self
pretty_solv(selection,_self)
s, selection = get_sname_oname_dname(selection, _self=_self)[:2]
cmd.hide("nb_spheres","("+s+" and "+lig_sele+"|resn HOH+WAT+H2O)")
util.cbss(s+" and not "+lig_sele,"red","yellow","green",_self=cmd)
cmd.delete(s)
都完成後,儲存menu.py與preset.py。關閉MacPyMOL,重新啟動MacPyMOL,這個時候在右邊的選單就多出了剛剛指定功能的按鈕了。猜測Linux版本的PyMOL應該也可以用相同的方式去修改吧。
_EOF_
沒有留言:
張貼留言