
Hi, I contact you because users of the program STRAP for protein structures and sequences asked whether Chimera could be used within STRAP for visualization. Currently Jmol and Pymol are used for visualiziation. For example the results of 3D superpositions and the location of mutations can be viewed. But some users apparently prefere Chimera. My question is whether Chimera could be linked to STRAP as well. The most important point is, what mode of interprocess commmunication exists in Chimera. For example Pymol and STRAP are linked via the stdin/stdout streams. STRAP can send commands to Pymol and is notified when atoms are picked. STRAP uses the scripting language of Pymol to load proteins, create selections and rotate proteins. Could all this be done with Chimera in a similar way ? Best regards Christoph

On Sun, 30 Oct 2005, Dr. Christoph Gille wrote:
I contact you because users of the program STRAP for protein structures and sequences asked whether Chimera could be used within STRAP for visualization.
Currently Jmol and Pymol are used for visualiziation. For example the results of 3D superpositions and the location of mutations can be viewed. But some users apparently prefere Chimera.
My question is whether Chimera could be linked to STRAP as well. The most important point is, what mode of interprocess commmunication exists in Chimera.
For example Pymol and STRAP are linked via the stdin/stdout streams. STRAP can send commands to Pymol and is notified when atoms are picked.
STRAP uses the scripting language of Pymol to load proteins, create selections and rotate proteins. Could all this be done with Chimera in a similar way ?
(Replies should be sent to chimera-dev@cgl.ucsf.edu) Sending commands and data to chimera can be done with the --send command line argument that was added for web browser support (it's not enabled by default except on Mac OS X, use Tools/Preferences Web Access to "Accept web data"). For bidirectional communication, you'll need to add some Python code -- python supports the same IPC that the underlying C library does, but the IPC should be integrated into the chimera event loop -- look at the socket code from CHIMERA/share/DBPuppet/tcl_sockets.py to see an example of integrating Internet sockets. Internet sockets are the general solution because standard input and output can only be used by one other appliction, but there are security issues. Chimera uses a shared key (read from the filesystem) security protocol to prevent hijacking of the web browser connection. I'd also recommend creating a chimera extension with all of the STRAP related code in it. For examples on how to do that, see the Chimera Programmer's Guide examples, <http://www.cgl.ucsf.edu/chimera/docs/ProgrammersGuide/Examples/index.html>. The examples also show how to use chimera selections pragrammatically. So the answer is yes, chimera could be linked to STRAP. I hope this answer gives you some ideas on how to proceed. I would be delighted to work with you to get the programs working together. Greg Couch UCSF Computer Graphics Lab gregc@cgl.ucsf.edu
participants (2)
-
Dr. Christoph Gille
-
Greg Couch