
As a follow-up to the discussion about stereo by Virginia and Sabuj, will Chimera currently, or in the future, work in stereo on a Mac running OS X? David ============================================ David M. Belnap Department of Chemistry and Biochemistry Brigham Young University Provo, Utah 84602 USA Phone: 801-422-9163 FAX: 801-422-0153 David_Belnap@byu.edu ============================================

On Wed, 16 Mar 2005, David Belnap wrote:
As a follow-up to the discussion about stereo by Virginia and Sabuj, will Chimera currently, or in the future, work in stereo on a Mac running OS X?
Only if Mac OS X supports stereo-in-a-window. That appears to be unlikely because stereo-in-a-window is a feature that is only supported on workstation-class graphics cards (NVidia Quadro, ATI FireGL, 3DLabs Wildcat), and Apple only sells consumer-class graphics cards (NVidia GeForce, ATI Radeon). chimera needs stereo-in-a-window, instead of full-screen stereo, so the scientist can still use the dialogs to control chimera. If we figure out a reasonable way to keep the (mono) dialogs working in full-screen stereo, then we will support stereo on the Mac. (This also presupposes that most of the Tcl/Tk on Aqua bugs are fixed.) For some other thoughts about stereo hardware, see: <http://www.cgl.ucsf.edu/pipermail/chimera-users/2004-September/000197.html> Greg Couch UCSF Computer Graphics Lab gregc@cgl.ucsf.edu

I am trying to achieve something with this effect: Generate a list of all the atoms in other molecules of a multi-protein complex that are within a specific "contact" distance of atoms a molecule of interest in the complex, with them presented in the same way that H-honds or distances are illustrated. You can use Select:Zones to get the atoms that lie within a set distance of a molecule. All that seems to be needed is for the Select:Zones operation to optionally generate a list of atom pairs that the inspection things present. So far I can't seem a simple way of doing this without hacking code or doing it manually. Is there a way of doing this currently, or should this be looked at as future possible feature? Obviously, there are other useful "neighbour" operations you can do also, e.g. neighbours within the current selected molecule, neighbours by atom/residue type. Grant -- ------------------------------------------------------------------- Grant Jacobs Ph.D. BioinfoTools ph. +64 3 478 0095 (office, after 10am) PO Box 6129, or +64 27 601 5917 (mobile) Dunedin, gjacobs@bioinfotools.com NEW ZEALAND. Bioinformatics tools: deriving knowledge from biological data Bioinformatics tools - software development - consulting - training Check out the website for more details: http://www.bioinfotools.com The information contained in this mail message is confidential and may be legally privileged. Readers of this message who are not the intended recipient are hereby notified that any use, dissemination, distribution or reproduction of this message is prohibited. If you have received this message in error please notify the sender immed- iately and destroy the original message. This applies also to any attached documents.

Hi Grant, Below is some Python code that will create pseudobonds between all pairs of selected atoms from different molecules that are within 3 angstroms. It is quite slow for large sets of selected atoms. It could be made much faster but I chose to keep it simple. Tom # ---------------------------------------------------------------------------- # Check all pairwise distances between selected atoms and connect those # atom pairs that are close by a pseudobond if the atoms belong to different # molecules. # # To run this use Tools / Programming / Idle to show the Python shell and # type # # >>> execfile('path-to-this-file.py') # # For large selected sets of atoms this will be slow. # # ---------------------------------------------------------------------------- # def connect_close(dist): from chimera import selection, distance atoms = selection.currentAtoms() atom_pairs = [] n = len(atoms) for i1 in range(n): a1 = atoms[i1] for i2 in range(i1+1, n): a2 = atoms[i2] if a1.molecule != a2.molecule: if distance(a1.xformCoord().xyz, a2.xformCoord().xyz) <= dist: atom_pairs.append((a1,a2)) print len(atom_pairs), 'atom pairs' from chimera import PseudoBondGroup, PseudoBondMgr_mgr, PseudoBond pg = PseudoBondMgr_mgr().newPseudoBondGroup('close contacts') bonds = [] for a1, a2 in atom_pairs: bonds.append(pg.newPseudoBond(a1, a2)) import chimera chimera.openModels.add([pg]) selection.setCurrent(bonds) # ---------------------------------------------------------------------------- # connect_close(3)

Thanks for your replies - prompt as always! I was looking for something close to Tom's code (thanks). The reason I mentioned Select:Zones was it occurred to me that this must be determining the information I was looking for internally (and hence that it might be little work to present an option for the user to have this information presented as pseudo-bonds). I'll try modify Tom's code to what I want (which is only slightly different). Python is new to me, but I'll manage fine with the demo code in hand. While I'm writing, the programmer's examples or reference aren't on the website for either the latest release or the production release. There is no doc subdirectory in the 1.2 releases I've got locally, although programmer's docs are available for the 1.18 releases on the website. For the minor league hacking I'll be doing I'll get by on the old docs, but thought you might like to know if you didn't already. Thanks again, Grant
Hi Grant,
Below is some Python code that will create pseudobonds between all pairs of selected atoms from different molecules that are within 3 angstroms. It is quite slow for large sets of selected atoms. It could be made much faster but I chose to keep it simple.
Tom
[ship] -- ------------------------------------------------------------------- Grant Jacobs Ph.D. BioinfoTools ph. +64 3 478 0095 (office, after 10am) PO Box 6129, or +64 27 601 5917 (mobile) Dunedin, gjacobs@bioinfotools.com NEW ZEALAND. Bioinformatics tools: deriving knowledge from biological data Bioinformatics tools - software development - consulting - training Check out the website for more details: http://www.bioinfotools.com The information contained in this mail message is confidential and may be legally privileged. Readers of this message who are not the intended recipient are hereby notified that any use, dissemination, distribution or reproduction of this message is prohibited. If you have received this message in error please notify the sender immed- iately and destroy the original message. This applies also to any attached documents.

On Mar 23, 2005, at 9:17 PM, Grant Jacobs wrote:
While I'm writing, the programmer's examples or reference aren't on the website for either the latest release or the production release. There is no doc subdirectory in the 1.2 releases I've got locally, although programmer's docs are available for the 1.18 releases on the website. For the minor league hacking I'll be doing I'll get by on the old docs, but thought you might like to know if you didn't already.
Yes, we noticed this just before you wrote about it. The programmer's examples will be included in the snapshot that will be out in a day or two. Until then, they are available at our website: http://www.cgl.ucsf.edu/chimera/docs/ProgrammersGuide/Examples/ index.html Eric Pettersen UCSF Computer Graphics Lab
participants (5)
-
David Belnap
-
Eric Pettersen
-
Grant Jacobs
-
Greg Couch
-
Thomas Goddard