public class SoVolumeGroup extends SoSeparator
SoVolumeGroup
node allows multiple volumes to be volume rendered (SoVolumeRender
) correctly in the same scene. All SoVolumeRender
nodes that are under an active SoVolumeGroup
node (multiVolumes
=true) are rendered together with correct blending, subject to some limitations. Other VolumeViz geometry objects, for example SoOrthoSlice
, are
not affected by SoVolumeGroup
.
The SoVolumeRender
nodes can represent different volume data sets (see SoVolumeData
) or different subvolumes (see SoROI
) of the same volume data set.
This node forces the use of view-aligned slices for SoVolumeRender
nodes that will be composed. It doesn't, however, actually modify the SoVolumeRender.samplingAlignment
fields. Rather the values of these fields are ignored during traversal.
The multiVolumes
field (true by default) controls whether the SoVolumeGroup
's special handling of SoVolumeRender
nodes is applied. If the (sub)volumes being rendered do not overlap in 3D space or only one of the volumes is transparent, then SoVolumeGroup
special handling is automatically disabled.
SoVolumeGroup
is primarily intended for cases where the volumes are sampled on different grids. For example if the volume dimension, size (3D extent) or orientation are different. For volumes that are actually multiple data sets sampled on the same grid, for example seismic attribute volumes, it may be more appropriate to blend the volumes using an SoDataCompositor
or SoVolumeShader
node.
Since OIV 9.3, EdgeDetection (Gradient, Luminance, Depth) and LowResMode (DECREASE_SCREEN_RESOLUTION) effects are supported. These post process effects need to be applied to all or none of the volumes. If all fields corresponding to an effect are the same for each volume, the effect is activated. If fields are different then default value is used.
Limitations:
multiVolumes
is enabled.
SoVolumeShader
or SoVolumeRenderingQuality
) when multiVolumes
is enabled gives incorrect lighting results.
SoVolumeShader.raycasting
) is not supported when multiVolumes
is enabled. This implies that ray-casting effects like voxelizedRendering, ambientOcclusion (SoVolumeRenderingQuality
) and samplingAlignment = BOUNDARY_ALIGNED (SoVolumeRender
) are not supported. When multiVolumes
is enabled, VolumeViz will automatically switch to "sliced" (texture mapped polygon) rendering.
SoVolumeGroup
is inside an SoShadowGroup
(request is ignored).
File format/default:
VolumeRender {
multiVolumes | true |
Action behavior:
SoGLRenderAction
Draws a volume-rendered image based on current SoVolumeData
.
SoGetBoundingBoxAction
Computes the bounding box that encloses the volume.
See also:
SoVolumeRender
, SoSeparator
, SoDataCompositor
, SoVolumeShader
SoSeparator.Cachings, SoSeparator.FastEditings, SoSeparator.RenderUnitIds
Inventor.ConstructorCommand
Modifier and Type | Field and Description |
---|---|
SoSFBool |
multiVolumes
Activates the multi-volumes feature.
|
AUTO, boundingBoxCaching, CLEAR_ZBUFFER, directVizCaching, DISABLE, fastEditing, KEEP_ZBUFFER, OFF, ON, pickCulling, renderCaching, renderCulling, renderUnitId
boundingBoxIgnoring
VERBOSE_LEVEL, ZeroHandle
Constructor and Description |
---|
SoVolumeGroup()
Constructor.
|
getNumRenderCaches, setNumRenderCaches
addChild, findChild, getChild, getNumChildren, insertChild, removeAllChildren, removeChild, removeChild, replaceChild, replaceChild
affectsState, callback, copy, copy, distribute, doAction, getAlternateRep, getBoundingBox, getByName, getMatrix, getPrimitiveCount, getRenderUnitID, GLRender, GLRenderBelowPath, GLRenderInPath, GLRenderOffPath, grabEventsCleanup, grabEventsSetup, handleEvent, isBoundingBoxIgnoring, isOverride, pick, rayPick, search, setOverride, touch, write
copyFieldValues, copyFieldValues, enableNotify, fieldsAreEqual, get, getAllFields, getEventIn, getEventOut, getField, getFieldName, hasDefaultValues, isNotifyEnabled, set, setToDefaults
dispose, getEXTERNPROTO, getName, getPROTO, isDisposable, isSynchronizable, setName, setSynchronizable
getAddress, getNativeResourceHandle, startInternalThreads, stopInternalThreads
Generated on January 23, 2025, Copyright © Thermo Fisher Scientific. All rights reserved. http://www.openinventor.com