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:
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¶
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. |