[Chimera-users] python and MD
pett at cgl.ucsf.edu
Mon Aug 8 11:45:13 PDT 2011
You are correct that "coordset" can't go to a frame that hasn't been
loaded yet. Right now, only the MD Movie tool knows how to load a
frame from a trajectory, therefore what you have to do is find the
Python instance of the MD Movie interface and call its LoadFrame
method. So here's some code to do that:
# locate and return the newest instance
# of MD Movie
from Movie.gui import MovieDialog
from chimera.extension import manager
mdms = [inst for inst in manager.instances
if isinstance(inst, MovieDialog)]
if not mdms:
raise AssertionError("No MD Movie instances!")
mdm = findMDMovie()
So, not too bad. LoadFrame() will not only load the frame but will
also go to that frame. Let me know if you have more questions.
UCSF Computer Graphics Lab
On Aug 7, 2011, at 11:14 AM, Daniel Gurnon wrote:
> Hi everyone,
> I have a question for the python experts:
> Suppose I have opened an MD trajectory using MD movie.
> I want a script that will capture images along the trajectory spaced
> by user-defined timespans. Problem is, I don't know how to use a
> script to go to a specific frame in MD movie. As I understand it,
> coordset, as employed in the following example, requires the user to
> first play through the entire trajectory. With a million frames,
> that's not practical. Here's what I have so far, cobbled together
> from examples and my own limited understanding of Python.
> from chimera import runCommand
> timestep=input ("How many picoseconds pass between frames?")
> spacing=input ("What spacing, in ps, do you want between structures?")
> start=input ("Which frame do you want to start with?")
> end=input ("What frame do you want to end with?")
> runCommand("coordset #0" + start)
> runCommand("copy file C:\Users\Dan\Desktop" + "\\" +start + ".png" +
> " width 2000 width 2000 supersample 3")
> So in place of coordest, what could I use to jump to frames within
> MD movie?
> And while I'm at it,
> How can I generically specify the desktop in a windows environment
> (so that I could give this to a student and they wouldn't have to
> change "Dan" in c:\users\Dan\Desktp")
> How can I change the filename for the image to reflect framenumber?
-------------- next part --------------
An HTML attachment was scrubbed...
More information about the Chimera-users