<html>
Hello, <br>
<br>
I have just checked in some fairly significant changes to
vtkVolumeRayCastMapper. These changes are part of the "bigger
picture" of the rendering restructuring in VTK.<br>
<br>
Here are the highlights of the change:
<ul>
<li>The vtkVolumeRayCastMapper now does its own ray casting (as opposed
to relying on the vtkRayCaster)
<li>The ray casting resolution is independent of the resolution at which
geometry is rendered - so when you drop to lower resolution ray casting
for interactivity the geometry does not become blocky
</ul>Here are the API changes:
<ul>
<li>All the methods in vtkRayCaster are obsolete. This includes:
<ul>
<li>Methods to control the automatic image scale such as
AutomaticScaleAdjustmentOn, AutomaticScaleAdjustmentOff,
SetAutomaticScaleLowerLimit. Instead you should use these methods on the
vtkRayCastMapper: AutoAdjustSampleDistancesOn,
AutoAdjustSampleDistancesOff, SetImageSampleDistance,
SetMinimumImageSampleDistance, and SetMaximumImageSampleDistance
<li>The method to control the number of threads - this has moved from
vtkRayCaster to vtkVolumeRayCastMapper (SetNumberOfThreads)
<li>Methods to control nearest neighbor or bilinear zoom - in the new
vtkVolumeRayCastMapper only bilinear zoom is supported currently.
</ul>
<li>Ray bounding for ray casting is no longer supported. Therefore the
SetRayBounder method is obsolete on the vtkVolumeRayCastMapper.
<li>A new variable IntermixIntersectingGeometry was introduced into the
vtkVolumeRayCastMapper. By default it is on. If you do not have
intersecting geometry (a bounding box around the volume is not
intersecting, a cursor drawn through the volume is) you may want to turn
this off to improve the performance and the low resolution image.
</ul><br>
<br>
Here is what's coming next:<br>
<br>
<x-tab> </x-tab>Next
Monday I will be checking in the next set of changes. This will include
removing two passes from the renderer (ray casting and render into
image). At this point I will remove the following obsolete classes:<br>
<br>
vtkRayCaster<br>
vtkViewRays<br>
vtkRayBounder<br>
vtkProjectedPolyDataRayBounder<br>
vtkOpenGLProjectedPolyDataRayBounder<br>
vtkMesaProjectedPolyDataRayBounder<br>
vtkRayCastStructures.h<br>
vtkVolumeRayCastStructures.h<br>
<br>
<br>
Let me know if you run into any problems or have any questions.<br>
<br>
<br>
Lisa<br>
<br>
</html>