<html>
<head>
<style><!--
.hmmessage P
{
margin:0px;
padding:0px
}
body.hmmessage
{
font-size: 10pt;
font-family:Verdana
}
--></style>
</head>
<body class='hmmessage'>
It took me a day to figure out:<BR>&nbsp;<BR>// first convert from display to world in the resliced coordinate<BR><FONT size=2>vtkRenderer&amp; rndr = *interactor-&gt;GetRenderWindow()-&gt;GetRenderers()-&gt;GetFirstRenderer();<BR>rndr.SetDisplayPoint(currPos[0], currPos[1], 0);<BR>rndr.DisplayToWorld();<BR></FONT><FONT color=#0000ff size=2><FONT color=#0000ff size=2>double</FONT></FONT><FONT size=2> point[4];<BR>rndr.GetWorldPoint(point);<BR></FONT><FONT color=#008000 size=2><FONT color=#008000 size=2>// the value in the third component is fake, why???<BR></FONT></FONT><FONT size=2>point[2] = 0.0;<BR>&nbsp;<BR>// next, convert back to the original vtkImageData coordinate system<BR>vtkImageReslice* reslice = ImageReslice;<BR>reslice-&gt;GetOutput()-&gt;UpdateInformation();<BR>vtkImageData&amp; slice = *reslice-&gt;GetOutput();<BR>vtkMatrix4x4 *matrix = reslice-&gt;GetResliceAxes();<BR></FONT><FONT size=2></FONT><FONT color=#0000ff size=2><FONT color=#0000ff size=2>double</FONT></FONT><FONT size=2> center[4];<BR>matrix-&gt;MultiplyPoint(point, center);<BR></FONT><BR>&nbsp;<BR>Hope this works!<BR><BR>Xiaofeng Zhao<BR><BR><BR>&nbsp;<BR>&gt; Date: Wed, 24 Mar 2010 16:09:57 -0400<BR>&gt; From: tutmann@gmail.com<BR>&gt; To: vtkusers@vtk.org<BR>&gt; Subject: [vtkusers] 3D-position of vtkImageReslice<BR>&gt; <BR>&gt; Hello,<BR>&gt; <BR>&gt; I'm building an application based on ImageProcessing/Cxx/ImageSlicing.cxx.<BR>&gt; Currently I'm on my way of writing my own interactor style in order to<BR>&gt; have more flexible interaction freedom.<BR>&gt; <BR>&gt; Rotation, windowing and zoom works fine - but now I want to move my<BR>&gt; Volume by dragging the mouse. The movement should be in sync with the<BR>&gt; mouse motion.<BR>&gt; Therefore I'd like to find out the real 3D-Position (in the volume) of<BR>&gt; the EventPosition and the LastEventPosition.<BR>&gt; But I don't know how to do that. The Display chain is like:<BR>&gt; <BR>&gt; vtkImageData -&gt; vtkImageReslice -&gt; vtkImageMapToColors -&gt;<BR>&gt; vtkImageActor -&gt; vtkRenderer -&gt; vtkViewPort<BR>&gt; <BR>&gt; <BR>&gt; How can I find out the amount of translation that has to be applied to<BR>&gt; the ResliceAxes-Matrix? (I already have the right direction - am just<BR>&gt; missing the scaling value of the translation).<BR>&gt; <BR>&gt; <BR>&gt; Thank you for your help!<BR>&gt; <BR>&gt; Henning<BR>&gt; _______________________________________________<BR>&gt; Powered by www.kitware.com<BR>&gt; <BR>&gt; Visit other Kitware open-source projects at http://www.kitware.com/opensource/opensource.html<BR>&gt; <BR>&gt; Please keep messages on-topic and check the VTK FAQ at: http://www.vtk.org/Wiki/VTK_FAQ<BR>&gt; <BR>&gt; Follow this link to subscribe/unsubscribe:<BR>&gt; http://www.vtk.org/mailman/listinfo/vtkusers<BR>                                               <br /><hr />Hotmail is redefining busy with tools for the New Busy. Get more from your inbox. <a href='http://www.windowslive.com/campaign/thenewbusy?ocid=PID27925::T:WLMTAGL:ON:WL:en-US:WM_HMP:032010_2' target='_new'>Sign up now.</a></body>
</html>