SoVolumeRendering(3)

πŸ“¦ version 2.1.0, in fedora 43, fedora 44

πŸ’Ύ SoVolumeRendering(3) β€” Library Functions Manual 🫢

okay bestie, gather round, because we're talking about SoVolumeRendering from the VolumeViz corner of the Coin/SIMVoleon universe. it's a Library Functions Manual page, it's giving classic Unix, and honestly? iconic. πŸ’…


✨ NAME ✨

SoVolumeRendering β€” the abstract base class for all nodes related to volume rendering. every single one. the whole fam. no cap. πŸŽ€


🌸 SYNOPSIS 🌸

#include <VolumeViz/nodes/SoVolumeRendering.h>

Inherited by SoTransferFunction, and SoVolumeData. (yes, they're the nepo babies of this class and we love them anyway πŸ’–)

πŸ‘‘ Public Types

  • enum HW_Feature β€” { HW_VOLUMEPRO, HW_3DTEXMAP, HW_TEXCOLORMAP, HW_TEXCOMPRESSION }
  • enum HW_SupportStatus β€” { NO, YES, UNKNOWN }

πŸ’œ Public Member Functions

  • HW_SupportStatus isSupported (HW_Feature feature)

⭐ 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)

πŸ¦‹ Friends

  • class SoVolumeRenderingP

🧚 Detailed Description 🧚

Abstract base class for all nodes related to volume rendering. fr fr, that's the whole assignment.

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. like, it's the girl who sets up the party and then also knows everyone's stats. πŸ’…

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. not me calling out our own design flaw in the docs 😭 the self-awareness is unmatched honestly.


πŸ’– Member Function Documentation πŸ’–

void SoVolumeRendering::init (void ) [static]

Does all necessary class initializations of the volume rendering system. the vibe-setting of the entire operation, basically. ✨

Application programmers must call this method explicitly at the start of the application, before any volume rendering nodes are made. It must be invoked after SoXt::init() / SoQt::init() / SoWin::init(), though. so like, order matters, bestie β€” don't skip the line. πŸ™ˆ

References initClass().

void SoVolumeRendering::initClass (void ) [static]

Sets up initialization for data common to all instances of this class, like submitting necessary information to the type system. it's the "making it official" step. πŸ’

Referenced by init().

void SoVolumeRendering::setReadAlternateRep (SbBool flag) [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. gone. deleted. not in this house. πŸ’€

Default value is FALSE.

Since: SIM Voleon 2.0

void SoVolumeRendering::setWriteAlternateRep (SbBool flag) [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). it's giving "translator mode". 🌈

If the flag is FALSE, the node will write itself as is common, i.e. only as itself, with its own fields. no disguise, just main character energy. πŸ‘‘

Default value is FALSE.

Since: SIM Voleon 2.0

SbBool SoVolumeRendering::getReadAlternateRep (void ) [static]

Returns value of the "read as alternative representation" flag. πŸ“–

See also: SoVolumeRendering::setReadAlternateRep

Since: SIM Voleon 2.0

SbBool SoVolumeRendering::getWriteAlternateRep (void ) [static]

Returns value of the "write as alternative representation" flag. πŸ“

See also: SoVolumeRendering::setWriteAlternateRep

Since: SIM Voleon 2.0

void SoVolumeRendering::setDelayedRendering (SbBool 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. sheer, translucent, ghostly behavior. 🫧

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). so like... invisible stuff blocking your view? yeah, that's the risk. 😭

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. bestie it does not care what you set it to. it's gonna do its thing. πŸ’…

Since: SIM Voleon 2.0

SbBool SoVolumeRendering::getDelayedRendering (void ) [static]

Returns value of the flag indicating whether or not to always to delayed rendering of geometry used for visualizing the volume(s). (yes, that sentence is a little wonky, but we keep it exactly as the ancestors wrote it πŸŽ€)


πŸŽ€ Author πŸŽ€

Generated automatically by Doxygen for SIMVoleon from the source code. the robots did this one, we just added the sparkle. ✨


and that's the whole page, bestie! this one's from SIMVoleon Version 2.1.0 β€” go forth, init your volume rendering system, and remember: call init() after SoXt::init() / SoQt::init() / SoWin::init(). periodt. πŸ’…πŸ’–

πŸ“¦ where this page comes from