Re: [chimera-dev] Getting distance values from runCommand

Hi Alex, The Chimera 1 code should have a routine for finding the minimum distance between atoms, but it just isn’t written very well (I wrote that code). Chimera users who are not programming have always been our highest priority. But in Chimera 2 we are putting much more effort into the programming interfaces to encourage outside developers. We do not expect to have a release for some time (maybe a year). It will be open source. Tom On Nov 18, 2014, at 2:49 AM, Alex Voronov <alexey.voronov@gmail.com> wrote:
Hi Tom,
After your explanation I understand that I'd have to implement some higher level measurement logic relying only on the distance between two atoms, and your example of handling selection and coordinates is very helpful! I looked earlier at measure/measure.py, but have not found a function that I can use out-of-the-box, now I understand why.
It is great to hear that you are planning a new release. Will it be open source too? If you plan a beta release, I can volonteer to test some new features ;)
Best Regards, Alex
On Tuesday, November 18, 2014, Tom Goddard <goddard@sonic.net> wrote: Hi Alex,
The “measure distance” code is the measure() function in
chimera/share/Measure/measure.py
It handles distances between atoms and also surfaces and can handle multiple distance calculations and prints the result but unfortunately does not return it as a Python value. I’ve attached some Python code to find the minimum distance between two sets of atoms.
Unfortunately the Chimera Python programming interface is not documented. The programmer’s guide on the Chimera web side documentation page may be of some use, especially the examples,
http://www.cgl.ucsf.edu/chimera/docs/ProgrammersGuide/index.html
and also the Chimera Python scripts on the Chimera developer web site can be of some use
http://plato.cgl.ucsf.edu/trac/chimera/wiki/Scripts
Many of the simpler Chimera commands are in
chimera/share/Midas/__init__.py
To find others you can search all the Python under chimera/share for “addCommand(“ (for example on Linux or Mac shell command find . -type f -exec grep -nH -e "addCommand(" {} +) giving the attached file of command names and modules where the code is located.
In our next generation Chimera we are making full reference documentation for Python programming.
Tom
participants (1)
-
Tom Goddard