VolumeViz supports clipping the volume against any closed 3D polygonal shape defined by standard Open Inventor geometry. This is done using the SoVolumeClippingGroup node. Polygon clipping can remove the voxels outside the shape or the voxels inside the shape. Polygon clipping can be used in seismic applications to clip outside a fault block or geobody, in medical applications to cut away an arbitrary region, in core sample applications to apply cylindrical clipping and many other uses.
When an SoVolumeClippingGroup is in the scene graph before a VolumeViz rendering node, all shapes under the SoVolumeClippingGroup will be used to clip the volume. These shapes will not be displayed.
The UserGuide_Images below show the result (right) of clipping the volume (left) against a sphere (middle).
The following figure shows the corresponding scene graph, where CG is an SoVolumeClippingGroup.
When the clipOutside field is set to FALSE, the parts of the volume which are outside of the clipping shape are displayed. The default is TRUE.
Applications implementing interactive volume sculpting, for example seismic applications for geobody extraction, may also find the SoScreenDrawer classes useful. These classes are related to draggers. Specifically they provide a platform independent way to allow the user to "draw" on the screen using a rectangle, ellipse, polygon or lasso. For example SoLassoScreenDrawer allows the user to free-hand draw a 2D shape on the shape then returns the points to the application at the end of the operation. The application can then use the utility class SbExtrusionGenerator to create a 3D shape by extruding the 2D outline along the current direction of view. The figure below shows an extruded polygon on the left and on the right the effect of using that shape as a clipping polygon in addition to the two clipping surfaces.
The figure below shows the final result of multiple volume sculpting operations on a large seismic volume (displayed using the voxelized rendering mode).