<html>
<head>
<meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1">
<style type="text/css" style="display:none;"><!-- P {margin-top:0;margin-bottom:0;} --></style>
</head>
<body dir="ltr">
<div id="divtagdefaultwrapper" style="font-size:12pt;color:#000000;background-color:#FFFFFF;font-family:Calibri,Arial,Helvetica,sans-serif;">
<p>thanks.<br>
</p>
<p><br>
</p>
<div>from chimera import triggers</div>
<div>triggers.addHandler('new frame', set_focal_plane, None)<br>
</div>
<div><br>
</div>
<div>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>
</div>
<div><br>
</div>
<div>In my user control pane extension I have a focal widget that varies between -1,0 thru 100.<br>
</div>
<div>-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>
</div>
<div><br>
</div>
<div><br>
</div>
<div><br>
</div>
<div>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>
</div>
<p><br>
</p>
<p><br>
</p>
<div id="Signature">
<div class="BodyFragment"><font size="2">
<div class="PlainText">Matthew Dougherty<br>
National Center for Macromolecular Imaging<br>
Baylor College of Medicine<br>
===========================================================================</div>
</font></div>
</div>
<div style="word-wrap: break-word; color: rgb(33, 33, 33);">
<hr tabindex="-1" style="display:inline-block; width:98%">
<div id="divRplyFwdMsg" dir="ltr"><font face="Calibri, sans-serif" color="#000000" style="font-size:11pt"><b>From:</b> Tom Goddard <goddard@sonic.net><br>
<b>Sent:</b> Tuesday, April 21, 2015 2:57 PM<br>
<b>To:</b> Dougherty, Matthew T<br>
<b>Cc:</b> chimera-dev@cgl.ucsf.edu<br>
<b>Subject:</b> Re: [chimera-dev] stereo3D focal plane</font>
<div> </div>
</div>
<div>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 class=""><br class="">
</div>
<div class=""></div>
</div>
</div>
</div>
</body>
</html>