Class SoVolumeShape
- All Implemented Interfaces:
SafeDisposable
- Direct Known Subclasses:
SoSlice,SoVolumeRender
SoVolumeSkin, SoHeightFieldRender, and SoVolumeRender nodes.
This class defines common properties for the SoOrthoSlice, SoObliqueSlice, SoFenceSlice, SoVolumeSkin, SoHeightFieldRender and SoVolumeRender nodes.
The interpolation field controls how the texture is interpolated.
The composition field is deprecated and should not be used. Instead specify the composition mode for volume rendering using the SoVolumeRender node.
- See Also:
-
Nested Class Summary
Nested ClassesModifier and TypeClassDescriptionstatic enumDeprecated.As of Open Inventor 9.1.0.0.static enumInterpolation mode.Nested classes/interfaces inherited from class com.openinventor.inventor.nodes.SoShape
SoShape.ShapeTypesNested classes/interfaces inherited from class com.openinventor.inventor.nodes.SoNode
SoNode.RenderModesNested classes/interfaces inherited from class com.openinventor.inventor.Inventor
Inventor.ConstructorCommand -
Field Summary
FieldsModifier and TypeFieldDescriptionDeprecated.As of Open Inventor 9.1.0.0.Interpolation mode.Fields inherited from class com.openinventor.inventor.nodes.SoShape
boundingBoxIgnoringFields inherited from class com.openinventor.inventor.Inventor
VERBOSE_LEVEL, ZeroHandle -
Method Summary
Modifier and TypeMethodDescriptionvoidSet an application definedSoProgressIndicatorobject which will raise an event before and after the rendering task, before and after each subtask (in this case: Texture creation and Geometry creation) and after each step in the subtasks which represents in most cases individual tiles of data.Methods inherited from class com.openinventor.inventor.nodes.SoShape
getShapeType, isPrimitiveRestartAvailable, isPrimitiveRestartAvailableMethods inherited from class com.openinventor.inventor.nodes.SoNode
affectsState, callback, copy, copy, distribute, doAction, getAlternateRep, getBoundingBox, getByName, getMatrix, getPrimitiveCount, getRenderEngineMode, getRenderUnitID, GLRender, GLRenderBelowPath, GLRenderInPath, GLRenderOffPath, grabEventsCleanup, grabEventsSetup, handleEvent, isBoundingBoxIgnoring, isOverride, pick, rayPick, search, setOverride, touch, writeMethods inherited from class com.openinventor.inventor.fields.SoFieldContainer
copyFieldValues, copyFieldValues, enableNotify, fieldsAreEqual, get, getAllFields, getEventIn, getEventOut, getField, getFieldName, hasDefaultValues, isNotifyEnabled, set, setToDefaultsMethods inherited from class com.openinventor.inventor.misc.SoBase
dispose, getName, isDisposable, isSynchronizable, setName, setSynchronizableMethods inherited from class com.openinventor.inventor.Inventor
getNativeResourceHandle
-
Field Details
-
interpolation
Interpolation mode. . Default is LINEAR. NOTE: In most cases on modern graphics boards, indexed textures are used, so this refers to interpolation of volume data values. -
composition
Deprecated.As of Open Inventor 9.1.0.0. See SoVolumeRender.renderMode field.Specifies color composition mode. . Default is ALPHA_BLENDING.ALPHA_BLENDING blends the R, G, and B components for each pixel based on the their alpha values.
SUM_INTENSITY draws the sum of the R, G, and B components for each pixel.
MAX_INTENSITY draws the maximum R, G, and B components for each pixel.
MIN_INTENSITY draws the minimum R, G, and B components for each pixel.
Note: In all modes, blending is done against the background color of the scene (or the object behind the volume). This means that, using MIN_INTENSITY for example, if the background color is black then 0,0,0 is already the minimum RGB value and the volume will not be visible. Generally when using MIN_INTENSITY the background color should be set to white (1,1,1) and when using MAX_INTENSITY or SUM_INTENSITY the background color should be set to black (0,0,0). To set the background color see the setBackgroundColor method of the appropriate RenderArea class, for example
on Windows.invalid reference
SoWinRenderArea- Since:
- Open Inventor 5.0.3
Warning Deprecated since Open Inventor 9100. See
SoVolumeRender.renderModefield.
-
-
Method Details
-
setRenderProgress
Set an application definedSoProgressIndicatorobject which will raise an event before and after the rendering task, before and after each subtask (in this case: Texture creation and Geometry creation) and after each step in the subtasks which represents in most cases individual tiles of data.SoProgressIndicator.onBeginTask/SoProgressIndicator.onEndTaskwill be raised only one time per frame : "Rendering".SoProgressIndicator.onBeginSubTask/SoProgressIndicator.onEndSubTaskwill be raised 2 times per frame : "Loading Texture" and "Create Geometry".SoProgressIndicator.onEndStepwill be raised several times per subtask.
Track loading progression with
SoProgressIndicator.onEndStepevent of SubTask "Loading Texture":- NumSteps represents here the number of tiles to load to reach the "stable rendering state".
- NumStepsDone represents here the number of tiles currently loaded since the last NumSteps reset.
- The two numbers are reset when the viewer is moving the camera.
Limitations :
- if
SoLDMResourceParameters.maxMainMemory(CPU Mem) is lower thanSoLDMResourceParameters.maxTexMemory/SoLDMResourceParameters.max2DTexMemory(GPU mem/GPU mem for slices) the number of steps to reach the "stable rendering state" will be bigger than expected (the progress bar will stop without reaching the end). - if screen resolution culling is activated (see
SoLDMGlobalResourceParameters.setScreenResolutionCulling) the number of steps to reach the "stable rendering state" might be lower than expected (progress bar reaches the end but loading might continue). - Not yet supported by
SoFenceSliceand SoHeighFieldRender.
If set to NULL no events will be raised. Default is NULL.
- Since:
- Open Inventor 2023.2
-