[Chimera-users] Rotation callback

Eric Pettersen pett at cgl.ucsf.edu
Fri Nov 11 22:16:59 PST 2005

Hi Charlie,
	The answer is: sort of.  You can't get a callback for when a  
specific model moves, but you can get callbacks for when any models  
move and from there it's pretty easy to deduce if models you are  
interested in moved.  There are two possible triggers you could use.   
The one most typically used is chimera.MOTION_STOP (mentioned in the  
Trigger Notifications programming example), which fires one second  
after models have stopped moving (the motion can be due to user  
interaction or programmatic repositioning).  On the assumption that  
what you want to do in response to the trigger is somewhat  
heavyweight, this is the trigger you would want to use.
	 The other trigger is 'OpenState', which will fire many times as a  
motion occurs.  If you use this trigger, you could check to see if  
the trigger data's 'modified' attribute contains the OpenState  
instance of the model(s) you care about and whether the trigger  
data's 'reasons' attribute contains the string "transformation change".
	There is an OpenState instance for each model ID/subID pair.  So  
some models share a single OpenState instance (e.g. a structure model  
and corresponding surface model).  Models have an 'openState'  
attribute, and OpenState instances have an 'xform' attribute  
containing the transformation matrix.  If you use the MOTION_STOP  
trigger, you would compare the transforms of the models you care  
about with previous ones that you'd saved to determine if the models  
had moved.
	UndoMove is an example of an extension that uses MOTION_STOP.


                         Eric Pettersen
                         UCSF Computer Graphics Lab
                         pett at cgl.ucsf.edu

On Nov 10, 2005, at 12:06 PM, Charlie Moad wrote:

> Is it possible to register a python callback for when a protein is
> rotated and get the rotation information?
> Thanks,
>      Charlie
> _______________________________________________
> Chimera-users mailing list
> Chimera-users at cgl.ucsf.edu
> http://www.cgl.ucsf.edu/mailman/listinfo/chimera-users

-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://plato.cgl.ucsf.edu/pipermail/chimera-users/attachments/20051111/c79c2c8c/attachment.html>

More information about the Chimera-users mailing list