<html><head><meta http-equiv="Content-Type" content="text/html charset=windows-1252"></head><body style="word-wrap: break-word; -webkit-nbsp-mode: space; -webkit-line-break: after-white-space;" class="">Hi Matt,<div class=""><br class=""></div><div class="">  I think the “new frame” trigger is the main useful one.  There are others that tell when molecule colors or display styles change, when atoms get deleted, or models are moved.  We don’t have much programming documentation but there is an example of using triggers to see when atoms change colors.</div><div class=""><br class=""></div><div class=""><span class="Apple-tab-span" style="white-space:pre"> </span><a href="http://www.cgl.ucsf.edu/chimera/docs/ProgrammersGuide/Examples/Main_AtomTrigger.html" class="">http://www.cgl.ucsf.edu/chimera/docs/ProgrammersGuide/Examples/Main_AtomTrigger.html</a></div><div class=""><br class=""></div><div class="">   Tom</div><div class=""><br class=""></div><div class=""><br class=""><div><blockquote type="cite" class=""><div class="">On Apr 21, 2015, at 1:24 PM, Dougherty, Matthew T <<a href="mailto:matthewd@bcm.edu" class="">matthewd@bcm.edu</a>> wrote:</div><br class="Apple-interchange-newline"><div class=""><div id="divtagdefaultwrapper" style="font-style: normal; font-variant: normal; font-weight: normal; letter-spacing: normal; line-height: normal; orphans: auto; text-align: start; text-indent: 0px; text-transform: none; white-space: normal; widows: auto; word-spacing: 0px; -webkit-text-stroke-width: 0px; font-size: 12pt; background-color: rgb(255, 255, 255); font-family: Calibri, Arial, Helvetica, sans-serif;" class=""><div style="margin-top: 0px; margin-bottom: 0px;" class="">thanks.<br class=""></div><div style="margin-top: 0px; margin-bottom: 0px;" class=""><br class=""></div><div class="">from chimera import triggers</div><div class="">triggers.addHandler('new frame', set_focal_plane, None)<br class=""></div><div class=""><br class=""></div><div class="">was the part I could not figure out.  Would like to find out more about this api and other registered triggers, will look at the code.  Besides 'new frame', are there any other imporant ones that could make useful for interfaces?<br class=""></div><div class=""><br class=""></div><div class="">In my user control pane extension I have a focal widget that varies between -1,0 thru 100.<br class=""></div><div class="">-1 disables the widget. 0-100 is the percentage between near & far CP. Usually if I am between the two, people's eyes don't bleed, buying me some time to adjust the percentage correctly. <br class=""></div><div class=""><br class=""></div><div class=""><br class=""></div><div class=""><br class=""></div><div class="">As for zooming, I tell people here not to use it, stick with z-translation because it gives you a better spatial feel of the data set, XYZ are in unity.  Plus zooming maxes out and people can't figure out why, they think they are dollying but are not.  Unless they can write a command for z translation, they are stuck.<br class=""></div><div style="margin-top: 0px; margin-bottom: 0px;" class=""><br class=""></div><div style="margin-top: 0px; margin-bottom: 0px;" class=""><br class=""></div><div id="Signature" class=""><div class="BodyFragment"><font size="2" class=""><div class="PlainText">Matthew Dougherty<br class="">National Center for Macromolecular Imaging<br class="">Baylor College of Medicine<br class="">===========================================================================</div></font></div></div><div style="word-wrap: break-word; color: rgb(33, 33, 33);" class=""><hr tabindex="-1" style="display: inline-block; width: 833px;" class=""><div id="divRplyFwdMsg" dir="ltr" class=""><font face="Calibri, sans-serif" style="font-size: 11pt;" class=""><b class="">From:</b><span class="Apple-converted-space"> </span>Tom Goddard <<a href="mailto:goddard@sonic.net" class="">goddard@sonic.net</a>><br class=""><b class="">Sent:</b><span class="Apple-converted-space"> </span>Tuesday, April 21, 2015 2:57 PM<br class=""><b class="">To:</b><span class="Apple-converted-space"> </span>Dougherty, Matthew T<br class=""><b class="">Cc:</b><span class="Apple-converted-space"> </span><a href="mailto:chimera-dev@cgl.ucsf.edu" class="">chimera-dev@cgl.ucsf.edu</a><br class=""><b class="">Subject:</b><span class="Apple-converted-space"> </span>Re: [chimera-dev] stereo3D focal plane</font><div class=""> </div></div><div class="">Hi Matt,<div class=""><br class=""></div><div class="">  Here’s some Python that will update the focal plane position to always lie midway between near and far clip planes.</div><div class=""><br class=""></div><div class="">  If you zoom by moving a map or molecule closer to you (z translation) then visually the map should move from behind the screen to be in front of the screen so it looks like it is coming closer.   In other words the map moves forward and the focal plane that defines the position of the screen stays fixed.  That is normal Chimera behavior.  The above script will defeat that.  You will move the map closer to you in z, but what you will see in stereo is that the map gets bigger, but no closer.  It instead feels like a magical scaling of the map, rather than getting closer to it.  This isn’t natural, but I understand that because of the limited 3d depth with stereo viewing it is necessary to do something to avoid uncomfortable stereo where the models are too far in front of the screen.  An optimal solution is more subtle than the above script.  In fact the above script won’t prevent getting the front surface of the map too close for stereo viewing because it keeps the focal plane at the map midpoint in z.  The front of the map can still get close to your eye and the stereo will not work.  Basically you want to avoid having the front visible part of the models from getting too close to your eye where the stereo glasses don’t work (because the display screen is not wide enough).  We have not worked on techniques to avoid stereo interactive viewing limitations.  But the normal Chimera zoom uses scale factor, not z-translation, so that is the main way this problem is avoided.  But you are using z-translation instead of the normal Chimera zooming and that is why you encounter this problem.</div><div class=""><br class=""></div><div class=""><span class="Apple-tab-span" style="white-space: pre;"></span>Tom</div></div></div></div></div></blockquote></div><br class=""></div></body></html>