Coin3D is Free Software, published under the BSD 3-clause license. |
https://coin3d.github.io https://www.kongsberg.com/en/kogt/ |
Abstract base class for all nodes related to volume rendering. More...
#include <VolumeViz/nodes/SoVolumeRendering.h>
Public Types | |
enum | HW_Feature { HW_VOLUMEPRO, HW_3DTEXMAP, HW_TEXCOLORMAP, HW_TEXCOMPRESSION } |
enum | HW_SupportStatus { NO, YES, UNKNOWN } |
Public Types inherited from SoNode | |
enum | NodeType |
Public Member Functions | |
HW_SupportStatus | isSupported (HW_Feature feature) |
Public Member Functions inherited from SoNode | |
void | setOverride (const SbBool state) |
SbBool | isOverride (void) const |
void | setNodeType (const NodeType type) |
NodeType | getNodeType (void) const |
virtual SoNode * | copy (SbBool copyconnections=FALSE) const |
virtual SbBool | affectsState (void) const |
virtual void | doAction (SoAction *action) |
virtual void | GLRender (SoGLRenderAction *action) |
virtual void | GLRenderBelowPath (SoGLRenderAction *action) |
virtual void | GLRenderInPath (SoGLRenderAction *action) |
virtual void | GLRenderOffPath (SoGLRenderAction *action) |
virtual void | callback (SoCallbackAction *action) |
virtual void | getBoundingBox (SoGetBoundingBoxAction *action) |
virtual void | getMatrix (SoGetMatrixAction *action) |
virtual void | handleEvent (SoHandleEventAction *action) |
virtual void | pick (SoPickAction *action) |
virtual void | rayPick (SoRayPickAction *action) |
virtual void | search (SoSearchAction *action) |
virtual void | write (SoWriteAction *action) |
virtual void | audioRender (SoAudioRenderAction *action) |
virtual void | getPrimitiveCount (SoGetPrimitiveCountAction *action) |
virtual void | grabEventsSetup (void) |
virtual void | grabEventsCleanup (void) |
virtual void | startNotify (void) |
virtual void | notify (SoNotList *l) |
SbUniqueId | getNodeId (void) const |
virtual SoChildList * | getChildren (void) const |
virtual void | writeInstance (SoOutput *out) |
virtual SoNode * | addToCopyDict (void) const |
virtual void | copyContents (const SoFieldContainer *from, SbBool copyconnections) |
virtual SoFieldContainer * | copyThroughConnection (void) const |
Public Member Functions inherited from SoFieldContainer | |
void | setToDefaults (void) |
SbBool | hasDefaultValues (void) const |
SbBool | fieldsAreEqual (const SoFieldContainer *container) const |
void | copyFieldValues (const SoFieldContainer *container, SbBool copyconnections=FALSE) |
SbBool | set (const char *const fielddata) |
void | get (SbString &fielddata) |
virtual int | getFields (SoFieldList &l) const |
virtual int | getAllFields (SoFieldList &l) const |
virtual SoField * | getField (const SbName &name) const |
virtual SoField * | getEventIn (const SbName &name) const |
virtual SoField * | getEventOut (const SbName &name) const |
SbBool | getFieldName (const SoField *const field, SbName &name) const |
SbBool | enableNotify (const SbBool flag) |
SbBool | isNotifyEnabled (void) const |
SbBool | set (const char *fielddata, SoInput *input) |
void | get (SbString &fielddata, SoOutput *out) |
virtual SbBool | validateNewFieldValue (SoField *field, void *newval) |
virtual void | addWriteReference (SoOutput *out, SbBool isfromfield=FALSE) |
SbBool | getIsBuiltIn (void) const |
virtual const SoFieldData * | getFieldData (void) const |
virtual void | getFieldsMemorySize (size_t &managed, size_t &unmanaged) const |
void | setUserData (void *userdata) const |
void * | getUserData (void) const |
Public Member Functions inherited from SoBase | |
void | ref (void) const |
void | unref (void) const |
void | unrefNoDelete (void) const |
int32_t | getRefCount (void) const |
void | touch (void) |
virtual SoType | getTypeId (void) const=0 |
SbBool | isOfType (SoType type) const |
virtual SbName | getName (void) const |
virtual void | setName (const SbName &newname) |
void | addAuditor (void *const auditor, const SoNotRec::Type type) |
void | removeAuditor (void *const auditor, const SoNotRec::Type type) |
const SoAuditorList & | getAuditors (void) const |
SbBool | shouldWrite (void) |
void | assertAlive (void) const |
Static Public Member Functions | |
static void | init (void) |
static void | initClass (void) |
static void | setReadAlternateRep (SbBool flag) |
static void | setWriteAlternateRep (SbBool flag) |
static SbBool | getReadAlternateRep (void) |
static SbBool | getWriteAlternateRep (void) |
static void | setDelayedRendering (SbBool flag) |
static SbBool | getDelayedRendering (void) |
Static Public Member Functions inherited from SoNode | |
static uint32_t | getCompatibilityTypes (const SoType &nodetype) |
static SoType | getClassTypeId (void) |
static SoNode * | getByName (const SbName &name) |
static int | getByName (const SbName &name, SoNodeList &l) |
static void | initClass (void) |
static void | initClasses (void) |
static SbUniqueId | getNextNodeId (void) |
static int | getActionMethodIndex (const SoType type) |
static void | getBoundingBoxS (SoAction *action, SoNode *node) |
static void | GLRenderS (SoAction *action, SoNode *node) |
static void | callbackS (SoAction *action, SoNode *node) |
static void | getMatrixS (SoAction *action, SoNode *node) |
static void | handleEventS (SoAction *action, SoNode *node) |
static void | pickS (SoAction *action, SoNode *node) |
static void | rayPickS (SoAction *action, SoNode *node) |
static void | searchS (SoAction *action, SoNode *node) |
static void | writeS (SoAction *action, SoNode *node) |
static void | audioRenderS (SoAction *action, SoNode *node) |
static void | getPrimitiveCountS (SoAction *action, SoNode *node) |
Static Public Member Functions inherited from SoFieldContainer | |
static void | initClass (void) |
static SoType | getClassTypeId (void) |
static void | cleanupClass (void) |
static void | initCopyDict (void) |
static void | addCopy (const SoFieldContainer *orig, const SoFieldContainer *copy) |
static SoFieldContainer * | checkCopy (const SoFieldContainer *orig) |
static SoFieldContainer * | findCopy (const SoFieldContainer *orig, const SbBool copyconnections) |
static void | copyDone (void) |
Static Public Member Functions inherited from SoBase | |
static void | initClass (void) |
static SoType | getClassTypeId (void) |
static void | addName (SoBase *const base, const char *const name) |
static void | removeName (SoBase *const base, const char *const name) |
static void | incrementCurrentWriteCounter (void) |
static void | decrementCurrentWriteCounter (void) |
static SoBase * | getNamedBase (const SbName &name, SoType type) |
static int | getNamedBases (const SbName &name, SoBaseList &baselist, SoType type) |
static SbBool | read (SoInput *input, SoBase *&base, SoType expectedtype) |
static void | setInstancePrefix (const SbString &c) |
static void | setTraceRefs (SbBool trace) |
static SbBool | getTraceRefs (void) |
static SbBool | connectRoute (SoInput *input, const SbName &fromnodename, const SbName &fromfieldname, const SbName &tonodename, const SbName &tofieldname) |
static SbBool | readRoute (SoInput *input) |
Friends | |
class | SoVolumeRenderingP |
Additional Inherited Members | |
Public Attributes inherited from SoNode | |
INVENTOR | |
VRML1 | |
VRML2 | |
INVENTOR_1 | |
INVENTOR_2_0 | |
INVENTOR_2_1 | |
INVENTOR_2_5 | |
INVENTOR_2_6 | |
COIN_1_0 | |
COIN_2_0 | |
EXTENSION | |
COIN_2_2 | |
COIN_2_3 | |
COIN_2_4 | |
INVENTOR_5_0 | |
COIN_2_5 | |
COIN_3_0 | |
INVENTOR_6_0 | |
COIN_4_0 | |
Protected Types inherited from SoBase | |
enum | BaseFlags |
Protected Member Functions inherited from SoNode | |
virtual SbBool | readInstance (SoInput *in, unsigned short flags) |
Protected Member Functions inherited from SoBase | |
virtual void | destroy (void) |
SbBool | hasMultipleWriteRefs (void) const |
SbBool | writeHeader (SoOutput *out, SbBool isgroup, SbBool isengine) const |
void | writeFooter (SoOutput *out) const |
virtual const char * | getFileFormatName (void) const |
virtual SoNotRec | createNotRec (void) |
Static Protected Member Functions inherited from SoNode | |
static const SoFieldData ** | getFieldDataPtr (void) |
static void | setNextActionMethodIndex (int index) |
static int | getNextActionMethodIndex (void) |
static void | incNextActionMethodIndex (void) |
static void | setCompatibilityTypes (const SoType &nodetype, const uint32_t bitmask) |
Static Protected Member Functions inherited from SoBase | |
static uint32_t | getCurrentWriteCounter (void) |
static void | staticDataLock (void) |
static void | staticDataUnlock (void) |
Protected Attributes inherited from SoNode | |
SbUniqueId | uniqueId |
Protected Attributes inherited from SoFieldContainer | |
SbBool | isBuiltIn |
Static Protected Attributes inherited from SoNode | |
static SbUniqueId | nextUniqueId |
static int | nextActionMethodIndex |
Abstract base class for all nodes related to volume rendering.
The sole purpose of this class is really just to initialize the volume rendering framework, and to provide a convenient method for the application programmer to make queries about the capabilities of the underlying visualization library.
This class should never have been a node class, as it has no distinguishing features in that regard. We duplicate this design flaw for the sake of being compatible with code written for the TGS VolumeViz extension library.
|
static |
Does all necessary class initializations of the volume rendering system.
Application programmers must call this method explicitly at the start of the application, before any volume rendering nodes are created. It must be invoked after SoXt::init() / SoQt::init() / SoWin::init(), though.
References initClass().
|
static |
Sets up initialization for data common to all instances of this class, like submitting necessary information to the type system.
References SO_NODE_INIT_ABSTRACT_CLASS.
Referenced by init().
|
static |
If this flag is set, alternate representation for SIM Voleon nodes will be imported and used in the scene graph, if they are present in the import file.
If the flag is FALSE
, alternate representations will be discarded upon import.
Default value is FALSE
.
References SoDebugError::postWarning().
|
static |
If this flag is set, some of the SIM Voleon nodes will write themselves (upon SoWriteAction traversal) as an alternative representation in the form of only core Coin nodes – typically as textures (SoTexture2 / SoTexture3) and facesets (e.g. SoIndexedFaceSet).
If the flag is FALSE
, the node will write itself as is common, i.e. only as itself, with its own fields.
Default value is FALSE
.
References SoDebugError::postWarning().
|
static |
Returns value of the "read as alternative representation" flag.
|
static |
Returns value of the "write as alternative representation" flag.
|
static |
When set to TRUE
, this will cause all geometry from the volume render nodes to be rendered as if they are all (partly) transparent.
This makes it more likely that other geometry in the scene graph which is further away from the camera than the volume(s) will be rendered correctly. When FALSE
, there is the chance that other geometry will be occluded by even fully transparent parts of the volume(s).
Default value is FALSE
.
Important implementation note: this flag is as of yet ignored in SIM Voleon, and is currently only present for compatibility reasons. SIM Voleon always renders geometry as if it is transparent, even if this flag is FALSE
.
References SoDebugError::postWarning().
|
static |
Returns value of the flag indicating whether or not to always do delayed rendering of geometry used for visualizing the volume(s).