<table cellspacing="0" cellpadding="0" border="0" ><tr><td valign="top" style="font: inherit;">Dear all,<br><br>I have a little problem picking a pixel from a vtkImageViewer2. I use vtkPointPicker for that. Here's the procedure I use:<br><br>1.Get mouse location in scene space<span class="kw4">:<br>double</span> point<span class="br0">[</span><span class="nu0">3</span><span class="br0">]</span>;
<div class="de1">picker->GetMapperPosition<span class="br0">(</span>point<span class="br0">)</span>;</div><br>2.Get correct mapped z-location:<span class="kw4"><br>double</span> spacing<span class="br0">[</span><span class="nu0">3</span><span class="br0">]</span>;
<div class="de1">imageViewer->GetInput<span class="br0">(</span><span class="br0">)</span>->GetSpacing<span class="br0">(</span>spacing<span class="br0">)</span>;<br>point<span class="br0">[</span><span class="nu0">2</span><span class="br0">]</span> = imageViewer->GetSlice<span class="br0">(</span><span class="br0">)</span> * spacing<span class="br0">[</span><span class="nu0">2</span><span class="br0">]</span>;</div><br>3.Get the actual volume index of the mouse over pixel;<br><div class="de1"><span class="kw4">int</span> index = imageViewer->GetInput<span class="br0">(</span><span class="br0">)</span>->FindPoint<span class="br0">(</span>point<span class="br0">)</span>;<br><span class="kw4">double</span><span class="kw4"></span>* scalarPointer = <span class="br0">(</span><span class="kw4">double</span><span class="kw4"></span>*<span class="br0">)</span>imageViewer->GetInput<span class="br0">(</span><span
class="br0">)</span>->GetScalarPointer<span class="br0">(</span><span class="br0">)</span>;<br><span class="kw4">double</span> intensity = scalarPointer<span class="br0">[</span>index<span class="br0">]</span>;<br><br>4.Printing the picked pixel coordinates and the pixel intensity:<br>cerr << "<span class="st0">(" << </span>point<span class="br0">[</span><span class="nu0">0</span><span class="br0">] << ", "</span> << point<span class="br0">[</span><span class="nu0">1</span><span class="br0">] << ", " << </span>point<span class="br0">[</span><span class="nu0">2</span><span class="br0">]</span> << "): " << intensity<span class="br0"></span>;<br><br>The problem I have is that I always get wrong values comparing to other programs. Maybe I miss something out. <br><br>Thank you in advance.<br><br>Regards,<br><br>J.<br></div><br><br></td></tr></table><br>