<html><body><div style="color:#000; background-color:#fff; font-family:HelveticaNeue, Helvetica Neue, Helvetica, Arial, Lucida Grande, sans-serif;font-size:12pt"><div><span>That's what I intended to use it for and I got it more-or-less working (it crashes sometimes but that could be somewhere in my code, unrelated to Pop() and Push(). Got to find it though... :-( ).</span></div><div style="color: rgb(0, 0, 0); font-size: 16px; font-family: HelveticaNeue,Helvetica Neue,Helvetica,Arial,Lucida Grande,sans-serif; background-color: transparent; font-style: normal;"><br><span></span></div><div style="color: rgb(0, 0, 0); font-size: 16px; font-family: HelveticaNeue,Helvetica Neue,Helvetica,Arial,Lucida Grande,sans-serif; background-color: transparent; font-style: normal;"><span>I noticed it's pushing too often when I use it each time Rotate(), Spin() etc. in the interactor style gets called. Now thinking of a new undo object that stores the current transform on
 its own stack when it receives a StartInteractionEvent..</span></div><div style="color: rgb(0, 0, 0); font-size: 16px; font-family: HelveticaNeue,Helvetica Neue,Helvetica,Arial,Lucida Grande,sans-serif; background-color: transparent; font-style: normal;"><br><span></span></div><div style="color: rgb(0, 0, 0); font-size: 16px; font-family: HelveticaNeue,Helvetica Neue,Helvetica,Arial,Lucida Grande,sans-serif; background-color: transparent; font-style: normal;"><span>Maarten</span></div> <div class="qtdSeparateBR"><br><br></div><div style="display: block;" class="yahoo_quoted"> <div style="font-family: HelveticaNeue, Helvetica Neue, Helvetica, Arial, Lucida Grande, sans-serif; font-size: 12pt;"> <div style="font-family: HelveticaNeue, Helvetica Neue, Helvetica, Arial, Lucida Grande, sans-serif; font-size: 12pt;"> <div dir="ltr"> <font face="Arial" size="2"> On Monday, August 11, 2014 6:15:33 PM, David Gobbi <david.gobbi@gmail.com> wrote:<br> </font>
 </div>  <br><br> <div class="y_msg_container">On Mon, Aug 11, 2014 at 12:18 PM, Meehan, Bernard <<a shape="rect" ymailto="mailto:MEEHANBT@nv.doe.gov" href="mailto:MEEHANBT@nv.doe.gov">MEEHANBT@nv.doe.gov</a>> wrote:<br clear="none">><br clear="none">> Are you pre-multiplying or post-multiplying your transformations?<br clear="none">> I got tangled up a bit before I realized that the default mode was<br clear="none">> premultiply ... which means that if you do this:<br clear="none">><br clear="none">> xform = vtk.vtkTransform()<br clear="none">> xform.Push(A)<br clear="none">> xform.Push(B)<br clear="none">> xform.Push(C)<br clear="none">><br clear="none">> you get the following matrix operation on the vector x:<br clear="none">><br clear="none">> A B C x<br clear="none">><br clear="none">> when you might have wanted:<br clear="none">><br clear="none">> xform.PostMultiply()<br clear="none">>
 xform.Push(A)<br clear="none">> xform.Push(B)<br clear="none">> xform.Push(C)<br clear="none">><br clear="none">> which would give you:<br clear="none">><br clear="none">> C B A x<br clear="none"><br clear="none">I'm just going to jump in here and state, for the record, that this is<br clear="none">_not_ what the vtkTransform Push() method does.  All that Push()<br clear="none">does is save a copy of the current transform so that you can retrieve<br clear="none">it later with Pop().<br clear="none"><br clear="none"> -David<div class="yqt6929876058" id="yqtfd52287"><br clear="none">_______________________________________________<br clear="none">Powered by www.kitware.com<br clear="none"><br clear="none">Visit other Kitware open-source projects at <a shape="rect" href="http://www.kitware.com/opensource/opensource.html" target="_blank">http://www.kitware.com/opensource/opensource.html</a><br clear="none"><br clear="none">Please keep
 messages on-topic and check the VTK FAQ at: <a shape="rect" href="http://www.vtk.org/Wiki/VTK_FAQ" target="_blank">http://www.vtk.org/Wiki/VTK_FAQ</a><br clear="none"><br clear="none">Follow this link to subscribe/unsubscribe:<br clear="none"><a shape="rect" href="http://public.kitware.com/mailman/listinfo/vtkusers" target="_blank">http://public.kitware.com/mailman/listinfo/vtkusers</a><br clear="none"></div><br><br></div>  </div> </div>  </div> </div></body></html>