wiki:PseudoBonds

Generic Commands for Pseudobond Display, Color, Radius, Selection

January 26, 2016

I was puzzling over how to control display, coloring, size and selection of pseudobonds in ChimeraX and am having trouble. Here are some of the cases where this has arisen.

1) I want to hide the hydrogen bonds coming from the mmCIF file. These are cool, but I don’t always want to see them. I’d like to just undisplay them but then easily redisplay them later. And when we have an hbond command I might want the mmCIF hbonds and the calculated ones in different pseudobond groups.

2) I made “rungs” which are pseudobonds representing DNA/RNA residues. This is an experiment for Andreas Prlic to play with rendering. But how do I change their color, or size, or hide and show them by command? For the moment I built all that generic stuff into a “rungs” command.

3) I added a cross-link reader for Jan Kosinski when he visited. How do I undisplay the crosslinks? In this case since it makes a global pseudobond group (unlike cases 1 and 2) and it has a model number so I can hide the model (hide #2 model).

How does Chimera 1 handle these things via commands? I think the answer is there is a special command for each type of pseudobond — longbond, distance, hbond — metal coordination pseudobonds have no command that I know so I don’t know how I can control display/color by command, maybe there is no way. I don’t think requiring a special command for each type of pseudobond is a good approach for ChimeraX. We can have special commands, but it would be powerful to have the generic show / hide / color / select commands work on pseudobonds. Part of the trouble is how to specify the pseudobonds in a command. We can specify the end atoms but that is only sometimes possible (how would I distinguish cross-links from hydrogen bonds that way). Another approach I mentioned before is that each pseudobond group can have a model or submodel number. Another idea is that every pseudobond group might have a selector.

So finally, to my question, how do you think we should manipulate pseudobonds via commands? An immediate need is say case 1 where I want to hide hydrogen bonds but not hide metal coordination bonds.

I added a half-baked solution to that problem by adding an hbonds selector so you can now say “hide hbonds pseudobonds”. Unfortunately you can’t just say “hide hbonds” because the default target is atoms. I considered making the default target include pseudobonds. Then issues arise like does “#1” specify the intra-molecular pseudobonds? I think yes, so “hide #1” would hide all pseudobonds. That may be bad since “show #1 atoms” would then not bring back any pseudobonds including missing segments and metal coordination. Since we didn’t figure out the details of how to handle pseudobonds generically in Chimera 1 it is an open question how to do it in ChimeraX.

Last modified 10 years ago Last modified on Jan 26, 2016, 7:03:29 PM
Note: See TracWiki for help on using the wiki.