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 to set 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 SoGVRVolumeRenderer Illuminated mode. Due to the hardware restrictions of the current graphics hardware, only four weights can be set per tag. These 4 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. Make sure 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 can not 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 should 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

Enables the per-tag rendering.

Interpolate Parameters

name: interpolateParameters, type: Bool, default: FALSE

Enables linear interpolation of the tag effects (only works well when 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

The number of objects/tags that have individual shader settings.

Current Object

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

The currently selected object/tag.

Light 1

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

The intensity of Light 1 for the current tag.

Light 2

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

The intensity of Light 2 for the current tag.

Tone shading

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

The intensity of the tone shading for the current tag.

Enhancement

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

The intensity of the enhancement for the current tag.

Value

name: clipPlaneEffectValue, type: Integer, default: 0

Gives the tag value that the clip plane effect uses.

Effect

name: clipPlaneEffect, type: Enum, default: CLIP_EFFECT_OFF

Enables tag modification by 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