<div dir="ltr">Yes that seams very likely. I applied Julian Ibarz&#39;s patch after 5.2 was released and it looks like that change will make it so that you get a reliable z value after the rubber band interactor style does its drawing. We&#39;ll get that patch merged into the next 5.2 release.<br>
<br>cheers,<br>Dave DeMarle<br><br><div class="gmail_quote">On Thu, Aug 7, 2008 at 6:16 PM, Sarah Macumber <span dir="ltr">&lt;<a href="mailto:S.Macumber@questreliability.com">S.Macumber@questreliability.com</a>&gt;</span> wrote:<br>
<blockquote class="gmail_quote" style="border-left: 1px solid rgb(204, 204, 204); margin: 0pt 0pt 0pt 0.8ex; padding-left: 1ex;"><a href="http://www.vtk.org/Bug/view.php?id=7236" target="_blank">http://www.vtk.org/Bug/view.php?id=7236</a><br>

<br>
Any chance this is the same bug? &nbsp;I am on 5.2 wrapped Dot Net VTK.<br>
<br>
Sarah<br>
<div class="Ih2E3d"><br>
________________________________<br>
<br>
From: <a href="mailto:vtkusers-bounces@vtk.org">vtkusers-bounces@vtk.org</a> on behalf of Sarah Macumber<br>
</div>Sent: Thu 8/7/2008 4:58 PM<br>
To: David E DeMarle<br>
Cc: <a href="mailto:vtkusers@vtk.org">vtkusers@vtk.org</a>; Jim Rowe<br>
<div><div></div><div class="Wj3C7c">Subject: Re: [vtkusers] Inconsistant Picking &amp; possible BuginvtkWorldPointPicker<br>
<br>
<br>
<br>
Hi Dave,<br>
<br>
What seems to be going on is that the Z buffer value is 0.0 which causes the point to be returned as the center of the frustum.<br>
double z1 = GraphicsWindowRenderer.GetPickedZ(); &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp;// value is 0<br>
double z2 = GraphicsWindowRenderer.GetZ(pos[0], pos[1]); &nbsp; &nbsp; &nbsp;// value is 0<br>
if I forcibly set the value to something like 0.9999 then picking is correct.<br>
<br>
Since you have the start and end position of the rubber band interactor I think it would be best to expose them.<br>
<br>
Thanks in advance,<br>
Sarah<br>
<br>
________________________________<br>
<br>
From: David E DeMarle [mailto:<a href="mailto:dave.demarle@kitware.com">dave.demarle@kitware.com</a>]<br>
Sent: Thu 8/7/2008 4:40 PM<br>
To: Sarah Macumber<br>
Cc: <a href="mailto:vtkusers@vtk.org">vtkusers@vtk.org</a><br>
Subject: Re: [vtkusers] Inconsistant Picking &amp; possible Bug invtkWorldPointPicker<br>
<br>
<br>
Howdy,<br>
<br>
This is dimly ringing a very rusty bell in my head.<br>
<br>
Before AreaPicker and InterarctorStyleRBPick were added, all picking was done on a single pixel. Thus the comment in the AreaPicker doxygen about the GetPickPoint being ill-defined. As I recall I made it so that when you ask for that you get the center of the frustum.<br>

<br>
You may try getting a Frustum out or, we can add and accessor to the InteractorStyle to get screen start and end pick coordinates.<br>
<br>
cheers,<br>
Dave<br>
<br>
<br>
On Thu, Aug 7, 2008 at 4:38 PM, Sarah Macumber &lt;<a href="mailto:S.Macumber@questreliability.com">S.Macumber@questreliability.com</a>&gt; wrote:<br>
<br>
<br>
 &nbsp; &nbsp; &nbsp; &nbsp;I have tried a few alternative methods for getting the world coordinate point but they are also failing and returning the center point ...<br>
<br>
 &nbsp; &nbsp; &nbsp; &nbsp;Sarah<br>
<br>
<br>
 &nbsp; &nbsp; &nbsp; &nbsp;vtkInteractorStyleRubberBand2D style = vtkInteractorStyleRubberBand2D.SafeDownCast(sender);<br>
<br>
 &nbsp; &nbsp; &nbsp; &nbsp;int[] pos = style.GetInteractor().GetEventPosition();<br>
<br>
<br>
 &nbsp; &nbsp; &nbsp; &nbsp;GraphicsWindowRenderer.SetDisplayPoint(pos[0], pos[1], 0);<br>
<br>
 &nbsp; &nbsp; &nbsp; &nbsp;GraphicsWindowRenderer.DisplayToWorld();<br>
<br>
 &nbsp; &nbsp; &nbsp; &nbsp;_startPickPosition = GraphicsWindowRenderer.GetWorldPoint();<br>
<br>
<br>
 &nbsp; &nbsp; &nbsp; &nbsp;________________________________<br>
<br>
 &nbsp; &nbsp; &nbsp; &nbsp;From: <a href="mailto:vtkusers-bounces@vtk.org">vtkusers-bounces@vtk.org</a> on behalf of Sarah Macumber<br>
 &nbsp; &nbsp; &nbsp; &nbsp;Sent: Thu 8/7/2008 11:42 AM<br>
 &nbsp; &nbsp; &nbsp; &nbsp;To: <a href="mailto:vtkusers@vtk.org">vtkusers@vtk.org</a><br>
 &nbsp; &nbsp; &nbsp; &nbsp;Subject: [vtkusers] Inconsistant Picking &amp; possible Bug invtkWorldPointPicker<br>
<br>
<br>
<br>
<br>
 &nbsp; &nbsp; &nbsp; &nbsp;Hello Hello,<br>
