[chimera-dev] pointers

Tom Goddard goddard at sonic.net
Thu Jan 2 17:05:59 PST 2014


Hi Matt,

1) The file path of the last saved session

	chimera.lastSession

2) The Tk window toolkit sets the Mac top-of-screen menu to the menus on whichever Chimera dialog that has the focus.  Chimera does not do this and I doubt you can change the Tk behavior.  It is something of an atrocity to have different sets of menus for different Chimera dialogs.  But it is hard to organize all Chimera functionality under one set of menus.

3) Including density map files with sessions is a feature several people have requested and I too think it would be useful.  The question is how to implement it.  One approach is that you choose a new directory name and Chimera creates it, puts the session file (*.py) and copies of all map files in that directory.  But what if I need to give you 5 different sessions that use the same set of 10 maps.  Should I copy all the maps 5 separate times?  Maybe I'd want to put the extra session files in the same directory that already has the copied maps.  Then I wouldn't need to make more copies.  But how do I know those copied maps are the right maps?  Just because they have the same file name doesn't mean they are the same maps.  It's a can of worms.  Not sure what to do and that's why it hasn't been done.

4) The Chimera focal plane position is a distance in front of the camera in the scene where the left and right eye image of a point at that distance will appear at the same position on the display.  So an object at that distance in front of the camera appears in stereo viewing to be exactly at the same depth as the physical display.  I don't know what your terms "convergence plane", "screen plane", "zero parallax" (parallax is an angle).

5) Transfering model positions and camera views between sessions is a nightmare.  I have this problem to.  I guess you mean you want the named positions saved with savepos in session1 to be carried over to session2.  In my use I usually make session1, save some positions, then delete some models, add others, and save as session2.  In that case the positions from session1 also got copied to session2.  That takes care of most situations.  But now I might create a new position in session1 and want to copy it to session2.  There's no easy way to do it.  The "matrixget" and "matrixset" will write all the model positions of session1 and read them into session2 but you have new models in session2 and they won't get the right positions, and the camera parameters are not copied with those commands.  Here's an idea for some new command that might help.  Have a command that reports the camera position and view direction, and up direction relative to the coordinates of a specified model, and the same command would also be able to set the camera position using those 3 vectors.  This would allow copying camera view points between scenes.  Another case is a move model 1 relative to model 2 in session1 and want to do the same relative motion in session2.  A new command could report the position of model 2 relative to model 1 as say a translation and rotation axis and rotation angle, and the command could allow setting the relative position using those parameters.

6) There is no facility to animate light positions.  They are not saved by savepos, although they could be added to savepos/reset.  The light positions are relative to the camera, and the Chimera camera always points along the -z axis in the Chimera scene coordinate system (rotations always work by rotating the models, not moving the camera).

  I don't think the improvements suggested in 3,5,6 are higher priority than working on the next generation Chimera.  Unfortunately we don't have enough people to add many new features to Chimera 1 and at the same time develop Chimera 2.  So my tentative thinking is that all these problems should be addressed in the next generation Chimera.

	Tom


On Jan 1, 2014, at 2:38 AM, "Dougherty, Matthew T" wrote:

> Hi,  I am trying to track down some variables to develop some methods, and need some direction as to locations and practical options.
> 
> 1) where do I find the name of the session variable?  I want to build in organizational structure for the session files and data files in regards to project management.
> 
> 2) the pull down menus change depending on the dialog that is the focus.  Usually it is volume viewer and main window.  Is there a way to lock in the main viewer pull down menu? would prefer that to be constant.
> 
> 3)sometimes I need to transfer a session, or receive a session from somebody.  If the session only uses pdb files I am ok.  If there are mrc files involved, then they have to be located, bundled, transferred, and linkages repaired.  I would like to get a list of all the extraneous data files that the session uses, and copy all those files into a single folder, that is usually on a thumb drive.  So I would need to develop sw to locate those files, copy them as an aggregate along with the session file.
> 
> 4) for S3D, is the focal plane the same thing as the convergence plane, or is it the screen plane? Is everything that is close to the camera is negative parallax, focal plane is zero parallax, everything behind is positive parallax?
> 
> 5) I have a number of related animations using different session files.  Usually I will create a core session, with the other files having small variants (eg, inclusion of different pdb or vrml files).  Each session file produces a clip, each session file has a corresponding command file that sequences the positions, and other animation components.   The end of clip1 is the beginning point for clip2, etc.  Passing positions between session files is the problem.  How do I export a position so as to import it into another session file?
> 
> 6) I need to animate the lighting.  I get the impression lighting is relative to the camera, but it could be to the origin, or to the aggregate of the models, or to the clipping planes, etc.  not sure on this.  It does not appear to be saved as part of the savepos command.  I have dug into the lighting code and can move the lights around using the HID tools I am creating.   What would be the best or viable or quickest approach to animate the lights?
> 
> 
> Matthew Dougherty
> National Center for Macromolecular Imaging
> Baylor College of Medicine
> _______________________________________________
> Chimera-dev mailing list
> Chimera-dev at cgl.ucsf.edu
> http://www.rbvi.ucsf.edu/mailman/listinfo/chimera-dev
> 





More information about the Chimera-dev mailing list