<div dir="ltr">The PickTextureDataOn() method must be called before the Pick.</div><div class="gmail_extra"><br><div class="gmail_quote">On Mon, Feb 29, 2016 at 7:18 AM, Lonni Besançon <span dir="ltr"><<a href="mailto:lonni.besancon@gmail.com" target="_blank">lonni.besancon@gmail.com</a>></span> wrote:<br><blockquote class="gmail_quote" style="margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex">Hello David,<br>
<br>
Sorry I omitted this detail. Indeed that's exactly what I'm doing.<br>
Here the complete pipeline:<br>
/vtkSmartPointer<vtkImageData> ima = reslice->GetOutput();<br>
vtkSmartPointer<vtkDataArray> data = ima->GetPointData()->GetScalars();<br>
vtkSmartPointer<vtkTexture> texture = vtkSmartPointer<vtkTexture>::New();<br>
texture->SetInputData(ima);<br>
texture->InterpolateOn();<br>
....<br>
vtkSmartPointer<vtkPolyDataMapper> planeMapper =<br>
vtkSmartPointer<vtkPolyDataMapper>::New();<br>
planeMapper->SetInputConnection(plane->GetOutputPort());<br>
...<br>
vtkSmartPointer<vtkActor> planeActor = vtkSmartPointer<vtkActor>::New();<br>
planeActor->SetTexture(texture);<br>
planeActor->SetMapper(planeMapper);/<br>
<br>
I tried your solution with the following code:<br>
/if(picker->GetActor() == foo->planeActor){<br>
        picker->PickTextureDataOn();<br>
        double position[3];<br>
        picker->GetMapperPosition(position);<br>
        LOGW("Point position Initial = %f ::: %f :::<br>
%f",position[0],position[1],position[2]);<br>
        double point[4];<br>
        point[0] = position[0] ;<br>
        point[1] = position[1] ;<br>
        point[2] = position[2] ;<br>
        point[3] = 1 ;<br>
        resliceAxes->MultiplyPoint(point, point); // My reslice axes matrix<br>
        LOGW("Position in Volume = %f  ;;  %f  ;;  %f ;;<br>
%f",point[0],point[1],point[2],point[3] );<br>
<br>
}<br>
/<br>
<br>
Yet the values I get are weird. I tried having the plane parallel to the<br>
screen at a given depth d, and the volume actor not moved at all. The first<br>
log is ok though, it gives me values such as:<br>
0.125766 ::: 0.176741 ::: 0.000000<br>
However the values I get after the multiplication do not seem so good, no<br>
matter where I trick to "click" I always get X value between 51.5 and 52.5 (<br>
X = 51.5 is the middle of the x dimension of my data ), and Y values between<br>
47 and 48 (similarly 47 is the middle of the y dimension of my data).<br>
The depth value I get however correspond very well to the position of my<br>
plane, so I'm guessing this value is good.<br>
<br>
Am I doing something wrong? Or maybe the pipeline description I gave you was<br>
not enough.<br>
<br>
Thanks again for your help<br>
<br>
<br>
<br>
--<br>
View this message in context: <a href="http://vtk.1045678.n5.nabble.com/vtkPicker-returned-actor-tp5736763p5736920.html" rel="noreferrer" target="_blank">http://vtk.1045678.n5.nabble.com/vtkPicker-returned-actor-tp5736763p5736920.html</a><br>
<div class="HOEnZb"><div class="h5">Sent from the VTK - Users mailing list archive at Nabble.com.<br>
_______________________________________________<br>
Powered by <a href="http://www.kitware.com" rel="noreferrer" target="_blank">www.kitware.com</a><br>
<br>
Visit other Kitware open-source projects at <a href="http://www.kitware.com/opensource/opensource.html" rel="noreferrer" target="_blank">http://www.kitware.com/opensource/opensource.html</a><br>
<br>
Please keep messages on-topic and check the VTK FAQ at: <a href="http://www.vtk.org/Wiki/VTK_FAQ" rel="noreferrer" target="_blank">http://www.vtk.org/Wiki/VTK_FAQ</a><br>
<br>
Search the list archives at: <a href="http://markmail.org/search/?q=vtkusers" rel="noreferrer" target="_blank">http://markmail.org/search/?q=vtkusers</a><br>
<br>
Follow this link to subscribe/unsubscribe:<br>
<a href="http://public.kitware.com/mailman/listinfo/vtkusers" rel="noreferrer" target="_blank">http://public.kitware.com/mailman/listinfo/vtkusers</a><br>
</div></div></blockquote></div><br></div>