SoGVRTagObjectStyle

InventorModule
genre VolRendExtensions
author MeVis Medical Solutions AG
package MeVisLab/Standard
dll SoGVR
definition soGVR.def
see also SoGVRVolumeRenderer
keywords volume, rendering, illumination, shading

Purpose

The SoGVRTagObjectStyle module allows for setting different shader settings for each tag ID. The tag values are given by a SoGVRTagVolume or by a SoGVRMaskVolume, which is set to modify the tag values. This is a rather advanced extension that extends the Illuminated mode of the module SoGVRVolumeRenderer.

Due to the hardware restrictions of the current graphics hardware, only four weights can be set per tag. These four weights have been selected so that the user can select useful shader combinations.

Usage

Light1, Light2, Tone Shading, and Enhancement properties are defined in the SoGVRVolumeRenderer module or in a SoGVRIlluminationSettings module. Ensure that you also enable the used lights and effects in SoGVRVolumeRenderer/SoGVRIlluminationSettings, e.g., enabling Light1 for an object in the module without enabling Light1 in the SoGVRVolumeRenderer module will have no effect. Since there are only four weights, Light3 and Silhouette/Enhancement cannot be set differently per object.

Restrictions: Per-object shading is slower than just having one shader.

Example rendering:

../../../Modules/Inventor/SoGVR/mhelp/Images/TagObjectStyle.png

Windows

Default Panel

../../../Modules/Inventor/SoGVR/mhelp/Images/Screenshots/SoGVRTagObjectStyle._default.png

Output Fields

self

name: self, type: SoNode

A node that must be put in front of the SoGVRVolumeRenderer

Parameter Fields

Field Index

Current Object: Integer Num Objects: Integer
currentObjectMax: Integer perObjectParameters: Vector4List
Effect: Enum Tone shading: Float
Enabled: Bool Value: Integer
Enhancement: Float  
Interpolate Parameters: Bool  
Light 1: Float  
Light 2: Float  

Visible Fields

Enabled

name: enabled, type: Bool, default: TRUE

If checked, the per-tag rendering is enabled.

Interpolate Parameters

name: interpolateParameters, type: Bool, default: FALSE

If checked, linear interpolation of the tag effects is enabled.

This only works well if there are only two tag values; otherwise, the interpolation will create intermediate tags.

Num Objects

name: numObjects, type: Integer, default: 32, minimum: 0, maximum: 256

Sets the number of objects/tags that have individual shader settings.

Current Object

name: currentObject, type: Integer, default: 0, minimum: 0, maximum: :field:`currentObjectMax`

Sets the currently selected object/tag.

Light 1

name: parameter1, type: Float, default: 0, minimum: 0, maximum: 1

Sets the intensity of Light1 for the current tag.

Light 2

name: parameter2, type: Float, default: 0, minimum: 0, maximum: 1

Sets the intensity of Light2 for the current tag.

Tone shading

name: parameter3, type: Float, default: 0, minimum: 0, maximum: 1

Sets the intensity of the tone shading for the current tag.

Enhancement

name: parameter4, type: Float, default: 0, minimum: 0, maximum: 1

Sets the intensity of the enhancement for the current tag.

Value

name: clipPlaneEffectValue, type: Integer, default: 0

Sets the tag value that the clip plane effect uses.

Effect

name: clipPlaneEffect, type: Enum, default: CLIP_EFFECT_OFF

Defines how the tags are modified depending on the voxel position in relation to the clip plane.

Values:

Title Name Description
Off CLIP_EFFECT_OFF Effect is off.
Add Offset CLIP_EFFECT_ADD_OFFSET The Value is added to the tag value when the voxel is in front of the clip plane.
Set To Tag CLIP_EFFECT_SET_TO_TAG The Value is set to the tag value when the voxel is in front of the clip plane.

Hidden Fields

perObjectParameters

name: perObjectParameters, type: Vector4List, default: 0 0 0 0

currentObjectMax

name: currentObjectMax, type: Integer, default: 31