<br>
<br>
<br>
 &nbsp; &nbsp; &nbsp; &nbsp;I have a question about vtkWorldPointPicker acting rather buggy &amp; inconsistant. &nbsp;I am using a<br>
<br>
 &nbsp; &nbsp; &nbsp; &nbsp;vtkInteractorStyleRubberBand2D along with a vtkWorldPointPicker to select the start and end point of the<br>
<br>
 &nbsp; &nbsp; &nbsp; &nbsp;rubber band since the Start and End point of all of the rubber band classes is a protected attribute.<br>
<br>
<br>
<br>
 &nbsp; &nbsp; &nbsp; &nbsp;The behavior is such that sometimes the code returns the correct end point but sometimes it fails for no<br>
<br>
 &nbsp; &nbsp; &nbsp; &nbsp;reason and returns the center of the data set. &nbsp;Often times it seems to be accesing bad memory when it<br>
<br>
 &nbsp; &nbsp; &nbsp; &nbsp;fails.<br>
<br>
<br>
<br>
 &nbsp; &nbsp; &nbsp; &nbsp;Any thoughts &amp; thanks in advance!<br>
<br>
 &nbsp; &nbsp; &nbsp; &nbsp;Sarah<br>
<br>
<br>
<br>
 &nbsp; &nbsp; &nbsp; &nbsp;private void GraphicsWindowPickingStyle_StartInteractionEvt(vtkObject sender, vtkObjectEventArgs e)<br>
<br>
 &nbsp; &nbsp; &nbsp; &nbsp;{<br>
<br>
 &nbsp; &nbsp; &nbsp; &nbsp;vtkInteractorStyleRubberBand2D style = vtkInteractorStyleRubberBand2D.SafeDownCast(sender);<br>
<br>
 &nbsp; &nbsp; &nbsp; &nbsp;int[] pos = style.GetInteractor().GetEventPosition();<br>
<br>
 &nbsp; &nbsp; &nbsp; &nbsp;style.GetInteractor().GetPicker().Pick(pos[0], pos[1], 0, style.GetCurrentRenderer());<br>
<br>
 &nbsp; &nbsp; &nbsp; &nbsp;_startPickPosition = style.GetInteractor().GetPicker().GetPickPosition();<br>
<br>
 &nbsp; &nbsp; &nbsp; &nbsp;}<br>
<br>
 &nbsp; &nbsp; &nbsp; &nbsp;private void GraphicsWindowPickingStyle_EndInteractionEvt(vtkObject sender, vtkObjectEventArgs e)<br>
<br>
 &nbsp; &nbsp; &nbsp; &nbsp;{<br>
<br>
 &nbsp; &nbsp; &nbsp; &nbsp;vtkInteractorStyleRubberBand2D style = vtkInteractorStyleRubberBand2D.SafeDownCast(sender);<br>
<br>
 &nbsp; &nbsp; &nbsp; &nbsp;int[] pos = style.GetInteractor().GetEventPosition();<br>
<br>
 &nbsp; &nbsp; &nbsp; &nbsp;int returnValue = style.GetInteractor().GetPicker().Pick(pos[0], pos[1], 0, style.GetCurrentRenderer());<br>
<br>
 &nbsp; &nbsp; &nbsp; &nbsp;_endPickPosition = style.GetInteractor().GetPicker().GetPickPosition();<br>
<br>
 &nbsp; &nbsp; &nbsp; &nbsp;OnGridSelection(new GridSelectionEventArgs(_startPickPosition, _endPickPosition));<br>
<br>
 &nbsp; &nbsp; &nbsp; &nbsp;}<br>
<br>
 &nbsp; &nbsp; &nbsp; &nbsp;_______________________________________________<br>
 &nbsp; &nbsp; &nbsp; &nbsp;This is the private VTK discussion list.<br>
 &nbsp; &nbsp; &nbsp; &nbsp;Please keep messages on-topic. Check the FAQ at: <a href="http://www.vtk.org/Wiki/VTK_FAQ" target="_blank">http://www.vtk.org/Wiki/VTK_FAQ</a><br>
 &nbsp; &nbsp; &nbsp; &nbsp;Follow this link to subscribe/unsubscribe:<br>
 &nbsp; &nbsp; &nbsp; &nbsp;<a href="http://www.vtk.org/mailman/listinfo/vtkusers" target="_blank">http://www.vtk.org/mailman/listinfo/vtkusers</a><br>
<br>
<br>
 &nbsp; &nbsp; &nbsp; &nbsp;_______________________________________________<br>
 &nbsp; &nbsp; &nbsp; &nbsp;This is the private VTK discussion list.<br>
 &nbsp; &nbsp; &nbsp; &nbsp;Please keep messages on-topic. Check the FAQ at: <a href="http://www.vtk.org/Wiki/VTK_FAQ" target="_blank">http://www.vtk.org/Wiki/VTK_FAQ</a><br>
 &nbsp; &nbsp; &nbsp; &nbsp;Follow this link to subscribe/unsubscribe:<br>
 &nbsp; &nbsp; &nbsp; &nbsp;<a href="http://www.vtk.org/mailman/listinfo/vtkusers" target="_blank">http://www.vtk.org/mailman/listinfo/vtkusers</a><br>
<br>
<br>
<br>
_______________________________________________<br>
This is the private VTK discussion list.<br>
Please keep messages on-topic. Check the FAQ at: <a href="http://www.vtk.org/Wiki/VTK_FAQ" target="_blank">http://www.vtk.org/Wiki/VTK_FAQ</a><br>
Follow this link to subscribe/unsubscribe:<br>
<a href="http://www.vtk.org/mailman/listinfo/vtkusers" target="_blank">http://www.vtk.org/mailman/listinfo/vtkusers</a><br>
<br>
<br>
</div></div></blockquote></div><br></div>