David, just to make sure, please elaborate on "replace vtkCellPicker with vtkSurfacePicker". I think you mean you'll replace the guts of vtkCellPicker with your vtkSurfacePicker functionality... is this correct?<br>

<br><div class="gmail_quote">On Tue, Jan 19, 2010 at 12:21 PM, David Gobbi <span dir="ltr"><<a href="mailto:david.gobbi@gmail.com">david.gobbi@gmail.com</a>></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;">

HI All,<br>
<br>
Around seven weeks ago I added a new class to VTK called<br>
vtkVolumePicker  (<a href="http://www.vtk.org/Wiki/VTK/Volume_Picking" target="_blank">http://www.vtk.org/Wiki/VTK/Volume_Picking</a>) that<br>
improved volume picking.  This class also included several<br>
improvements for polydata picking that I needed for my applications,<br>
including the ability to use a vtkCellLocator to speed up the pick.<br>
<br>
Soon after adding this class to VTK, I split off a subclass called<br>
vtkSurfacePicker<br>
(<a href="http://www.vtk.org/doc/nightly/html/classvtkSurfacePicker.html" target="_blank">http://www.vtk.org/doc/nightly/html/classvtkSurfacePicker.html</a>) that<br>
has 95% of the functionality of vtkVolumePicker, but doesn't depend on<br>
the VolumeRendering kit.  This vtkSurfacePicker is, essentially, an<br>
improved vtkCellPicker.  Compared to vtkCellPicker, here is a summary<br>
of the most important improvements:<br>
<br>
- the ability to add a vtkCellLocator to accelerate the picking of<br>
large data sets (it's rather shocking that vtkCellPicker cannot do<br>
this)<br>
<br>
- much faster algorithms for picking volumes and images.. the<br>
vtkCellPicker does a tedious search through all the cells in the<br>
vtkImageData, but this new picker simply intersects the view ray with<br>
the image data<br>
<br>
- specifying an "opacity isovalue" value for more useful volume<br>
picking, i.e. it doesn't pick transparent regions, instead it picks<br>
the visible volume surface<br>
<br>
- several methods for getting more information about what was picked,<br>
including IJK coords for images, volumes, and textures<br>
<br>
- it acknowledges the existence of mapper clipping planes... the<br>
vtkCellPicker ignores clipping planes so it will pick regions that<br>
have been clipped away<br>
<br>
I would like to replace the vtkCellPicker with this new<br>
vtkSurfacePicker class.  Since it provides a superset of vtkCellPicker<br>
functionality and improved performance, the change should be<br>
transparent to all users.  The only problem might be conflicts between<br>
the new methods and third-party subclasses of vtkCellPicker.<br>
<br>
Any thoughts?  Should I have sent this email to the ARB list instead?<br>
<br>
   David<br>
_______________________________________________<br>
Powered by <a href="http://www.kitware.com" target="_blank">www.kitware.com</a><br>
<br>
Visit other Kitware open-source projects at <a href="http://www.kitware.com/opensource/opensource.html" target="_blank">http://www.kitware.com/opensource/opensource.html</a><br>
<br>
Follow this link to subscribe/unsubscribe:<br>
<a href="http://www.vtk.org/mailman/listinfo/vtk-developers" target="_blank">http://www.vtk.org/mailman/listinfo/vtk-developers</a><br>
<br>
</blockquote></div><br><br clear="all"><br>-- <br>William J. Schroeder, PhD<br>Kitware, Inc.<br>28 Corporate Drive<br>Clifton Park, NY 12065<br><a href="mailto:will.schroeder@kitware.com">will.schroeder@kitware.com</a><br>

<a href="http://www.kitware.com">http://www.kitware.com</a><br>(518) 881-4902<br>
<input id="gwProxy" type="hidden"><input onclick="jsCall();" id="jsProxy" type="hidden"><div id="refHTML"></div>