Post

SegmentedVolumeData

Overview

SegmentedVolumeData displays a segmented voxel dataset with different RenderStyle nodes.

The SegmentedVolumeData node belongs to the VolumeRendering component and requires at least level 2, its default container field is children. It is available from X3D version 3.3 or higher.

Hierarchy

1
2
3
4
+ X3DNode
  + X3DChildNode
    + X3DVolumeDataNode
      + SegmentedVolumeData

Fields

SFNode [in, out] metadata NULL [X3DMetadataObject]

Information about this node can be contained in a MetadataBoolean, MetadataDouble, MetadataFloat, MetadataInteger, MetadataString or MetadataSet node.

Hint

SFVec3f [in, out] dimensions 1 1 1 (0,∞)

Actual-size X-Y-Z dimensions of volume data in local coordinate system.

MFBool [in, out] segmentEnabled [ ]

Array of boolean values that indicates whether to draw each segment, with indices corresponding to the segment identifier.

Hint

  • If a segment index is found greater than the array length, it shall be rendered.

SFBool [in, out] visible TRUE

Whether or not renderable content within this node is visually displayed.

Hints

  • The visible field has no effect on animation behaviors, event passing or other non-visual characteristics.
  • Content must be visible to be collidable and to be pickable.

SFBool [in, out] bboxDisplay FALSE

Whether to display bounding box for associated geometry, aligned with world coordinates.

Hint

  • The bounding box is displayed regardless of whether contained content is visible.

SFVec3f [ ] bboxSize -1 -1 -1 [0,∞) or −1 −1 −1

Bounding box size is usually omitted, and can easily be calculated automatically by an X3D player at scene-loading time with minimal computational cost. Bounding box size can also be defined as an optional authoring hint that suggests an optimization or constraint.

Hints

SFVec3f [ ] bboxCenter 0 0 0 (-∞,∞)

Bounding box center accompanies bboxSize and provides an optional hint for bounding box position offset from origin of local coordinate system.

Hints

SFNode [in, out] segmentIdentifiers NULL [X3DTexture3DNode]

Single contained X3DTexture3DNode (ComposedTexture3D, ImageTexture3D, PixelTexture3D) holds component texture that provides corresponding segment identifier.

Hint

  • If more than one color component is contained, only initial color component defines the segment identifier.

Warning

  • If segmentIdentifiers texture is not identical in size to the main voxels, it shall be ignored.

MFNode [in, out] renderStyle [ ] [X3DVolumeRenderStyleNode]

Multiple contained X3DVolumeRenderStyleNode nodes corresponding to each isosurface that define specific rendering technique for this volumetric object.

Warning

  • If not defined, no default renderStyle is defined.

SFNode [in, out] voxels NULL [X3DTexture3DNode]

Single contained X3DTexture3DNode (ComposedTexture3D, ImageTexture3D, PixelTexture3D) that provides raw voxel information utilized by corresponding rendering styles. Any number of color components (1-4) may be defined.

Advice

Hints

  • SegmentedVolumeData can contain a single ComposedTexture3D, ImageTexture3D or PixelTexture3D node with containerField='segmentIdentifiers' and another with containerField='voxels'.
  • SegmentedVolumeData can contain multiple RenderStyle nodes.

Warning

  • Requires X3D profile='Full' or else include <component name='VolumeRendering' level='2'/>

Example

View Source in Playground

See Also

This post is licensed under CC BY 4.0 by the author.