Re: [Chimera-users] coloring seperate domains

On Oct 22, 2008, at 1:52 PM, Chin-Hsien (Emily) Tai wrote:
We would like to use Chimera as a visualizing/figure drawing tool to compare different domain parsing schemes and we are wondering how to automate the process as much as possible. The tasks are: 1.fetch a PDB 2.select Chain (for example B) 3.Invert (all models) 4.Atoms/Bonds delete 5.chain trace only 6.backbone only 7.Ribbon show rounded
I am wondering if there is a simple way to combine step 1 to 4 to display only specified chain in PDB? Then rotate the structure to minimize domain overlapped area.
Then color each domain according to different parsing schemes, for example: scheme1 "color red #0:1-38.A 150-190.A; color green #0:39-149.A; color blue #0:192-347" scheme2 "color red #0:1-30.A 160-195.A; color green #0:31-159.A; color blue #0:196-347"
Can Chimera read a script and displays different domains in different colors? Thanks for your advice in advance! Cheers, Emily,
Dear Emily, You can definitely do all those steps in a script, except I'm not sure how to automatically orient the structure to best show the domains. I'll discuss the other parts first. A Chimera command script is just a text file containing the same things you would enter at the command line. If you name the file something.com or something.cmd it will automatically execute when opened in Chimera (with File... Open or the command "open"). Chimera can also execute python scripts (something.py) in the same way. <http://www.cgl.ucsf.edu/chimera/docs/UsersGuide/indexcommand.html#cmdfile
There are many possibilities for either type of script, but here are some example Chimera commands: open 2mnr delete ~ :.a ribbon ribrep rounded ~disp color red :3-132 color dodger blue :133-359 copy png file 2mnr.png This set of commands fetches PDB structure 2mnr, deletes everything that is NOT chain A, displays ribbon, uses the rounded ribbon style, undisplays all atoms, colors the specified residue ranges, and saves an image in PNG format. You don't have to specify the chain in the coloring command since there is only one chain left. Each of these commands has a manual page if you want to see details (for example, there are other image formats such as TIFF). You can try the commands in the Command Line to see what works before putting them into a script. <http://www.cgl.ucsf.edu/chimera/docs/UsersGuide/framecommand.html> For saving images, you might want to make the background white (set bg_color white) before using the script, or after opening each structure use the ribbons preset and then a publication preset (preset apply int 1; preset apply pub 1) instead of ribbon and ribrep rounded. <http://www.cgl.ucsf.edu/home/meng/docs/UsersGuide/print.html#tips> There are some fancier approaches that may facilitate processing a large number of structures. You can separate the structure-specific and general commands using aliases: <http://www.cgl.ucsf.edu/chimera/docs/UsersGuide/midas/alias.html> alias mypdb 2mnr alias mychain :.a alias dom1 :3-132 alias dom2 :133-359 ~alias dom3 ~alias dom4 alias output /Users/meng/Desktop/2mnr.png # # the following general commands could be put in a separate file # open mypdb delete ~ mychain preset apply int 1 preset apply pub 1 color red dom1 color dodger blue dom2 color yellow dom3 color magenta dom4 copy png file output close 0 This structure only has two domains, so I clear any previous dom3 and dom4 assignments from previous structures. There will be error messages when commands refer to nonexistent aliases, but they can be ignored. The reason you might want to separate the specific and general commands is that all of the general commands can then be put in a second command file (for example named "process.com" ) that is opened by the first script. The second script file could be in the same directory (folder) as the first, or you could specify its whole pathname. alias mypdb 2mnr alias mychain :.a alias dom1 :3-132 alias dom2 :133-359 ~alias dom3 ~alias dom4 alias output /Users/meng/Desktop/2mnr.png open /Users/meng/Desktop/process.com # # now go to next structure # alias mypdb 4enl alias mychain :.a alias dom1 :1-141 alias dom2 :142-436 ~alias dom3 ~alias dom4 alias output /Users/meng/Desktop/4enl.png open /Users/meng/Desktop/process.com [... etc.] Putting the general commands in a separate file minimizes the number of lines in the primary command file. However, it may still be tedious if you are processing a very large number of structures. Since I don't know python, I would probably write a script or program (in some other language) to make the long main Chimera command file. If you know python, another approach is to make the main script python instead of Chimera commands, and have it cycle through multiple structures. You could call the Chimera commands in my examples from inside the python script. Finally, now about orienting the structure to best show the domains. The only way I can think of with Chimera commands is to use "align" to put domains 1 and 2 front and back, then rotate 90 degrees, for example: align dom1 dom2 turn y 90 That worked pretty well in my tests. Those commands could be in the general script (process.com in my example), assuming all the structures have at least two domains, before the image-saving command. There are some other possibilities that require python; I'll get back to you if we come up with something good. I hope this helps, Elaine ----- Elaine C. Meng, Ph.D. meng@cgl.ucsf.edu UCSF Computer Graphics Lab (Chimera team) and Babbitt Lab Department of Pharmaceutical Chemistry University of California, San Francisco http://www.cgl.ucsf.edu/home/meng/index.html
participants (1)
-
Elaine Meng